Commit graph

448 commits

Author SHA1 Message Date
Gaetan Delannay 070e5042fd [gen] Bugfixes with IE8 and JS function 'getElementsByName'. 2013-02-21 19:04:47 +01:00
Gaetan Delannay c91f7477d9 [gen] Added a link to the home page for anonymous users; resized fields 'login' and 'password'. 2013-02-19 17:38:15 +01:00
Gaetan Delannay 34b0b13f84 [gen] Bugfix while generating the Translation class (page 'main' was not viewable because of field 'trToTool' for which page.show was False for an unknown reason). 2013-02-19 16:48:35 +01:00
Gaetan Delannay f6b2afc423 [gen] Added params Type.swidth and Type.sheight to allow for different sizes for the search widgets. 2013-02-19 09:57:02 +01:00
Gaetan Delannay 24089ef674 [gen] Improved search abilities. [pod] Bugfix: import several times an image from the same URL. 2013-02-18 15:03:26 +01:00
Gaetan Delannay 2307a284cc [gen] Wrapper.reindex: allow to specify attribute 'fields' containing the list of fields that must be reindexed. If not given, all object fields are reindexed. [pod] POD ODS templates: into POD results from ODS templates, Python expressions that produce ints, floats or dates (Zope DateTime only for the moment) produce cells with typed values. 2013-02-06 17:15:01 +01:00
Gaetan Delannay 43261fde60 [pod+gen] Added POD rendering based on ODS templates. Integrated with gen. 2013-02-05 08:51:25 +01:00
Gaetan Delannay cb77418dda [gen] Stop using param 'cmp' in method [].sort (deprecated in Python3). Used para 'key' instead. 2013-01-22 09:12:00 +01:00
Gaetan Delannay b3ff087e8f [gen] Added, on edit.pt (the unique Appy form) a handler window.onbeforeunload to warn the user that data can be lost or a lock can stay on the object. 2013-01-18 14:32:29 +01:00
Gaetan Delannay d42dffacad [gen] Improved the page lock system. 2013-01-18 11:26:01 +01:00
Gaetan Delannay bdf41adf36 [gen] First draft of a system for locking pages when editing it. 2013-01-14 16:58:30 +01:00
Gaetan Delannay 27197f5b9d [gen] Bugfix in generation of back reference for predefined Refs from model.py; bugfix while editing XHTML fields from class model.py::Page; bugfixes in the XhtmlCleaner. 2013-01-11 17:16:36 +01:00
Gaetan Delannay b76af3e0c2 [gen] Allow Managers to delete data change events if things go wrong. 2013-01-11 10:52:54 +01:00
Gaetan Delannay 90e46f11e7 [gen] Bigfixees in cleaning of XHTML fields. 2013-01-10 15:59:01 +01:00
Gaetan Delannay f4e40caf5c [gen] Bugfixes in historization. 2013-01-10 11:47:39 +01:00
Gaetan Delannay c863b47db5 [gen] field.history can now be a method. This way, historization can be enabled/disabled, field by field, according to any custom condition. 2013-01-10 10:56:22 +01:00
Gaetan Delannay f091b25c98 [gen] One can now specify a different source language for every translation. 2013-01-09 10:46:14 +01:00
Gaetan Delannay 6ee3d6ded9 [gen] Bugfix. 2013-01-09 09:14:57 +01:00
Gaetan Delannay ab00917df6 [gen] Allow to show the cumulative differences performed on historized String fields with format=String.XHTML. 2013-01-08 16:58:29 +01:00
Gaetan Delannay 6caeeb1761 [gen] Prepared for showing changes on every field. 2013-01-08 13:29:21 +01:00
Gaetan Delannay 7b94bfb85e [gen] Bugfix for result-tied POD templates. 2013-01-08 13:28:35 +01:00
Gaetan Delannay 240ce59519 [gen] Allow to display, in history, differences between successive versions of XHTML fields via appy.shared.diff.HtmlDiff (which was not integrated to appy.gen until now). Improved rendering of XHTML fields. [pod] bugfix while generating filenames for files included into pod results. 2013-01-07 15:30:13 +01:00
Gaetan Delannay bba7c589be [shared] Added appy.shared.data.vatEuroCountries, which is the list of countries of the euro zone. 2012-12-20 16:09:05 +01:00
Gaetan Delannay 6d0d2ea591 [gen] Bugfix: generate i18n label even for transitions for which show is False, because the label will be used within object's history. 2012-12-19 10:01:31 +01:00
Gaetan Delannay 446a2d9a16 [gen] Bugfixes. 2012-12-18 22:49:26 +01:00
Gaetan Delannay 70b18f597f [gen] Added config param 'enableSessionTimeout' for enabling/disabling session timeout (disabled by default). 2012-12-15 23:36:56 +01:00
Gaetan Delannay 0dae8b1888 [gen] Added the possibility to span widgets on several columns on the search screen (param Field.scolspan). 2012-12-14 09:23:33 +01:00
Gaetan Delannay 3f75d14e92 [gen] Bugfix: it is now possible to generate indexes on back references. 2012-12-13 10:45:25 +01:00
Gaetan Delannay 4db5e9d995 [gen] Bugfixes. 2012-12-12 17:26:01 +01:00
Gaetan Delannay 68ae08b75a [gen] Simplified management and rendering of phases. 2012-12-07 11:23:08 +01:00
Gaetan Delannay 823ada17da [gen] Bugfix. 2012-12-05 17:47:19 +01:00
Gaetan Delannay 6061060c49 [doc] Updated doc. Ready for publishing a new version of appyframework.org (at least I think :)) 2012-12-03 16:18:24 +01:00
Gaetan Delannay ed3a31ff29 [gen] Bugfix in the Calendar field. 2012-12-03 09:33:19 +01:00
Gaetan Delannay 387fbaea7c [gen] Ergonomic improvements: added a breadcrumb, more compact design. 2012-11-29 20:45:21 +01:00
Gaetan Delannay 3ec1270fc2 [gen] Added appy.gen.Pod.rLayouts, a default layout for rendering POD templates on query result pages; various security and bugfixes. 2012-11-26 13:58:27 +01:00
Gaetan Delannay c3aa01a554 [gen] Added the possility to get an XML version of every object by calling URL <objectUrl>/xml; added the possiblity to call any method on any object by calling <objectUrl>?do=myMethod and retrieve the result as XML. 2012-11-23 15:20:12 +01:00
Gaetan Delannay 5269b278f7 [gen] It is now possible to define, via method 'getDynamicSearches', dynamic searches for a class. 2012-11-14 17:40:52 +01:00
Gaetan Delannay 4872e5d8b8 [gen] Searches can now be grouped into groups of groups of..., creating a tree structure in the portlet. 2012-11-14 11:36:48 +01:00
Gaetan Delannay 6cf29778b6 [gen] Calendar: added a method for retrieving events from a calendar. 2012-11-08 22:39:22 +01:00
Gaetan Delannay 0dd870c042 [gen] Allow to use class Group as parameter of Search.group (soon, we will be able to get groups of groups of groups... of searches, to produce a tree of searches); refactored i18n-related code. 2012-11-06 11:32:39 +01:00
Gaetan Delannay fcb1d36da0 [gen] Remove attributes showWorkflowFor...; buttons for triggering workflow transitions are not located besides the standard actions (icons): edit, save, etc. 2012-11-05 13:12:18 +01:00
Gaetan Delannay 21585df6a1 [gen] Added an index 'Modified' on every object (it represents the date of the last modification); removed obsolete workflow-related code; removed attributes Tool.showAllStatesInPhaseFor...; changed the way to display the object's current state in the UI. 2012-11-05 10:21:27 +01:00
Gaetan Delannay f31cbc4d12 [gen] for Type.shownInfo and tool.resultColumns..., added the possibility to define the name, width and alignment of every column (=notion of 'column layout'). 2012-11-02 22:27:54 +01:00
Gaetan Delannay 4a69a3beb2 [gen] For Strings with validator=String.URL, an HTML link is rendered in view layouts; added a 'real' 'state' field to any Appy class, allowing to use it in search screens for example; added 2 hook methods: getIcons and getSubTitles, allowing to add, in lists of objects (Refs or queries), icons besides the title and anything below it; optimized query.pt: for every new query, 1 server request is done (previously, one standard request + one ajax request were done); removed columns 'actions' (Refs, query): action icons are not included in the column containing the title (we avoid having empty columns whhen no action is available). 2012-10-31 21:17:31 +01:00
Gaetan Delannay 7240561f7f [gen] Added param Search.default allowing to define a default Search. The default search, if present, will be triggered when clicking on the main link for a class, instead of the query that collects all instances of this class; appy.gen.Type: removed 3 obsolete params: 'index', 'editDefault' and 'optional'. For achieving the same result than using 'editDefault', one may define 'by hand' an attribute on the Tool for storing the editable default value, and define, on the appropriate field in param 'default', a method that returns the value of the tool attribute; Added Type.defaultForSearch, allowing, for some sub-types, to define a default value when displaying the corresponding widget on the search screen; added a default 'state' field allowing to include workflow state among search criteria in the search screens; removed obsolete test applications. 2012-10-31 13:20:25 +01:00
Gaetan Delannay 1505264887 [gen] Bugfix for IE in master/slave relationships. Calendar field: added 2 params: 'preCompute' allows to specify a method that is called once every time a month is shown and whose result can be accessed by other methods; 'applicableEvents' allows to specify, for every day, a list of applicable events which can be a sub-set of all aplicable events (or event nothing). 2012-10-30 05:53:45 +01:00
Gaetan Delannay caca61516f [bin] job.py: if the specified user does not exist in the DB, try with a user named 'admin'; [gen] Calendar: allow to insert additional, custom (XHTML or textual) info in any cell of the calendar, via new attribute Calendar.additionalInfo; [pod] some code refactoring; xhtml2odt: allow, when converting tables, to take into account attributes 'width' of tds; bugfix when converting 'href' attrs of 'a' tags. 2012-10-26 13:09:44 +02:00
Gaetan Delannay ba148c51aa [gen] Calendar: display weekend days in a special way. 2012-10-18 20:57:03 +02:00
Gaetan Delannay 614ce576af [gen] Calendar field: added the possibility to define a start and or end date for defining a specific date range; also added param 'defaultDate' (by default=now): when the calendar is shown for the 1st time, it shows the month where this date is included. 2012-10-13 18:09:42 +02:00
Gaetan Delannay 856cda9031 [gen] Calendar field: added the possibility to define eventTypes dynamically: eventTypes can therefore be anything, ie object UIDs. 2012-10-12 16:36:04 +02:00
Gaetan Delannay 9954edf71a [gen] Improved performance of the Ref field and added an icon for dissociating referred objects. 2012-10-08 10:08:54 +02:00
Gaetan Delannay 872b77208b [gen] Optimized Ref: do not ajax-call the Ref view macro when displaying a complete page; added Ref.changeOrder to enable/disable (independently from write permission) the possibility to sort or change order of referred objects. 2012-10-07 11:26:55 +02:00
Gaetan Delannay 82a8ac99b4 [gen] Calendar: added the possibility in some calendar to view events from another calendar. 2012-10-06 07:22:24 +02:00
Gaetan Delannay fdd9f4c375 [gen] Take into account Calendar.maxEventLength. 2012-10-06 05:20:35 +02:00
Gaetan Delannay 64e1ace32c [gen] Bugfixes in the management of indexes. 2012-10-05 16:38:15 +02:00
Gaetan Delannay 7a38892cee [gen] Missing i18n in Ref field. 2012-10-04 16:17:30 +02:00
Gaetan Delannay 93bde7a0f5 [gen] Added a new calendar field, allowing to add a single (typed) event by day. 2012-10-03 14:44:34 +02:00
Gaetan Delannay 3bd66e3264 [gen] Indexing machinery: bugfixes (Ref index). 2012-09-26 23:32:57 +02:00
Gaetan Delannay 8d1a88bd27 [shared] xml_parser.XmlParser: added param 'raiseOnError' allowing to raise or not an exception when a SAX fatal parsing error is encountered; [gen] fine-tuned indexing machinery with more accurate text extraction from text and xhtml fields. 2012-09-26 23:13:02 +02:00
Gaetan Delannay a2ae839704 [gen] Added the possiblity to extract in a clean way text from XHTML field values. 2012-09-25 21:43:45 +02:00
Gaetan Delannay d3e2478d6b [gen] Added some default page and field layouts. 2012-09-24 16:32:16 +02:00
Gaetan Delannay 4d9823a59a [gen] Bugfix in the standard banner for RTL languages. 2012-09-20 15:43:53 +02:00
Gaetan Delannay 6367924b05 [gen] Added a i18n label used for the title of web pages and added a default favicon and the possibility to override it. 2012-09-20 09:37:33 +02:00
Gaetan Delannay d799398de1 [gen] Graphical improvements. 2012-09-19 17:48:49 +02:00
Gaetan Delannay b985b5998d Various bugfixes. 2012-09-19 11:29:29 +02:00
Gaetan Delannay 5f530d9f9e [gen] Now it is possible to index and search Ref fields. 2012-09-17 21:11:54 +02:00
Gaetan Delannay 693c11658f [doc] Doc, again. 2012-09-13 19:26:05 +02:00
Gaetan Delannay 9872f8ea66 [doc] Continued work on doc, website and look. 2012-09-13 14:43:40 +02:00
Gaetan Delannay dc76ca542a [doc] In the process of updating documentation and website. 2012-09-12 00:23:34 +02:00
Gaetan Delannay 6801188496 [gen] ckeditor now works with IE. 2012-09-10 11:44:22 +02:00
Gaetan Delannay c2eaab4b44 [gen] Cleaner and more robust approach when using Zope database indexes. 2012-09-04 18:00:22 +02:00
Gaetan Delannay 5c2d94236f [doc] In the process of refreshing documentation and website. 2012-08-24 16:39:45 +02:00
Gaetan Delannay 812bda7452 [gen] Added some layouts for Ref fields in Ref.wLayouts and Ref.wdLayouts; added a new, simpler way of defining auto-references (=Ref fields that refer to the class containing the field), via method appy.gen.autoref; stop catching exceptions raised by Actions (so a partial action can't be committed anymore). 2012-08-21 19:57:23 +02:00
Gaetan Delannay 61b0ed2fce [gen] Minor updates. 2012-08-17 17:12:15 +02:00
Gaetan Delannay 31a0268641 [gen] Do not generate base label for a workflow transition if transition.show is False; added an alternative predefined layout for pages (including summary, which is absent by default); [pod] added a default POD style 'podPageBreak' allowing to include page breaks via do... from... statements. 2012-08-14 16:05:02 +02:00
Gaetan Delannay 625c8b079b [gen] Bugfix in computhin SHA1 keys. 2012-08-10 16:00:41 +02:00
Gaetan Delannay 3393effd7b [gen] Ogone field: bugfixes. 2012-08-07 17:38:54 +02:00
Gaetan Delannay 256f6acb55 [gen] More accurate error reporting for Action fields. 2012-08-07 09:46:27 +02:00
Gaetan Delannay 47cd8ee277 [gen] Add param Config.activateForgotPassword to allow to disable this functionality for sites where the email of users may be unknown. 2012-07-27 11:01:35 +02:00
Gaetan Delannay b2e1e8c780 [gen] First version of a Ogone Appy plug-in. 2012-07-26 17:22:22 +02:00
Gaetan Delannay 178059ba1b [gen]: method Wrapper.do: added param 'noSecurity' allowing to bypass check of roles mentioned as conditions for triggering worfklow actions. 2012-07-23 15:24:44 +02:00
Gaetan Delannay 699cc8346b [gen] Field.indexed, instead of being a Boolean, can be a str, to represent the name of a Zope Index. This way, it is possible to bypass the standard Appy choice for index types, ie for Computed fields whose content may produce any type of value; added missing translation labels in the macro displaying object's history; added default fields Tool.dateFormat and Tool.hourFormat that give application-wide default formats for dates with/without hour; added a table in Config->Users that shows the connected users and the date/time of their last access to the app; added the missing search macro for a Computed field. 2012-07-18 21:58:11 +02:00
Gaetan Delannay 21ffa7b46d [gen] Added UserWrapper.checkPassword allowing to check if a password is the right one for a user. 2012-07-12 17:54:14 +02:00
Gaetan Delannay a0837a758f [gen] Bugfix in the 'change user id' function. Now, the method browses every object in the database and updates local roles where the old ID was potentially mentioned. 2012-07-11 17:27:40 +02:00
Gaetan Delannay a7bcd1a098 [gen] allow Manager to change the login of a user; bugfix in dumping XHTML tables whose column sizes are automatically computed; bugfix: apply styles mapping to 'p' tags that are added automatically by xhtml2odt (was only implemented for p tags inside li tags). 2012-07-10 14:21:08 +02:00
Gaetan Delannay ad14c1258c [gen] Implemented a mechanism 'forgot password?'. 2012-07-09 15:47:38 +02:00
Gaetan Delannay bc505b335f [gen] Bugfix in RTL languages support; [pod] xhtml2odt: bugfix in management of styles applied to inner p tags added within li tags. 2012-07-03 15:00:45 +02:00
Gaetan Delannay 1b375d387c [gen] Added support for right-to-left (RTL) languages. 2012-06-27 13:27:24 +02:00
Gaetan Delannay b680a5ddcb [gen] When raising Unauthorized, give more explanations. 2012-06-21 11:31:27 +02:00
Gaetan Delannay 188fdc9761 [gen] More simpler result.pt. 2012-06-13 09:59:19 +02:00
Gaetan Delannay e13575c506 Added method Wrapper.isEmpty(name) that checks if the content of some field is empty or not on a given object. 2012-06-13 09:31:09 +02:00
Gaetan Delannay 5b255ce55d [gen] Added boolean Tool.loadTranslationsAtStartup that, if False, prevents to overwrite, on a production site, translations edited through-the-web by users. If True, at every Zope startup, Translation objects are overwritten by the content of their corresponding po files on disk. 2012-06-03 21:55:26 +02:00
Gaetan Delannay 8f57163c2a [gen] Finalized pending i18n. 2012-06-03 18:34:56 +02:00
Gaetan Delannay 2710fb6c39 [gen] Bugfix: attribute Field.focus and UserWrapper password management. 2012-06-02 20:55:25 +02:00
Gaetan Delannay 77331cd216 [gen] Possibility to define, programmatically, for a given class, the default view and edit pages, by defining, respectively, methods getDefaultViewPage and getDefaultEditPage; various bugfixes. 2012-06-02 17:39:05 +02:00
Gaetan Delannay f843d5b7d6 [gen] Security: added missing checks at the code level, ensuring that a user can create instances of a given class (root classes, or instances created via an initiator field); bugfixes in the test system, which works again (was broken after deplonization); [shared] XmlUnmarshaller can now be ran in 'non utf-8' mode: if enabled, any marshalled string will no be Python unicode, but simple str. 2012-06-02 14:36:49 +02:00
Gaetan Delannay 0d7afb685f [gen] added obj.mayEdit, an additional condition for editing an object (similar to mayDelete); bugfix: specifying a workflow for a User class crashed because, in installer.py, Appy took into account the standard workflow on this Class instead of the custom one. 2012-06-01 15:57:19 +02:00
Gaetan Delannay e3b7f5364f [gen] CSS improvements; bugfix: parsing now works even if encoding is declared at the beginning of the Python file; a default layout for Boolean fields, including a description, is now available in Boolean.dLayouts. 2012-05-31 17:29:06 +02:00
Gaetan Delannay ede29fb6c1 [gen] Bugfix while managing languages, ui improvements. 2012-05-29 20:50:18 +02:00
Gaetan Delannay aaaccb0669 [gen] added the possibility to define a sortOrder of a Search class. 2012-05-25 14:27:53 +02:00
Gaetan Delannay e66daeb151 [gen] More robust XHTML cleaning. 2012-05-22 16:42:20 +02:00
Gaetan Delannay 028040351c appy.gen: improved cleaning and formatting of XHTML content; appy.pod: added some default appy-related table styles for producing cells with text in bold/normal, aligned right/left, etc. 2012-05-14 17:35:34 +02:00
Gaetan Delannay d3a2b85a10 appy.gen: bugfixes. 2012-05-09 09:45:15 +02:00
Gaetan Delannay 8cc20b0d34 appy.gen: bugfixes. 2012-05-08 14:49:45 +02:00
Gaetan Delannay 6245023365 appy.bin: backup.py: added field 'To' to mails sent by the backup procedure (so it not less directly considered as junk mail); bugfix in job.py used with Appy > 0.8; appy.gen: optimized performance (methods defined in 'show' attrs were called twice on edit.pt and view.pt); appy.gen: added String.richText allowing to have ckeditor with more text-formatting icons; added ckeditor 'show source' button by default (impossible to live without that); appy.gen: solved security-related problems; appy.gen.mail: allowto send mail as authenticated user; appy.gen: bugfixes in pages when rendered by IE. 2012-05-05 17:04:19 +02:00
Gaetan Delannay 459a714b76 appy.bin: adapted job.py for Appy >0.8; appy.gen: improved mail notification mechanism. 2012-05-03 10:51:54 +02:00
Gaetan Delannay 9b8064b0cd appy.gen: bugfix while searching the catalog based on object state; added XHTML cleanup code; added String.generatePassword; bugfix: mising HTTP header while sending some responses back to Apache (caused a bug in ckeditor image upload); bugfix while importing images via an image resolver (Zope behind a reverse proxy). 2012-04-25 16:21:23 +02:00
Gaetan Delannay d52e601ea8 ckeditor: removed files that begin with an underscore. 2012-04-24 16:27:00 +02:00
Gaetan Delannay b30d6f18c2 ckeditor 3.6.3 2012-04-24 16:24:18 +02:00
Gaetan Delannay 094e571b74 ckeditor 3.6.3 2012-04-24 16:22:12 +02:00
Gaetan Delannay af351f87d3 Minor changes and bugfixes. 2012-04-19 09:20:15 +02:00
Gaetan Delannay abdd0ee52d appy.shared.diff: bugfix: work internally on unicode representations of strings to diff: this way, we are sure every char is one char length. 2012-04-13 18:07:48 +02:00
Gaetan Delannay 40e8a5f258 appy.gen: bugfix while using Zope behind Apache and using the VHM; Ref.view macro is not called via Ajax anymore for single-valued Refs (when displaying lists containing single-valued Ref fields, it produces too many ajax requests, leading to ConflictErrors in the ZODB). 2012-03-27 15:49:41 +02:00
Gaetan Delannay 5928996730 appy.gen: added Ref.navigable: if True, referenced objects can appear within the portlet. 2012-03-27 10:37:41 +02:00
Gaetan Delannay 1e9e4df5a6 appy.gen: added the possibility to create and manage web pages into an app; every class can now define a method showPortlet. If the class does not define it or if it returns False, the portlet won't be shown when showing/editing instances of this class. 2012-03-26 19:09:45 +02:00
Gaetan Delannay 8aa03a091a appy.gen: minor updates. 2012-03-23 23:26:35 +01:00
Gaetan Delannay f6a828bc13 appy.gen: removed fields Tool.showWorkflowCommentFieldForxx (workflow comment may not be entered into the confirm popup); appy.gen: security-related bugfixes. 2012-03-19 17:00:44 +01:00
Gaetan Delannay cbb8d5cd12 appy.pod: variable named 'loop' is now available in the POD context of any section within a 'for' statement, with attributes like loop.[iterVariableName].length (=total number of looped elements) and loop.[iterVariableName].nb (=index of currently looped element). 2012-03-16 14:59:59 +01:00
Gaetan Delannay 0dd8b72dca appy.gen: bugfixes. 2012-03-08 20:56:14 +01:00
Gaetan Delannay 7b0b7e147d appy.gen: allow to define several layoutTypes (ie: ('edit', 'result')) as a tuple/list in 'show' attributes of fields. 2012-03-06 17:02:41 +01:00
Gaetan Delannay 431511026c appy.gen: bugfixes. 2012-03-03 23:29:32 +01:00
Gaetan Delannay 91d3887847 appy.gen: minor bufgixes. 2012-03-02 15:42:22 +01:00
Gaetan Delannay 7d605d1fbb appy.gen: bugfixes in the List field. 2012-03-01 17:35:23 +01:00
Gaetan Delannay 6d0549e6ce Minor updates. 2012-02-27 14:06:39 +01:00
Gaetan Delannay 13f3400577 appy.pod: bugfix while including a PDF file into a document; ease the inclusion of Plone images from a Plone/Zope DB through 'do text from document' statements; appy.gen: added obj.mayAct method that allows to display conditionnally the column 'Actions' when an object is shown in a list (query or ref); improved navigation from sub-objects to parent objects; improved layout. 2012-02-23 15:58:06 +01:00
Gaetan Delannay 9c5f92337b appy.gen: improvements in user management. 2012-02-21 12:09:42 +01:00
Gaetan Delannay 9394490d33 appy.gen: allow to define a method Tool.getHomePage that returns the URL of the home page for any user (authenticated, anonymous, manager, or any other code-based distinction); allow an app to define a 'ui' folder for storing new UI-related elements (pages, images, etc) or overriding standard Appy UI elements; logo.jog is replaced with banner.jpg (size 900 x 75px). 2012-02-18 19:48:00 +01:00
Gaetan Delannay a80ef513ff appy.gen: added new format 'captcha' for a String. 2012-02-16 18:13:51 +01:00
Gaetan Delannay 0b6d2d2165 appy.gen: added method wrapper.search1 that returns a single result (which is the only difference with wrapper.search); bugfix while getting objects from the catalog (bypass security when called from code). 2012-02-09 16:36:50 +01:00
Gaetan Delannay 1275df5753 appy.shared: improved deployment of a Appy app (creation of a Zope instance is no more required; corresponding folders are created in standard unix locations: /etc for the config file, /var/log for logs, /var/lib for the database, /usr/bin for scripts that start and stop the instance). appy.gen: first draft of a migration script that allows to migrate data from Plone-dependent Appy apps (<= 0.7.1) to Ploneless Appy 0.8.0. 2012-02-02 17:30:54 +01:00
Gaetan Delannay 13443ea79e appy.bin: generate.py: one less arg: outputFolder has been removed (the script now generates the Zope product in <appFolder>/zope); generate.py: new option '-d', for generating a Debian package from the Python (Appy) app. 2012-01-18 14:27:24 +01:00
Gaetan Delannay 7d844070df appy.pod: improved styles mapping system: one may now express things like: 'p[text-align=center]':'StandardCentered' (ie, map an HTML tag having some CSS attributes to a specific ODT style). See verbose docstrings in styles_manager.py. 2012-01-12 21:49:23 +01:00
Gaetan Delannay 30a51b7c1d appy.gen: added params String.allowImageUpload and String.styles for tuning the in-line editor corresponding to a String instance with format=XHTML; managed borders images uploaded in such a field; bugfix for https://bugs.launchpad.net/appy/+bug/913171 (appy.shared.dav). 2012-01-09 17:00:47 +01:00
Gaetan Delannay 2bd3fe1eeb appy.pod: xhtml2odt: ability to include images from img tags (anonymously). Non-anonymous solution for a Appy/Zope server only; function 'document': allow to specify size of images in cm or px, or via a 'style' tag; appy.gen: allow to upload images in ckeditor fields; improved error management. 2012-01-04 18:03:46 +01:00
Gaetan Delannay 98fafad14a appy.gen: configured ckeditor for Appy; bugfix in jscalendar integration. 2012-01-02 16:59:11 +01:00
Gaetan Delannay 0e7dfa3aaf appy.gen: replaced tiny_mce with ckeditor. 2012-01-02 13:54:03 +01:00
Gaetan Delannay 6ece750d9a appy.bin: updated publish.py, that is now able to generate a DistUtils tar.gz for Appy; publish.py can now be called with option '-s' (silent): in this mode no question is asked to the user, default values are used; updated new.py that generates a better Plone4-ready simple Zope instance; appy: moved FileWrapper from appy.gen.utils to appy.shared.utils to avoid circular package dependencies; appy.gen: use of .pyt extensions for template Python classes in appy.gen.templates in order to avoid byte-compilation errors when distutils installs the package; appy.pod: when using function 'document' in 'from' statements, first arg can now be a appy.shared.utils.FileWrapper instance. 2011-12-15 22:56:53 +01:00
Gaetan Delannay e78cf62694 appy.gen: bugfix in group widget 'tabs'; improved layout of grid widgets in view mode; appy.pod: class OdtTable allows to generate HTML tables as well. 2011-12-09 08:56:37 +01:00
Gaetan Delannay c1174fac79 appy.gen: solved a tricky encoding problem. 2011-12-08 16:01:57 +01:00
Gaetan Delannay d5f26dd1df appy.gen: bugfixes. 2011-12-05 18:15:45 +01:00
Gaetan Delannay c5a8968bd3 appy.gen: Refactoring due to De-Plonization. 2011-12-05 15:11:29 +01:00
Gaetan Delannay d934f49a99 appy.gen: refactoring due to De-Plonization. 2011-12-05 10:52:18 +01:00
Gaetan Delannay 6733f4c7dc appy.gen: various bugfixes (creation of ZCTextIndexes and of the associated lexicon...). 2011-12-01 20:53:13 +01:00
Gaetan Delannay a321257e55 appy.gen: Ploneless version. 2011-11-28 22:50:01 +01:00
Gaetan Delannay d0cbe7e573 appy.gen: first Ploneless version. 2011-11-25 18:01:20 +01:00
Gaetan Delannay 8e1760842e appy.gen: Type 'float': added the possibility to define a separator for thousands; bugfixes in master/slave relationships; permission-related bugfix while creating objects through AbstractWrapper.create; appy.shared.diff: more improvements (still ongoing work). 2011-11-10 21:59:02 +01:00
Gaetan Delannay 040cdafb8c appy.gen: use appy.shared.utils.formatNumber function; visual bugfix while displaying boolean fields; appy.shared.dav: error bugfix in error handling; appy.shared.utils: added french-accents-aware functions lower and upper; appy.shared.xml_parser: bugfix while managing 'any' tags. 2011-11-03 16:14:23 +01:00
Gaetan Delannay 331db304e7 appy.gen: bugfixes in List field and in master-slave relationships. 2011-10-27 17:55:17 +02:00
Gaetan Delannay 3ab6cec7d6 appy.gen: generalized use of appy.Object; existence of a field value (that triggers search for a default value) is now based on Type.isEmptyValue, and not '==None'; bugfix with default values for List fields; prevent search icon to be shown for a Ref when there is no linked object; appy.pod: added class appy.pod.parts.OdtTable that allows to create a complex (ie, with a dynamic number of columns) table programmatically (to be imported with a statement 'do ... from'); appy.shared.diff: improvements in the multiple XHTML diff; appy.shared.xml_parser.XmlMarshaller: support for default namespaces and 'any' tags. 2011-10-26 10:21:09 +02:00
Gaetan Delannay c11378c747 appy.gen: added a widget 'List' for rendering grids of data. 2011-10-19 09:37:44 +02:00
Gaetan Delannay f1136eb786 appy.gen: ugly Zope acquisition-related bugfix; bugfix while rendering file widgets. 2011-10-11 17:32:23 +02:00
Gaetan Delannay f13b7ea307 appy.gen: various bugfixes and minor improvements. 2011-10-06 16:27:58 +02:00
Gaetan Delannay 4b44f8d565 appy.gen: bugfixes in Ref fields, IE CSS and master/slave relationships. 2011-10-04 20:12:58 +02:00
Gaetan Delannay e821307b4c appy.gen: reimplemented master/slave-related Javascript code without Plone queryCss. 2011-10-01 22:40:13 +02:00
Gaetan Delannay c9353b46db appy.gen: integrated tinyMCE; appy.gen: Ref.shownInfo can now specify column widths (ie, 'title*70%'); appy.gen: updated default page and field layouts; appy.gen: stop generating label for back references it not needed. 2011-09-28 21:17:15 +02:00
Gaetan Delannay 93619dafe1 appy.gen: reworked management of Ref fields, that do not use Archetypes and reference catalog anymore. appy.gen: added a mechanism for migrating from one Appy version to another, automatically, when reinstalling an Appy application. 2011-09-26 21:19:34 +02:00
Gaetan Delannay eceb9175fd appy.bin: backup.py: added the possibility to define login and password for SMTP authentication (the script allows to send mail); appy.pod: added the possibility to specify size of images to import (see https://answers.launchpad.net/appy/+question/171846). 2011-09-24 12:53:33 +02:00
Gaetan Delannay 96a592f125 appy.pod: bugfix when importing images under Windows (https://answers.launchpad.net/appy/+question/171611); appy.gen: bugfix while validating file fields which are mandatory; stopped using uid_catalog and added index 'UID' in portal_catalog; bugfix while searching objects in the limits of a Ref field; display user info in the main template (name, id, roles); when creating an object from a reference, after creation, appy brings the user back to the view page where the Ref field was. 2011-09-20 19:21:48 +02:00
Gaetan Delannay 7ff56a6520 Continued work on new Appy GUI. 2011-09-18 15:00:05 +02:00
Gaetan Delannay 48acf65bdc appy.gen: continued work on Appy-specific template. 2011-09-15 15:52:21 +02:00
Gaetan Delannay b6dcc42038 appy.gen: use new index 'getState' for indexing object states; reduced size of generated file config.py; optimized debug mode: class reload is not done automatically: a 'refresh' icon is available on view and edit views. 2011-09-14 21:01:58 +02:00
Gaetan Delannay 9258b76bdf appy.gen: do not generate _action_ok and action_ko i18n messages anymore; added param Group.label, similar to Type.label; allowed to specify in param Group.wide any table width. 2011-09-11 01:59:22 +02:00
Gaetan Delannay 5be03c2ed4 appy.gen: bugfixes in the new workflow engine and in macro 'history'. 2011-09-09 17:39:58 +02:00
Gaetan Delannay 1cd9aaaf69 appy.gen: implemented a variant of Zope's 'has_permission' in method called 'mixin.allows', which does not make some assumptions, like the fact that an admin is Owner of any object or the fact that an Authenticated user has also role Anonymous; added button 'refresh security' for refreshing security information on every database object (it is needed because Zope requires us to duplicate security info on every object). 2011-09-08 16:33:16 +02:00
Gaetan Delannay d2d3f9a745 appy.gen: removed from some pages superfluous translations of inexistent labels. 2011-09-07 09:56:53 +02:00
Gaetan Delannay b9c6283d9e appy.gen: stopped generating properties on wrapppers by setting AbstractWrapper as new-style class and using __getattribute__. 2011-09-07 01:33:09 +02:00
Gaetan Delannay 3c95ac083d appy.gen: added, for every Type, param 'label' allowing to specify an existing i18n label (the one from another field for instance), thus avoiding to generate i18n labels for this Type; optimized generation of appyWrappers.py (more than twice less code). 2011-09-06 21:46:57 +02:00
Gaetan Delannay 7514eb31a9 appy.pod: bugfix in html2odt: in some situations, while using stylesMappings, some empty tags were present in the result, producing a superflous empty paragraph; bugfix while importing PNG files under Windows; appy.gen: began to implement a new global Appy-specific page template and styles. 2011-09-02 09:59:49 +02:00
Gaetan Delannay ddec7cd62c appy.gen: workflows are now implemented as full Appy worlflows. Plone (DC) workflow are not generated anymore. From the Appy user point of view (=developer), no change has occurred: it is a pure implementation concern. This is one more step towards Appy independence from Plone. 2011-07-26 22:15:04 +02:00
Gaetan Delannay 93eb16670b appy.gen: in the default context of any pod field, added function '_' corresponding to obj.translate; appy.gen: xhtml2odt bugfix: when a <div> was contained in <ol><li> or <ul><li>, the whole function ouput was an empty string. 2011-07-07 09:43:16 +02:00
Gaetan Delannay e38b78d10c appy.bin: job.py: allow to specify several commands to execute (to separate with semicolons); appy.gen: translate: added the possibility to escape XML special chars in translations; appy.pod: bugfix in buffers.write: if content is already utf-8-encoded it does not crash anymore. 2011-06-28 09:12:20 +02:00
Gaetan Delannay de8df53f42 appy.gen: xhtml2odt: better management of 'div' tag (considered exactly like a 'p' tag). 2011-06-17 01:44:42 +02:00
Gaetan Delannay 791ee42164 appy.gen: added a session invalidation mechanism: authenticated users will be automatically logged out when their Zope session will expire; improvements in the CodeAnalysis system: more Zope-related extensions are recognized: .vpy, .cpy for Python files, .cpt for Zope Page Templates. 2011-06-10 17:20:09 +02:00
Gaetan Delannay bce384e2da appy.gen: added param 'maxChars' for any Type, allowing to limit the amount of data in user input fields. Wherever possible, it is implemented using HTML attribute 'maxlength'; on server-side, content that is bigger than specified by maxChars is truncated (ie, it is not possible to force a maxlength for html textareas); implemented a first protection against XSS attacks (Javasscript detection in user input). 2011-05-05 16:44:06 +02:00
Gaetan Delannay 9e7ddcc771 appy.shared: added support for country codes (iso-3166-1) - appy.gen: non-string variables are now allowed in i18n variable replacements; bugfix while browsing translation pages with the 'next' arrows in 'edit' mode. 2011-04-26 20:49:33 +02:00
Gaetan Delannay 4e848ce0a8 appy.pod: added param 'stylesMapping' for the 'text' function (which calls 'xhtml' internally); appy.gen: bufgix in the translation system (translation of group-related labels); appy.shared.dav: bugfix while getting the 'content-type' HTTP header key; appy.shared.dav: smart error handling when parsing wrong XML content. 2011-04-15 11:26:20 +02:00
Gaetan Delannay 36237c3ee5 appy.gen: bugfix with the master/slave mechanism while launching Zope in debug mode; added boolean attribute Date.reverseYears allowing to display years in reverse order in the widgets for choosing the year; bugfix in Javascript code for hiding slave widgets with Google Chrome. 2011-03-25 18:03:45 +01:00
Gaetan Delannay a608a9b43f appy.gen: minor improvements and IE fixes in the GUI. 2011-03-24 16:21:57 +01:00
Gaetan Delannay e87547b789 appy.gen: bugfix while comparing values for historization purposes. 2011-03-22 16:45:46 +01:00
Gaetan Delannay 4fe5c5e164 appy.gen: bugfix in the validator for the default field 'UNO-enabled Python interpreter'; appy.pod: added default function 'text' that allows to dump a string containing carriage returns into the ODT, with statements like 'do... from text(someString)'; appy.pod: bugfix in the management of conflictual inner-tags in the odt2html conversion: in some cases (when style mappings are applied), empty tags that needed to be removed were not removed because of the presence of tag attributes. 2011-03-18 16:52:15 +01:00
Gaetan Delannay 66a02c453e appy.gen: every field can now define a dict of i18n mappings that will be used for translating their label and/or description and/or help message(s). 2011-03-04 10:30:45 +01:00
Gaetan Delannay fd9dd569db Registration of the default Zope profile does not seem to work anymore. It is probably due to Plone hot fix from 2011-02-08. Here we have implemented an alternative way to register the profile, which works even with the hotfix. 2011-03-03 09:55:20 +01:00
Gaetan Delannay 7294cc0c4d appy.gen: stop storing workflow task attribute '_v_appy_do' as a volatile attr in ZODB (renamed it '_appy_do'). It seems to be removed by a sub-transaction during a long transition. 2011-03-02 09:37:03 +01:00
Gaetan Delannay c7633ecc8b Bugfixes. 2011-02-28 19:30:17 +01:00
Gaetan Delannay 39321b2d38 Bugfix while displaying content of textarea-entered text (Strings with format=String.TEXT): for displaying again textarea content, I replaced 'backslash n' with html br tags, but in some cases carriage returns are stored as a sequence of 'backslah r' and 'backslah n' chars. In this case, 'backslash r' chars were left alone in the HTML page, producing sometimes strange behaviour within the browser. 2011-02-23 11:30:44 +01:00
Gaetan Delannay 3fc5bc8418 appy.gen: bugfix while indexing empty string values: bugfix while accessing object from a query without security enabled. 2011-02-22 14:16:42 +01:00
Gaetan Delannay a8366379dd Minor changes in the test system; XmlUnmarshaller can unmarshall XML content from a string, file handler of file path; any Appy object now has a method 'getField(name)' that returns a given field (=Appy type); bugfix while counting number of tests found in a gen-application. 2011-02-17 18:13:42 +01:00
Gaetan Delannay 2c6392aa92 appy.gen removed 'print' statement. 2011-02-16 16:10:59 +01:00
Gaetan Delannay fd896aebdc appy.gen: added the possibility to freeze, within Pod fields, documents that are normally generated with appy.pod. 2011-02-16 13:43:58 +01:00
Gaetan Delannay a18be357f5 appy.gen: when redisplaying the 'edit' view, empty any password field. 2011-02-15 20:15:58 +01:00
Gaetan Delannay 6473ca8ef0 appy.gen: implemented ToolMixin.performLogin (inspired from Plone authentication), minor bugfix while redirecting user to a page that must display a global status message; logged every translation deletion. 2011-02-15 15:59:55 +01:00
Gaetan Delannay 91c657238d appy.pod: solved bug https://bugs.launchpad.net/appy/+bug/719270; appy.gen: bugfix in Date intervals coming from search.pt. 2011-02-15 13:27:36 +01:00
Gaetan Delannay 1bb4dbf20a appy.pod: improved html2odt conversion; appy.gen: added CSS tooltips and bugfix while querying several content type at once. 2011-02-14 16:04:30 +01:00
Gaetan Delannay 39d68f6490 appy.gen: added default validation for wrong dates; for Action fields, added value 'filetmp' for param 'result' for removing temp files that are returned as the result of an action; values entered by the user in the search screens are not stripped; wrapper method 'export' can now export an object in a CSV file; appy.pod: bullets for default list styles in any ODT file generated through pod are now smaller. 2011-02-12 17:09:11 +01:00
Gaetan Delannay 9f418439aa Added the possibility to customize the global message when validation fails. 2011-02-06 17:39:36 +01:00
Gaetan Delannay 77112c45be Added the concept of 'fake' workflow transitions: when a user can't trigger a transition but needs an explanation about why he can't, a fake button is shown, with a explanation. 2011-02-01 11:09:54 +01:00
Gaetan Delannay b48525c5bb Added the possibility to give a custom context to the macro specified for a Computed field; added param 'confirm' to a workflow transition, allowing to show a confirm popup before triggering it; added param 'format' for translate method, allowing to produce strings that conform to HTML or JS. 2011-01-29 02:18:14 +01:00
Gaetan Delannay 90553381a3 Added the possibility to define POD templates for any search result (Pod field with param view='search'), bugfix while getting default value for a Ref field, added Computed fields that computes a ZPT macro given as a string to param 'method', added the possibility to define a global style mapping for every Pod field, stopped to generate a field-specific set of i18n labels for pod output formats, carry portal_status_message even through page redirections, added 'deprecatedAddRemove' tags in generated configure.zcml, onEdit can now return a customized message, added possibility to normalize strings for other usages than 'fileName', in appy.shared.utils.normalizeString (for alpha and alphanum usages) 2011-01-28 14:36:30 +01:00
Gaetan Delannay 38f71be89a Added method 'unlink' on any appy class, for unlinking objects from references. Bugfixes in display of workflow state in columns. 2011-01-19 20:51:43 +01:00
Gaetan Delannay 41fbedd279 appy.pod: added .docx and .xlsx as conversion formats for converter.py. appy.gen: translation system: if not message is present, the label itself is used for the message. 2011-01-18 15:48:55 +01:00