Commit graph

157 commits

Author SHA1 Message Date
Gaetan Delannay 48c7c50122 [gen] Make ckeditor work with IE. 2013-03-28 21:32:47 +01:00
Gaetan Delannay da1f2699cd [gen] Allow to show transitions on 'view' and/or 'result' layout types. 2013-03-18 13:13:29 +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 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 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 6c832e43bb [shared] utils.py.FileWrapper: added method 'copy' to get a copy of a file. 2012-12-21 11:38:19 +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 446a2d9a16 [gen] Bugfixes. 2012-12-18 22:49:26 +01:00
Gaetan Delannay 1e3a8ba351 [shared] Converted files with country codes to UTF-8. 2012-12-14 14:50:23 +01:00
Gaetan Delannay d0da6740b1 [pod] Bugfix for https://bugs.launchpad.net/appy/+bug/1083533 (thanks Gauthier). 2012-12-07 12:05:39 +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 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 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 1b375d387c [gen] Added support for right-to-left (RTL) languages. 2012-06-27 13:27:24 +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 9368138efd [shared] Improved XhtmlCleaner. 2012-05-24 15:27:24 +02:00
Gaetan Delannay d16b03e0d6 [gen] XhtmlCleaner now only keeps useful CSS attributes within XHTML style attributes. 2012-05-24 12:54:40 +02:00
Gaetan Delannay e66daeb151 [gen] More robust XHTML cleaning. 2012-05-22 16:42:20 +02:00
Gaetan Delannay 36257b1b3a appy.diff: bugfix (avoid infinite loop between m_getHtmlDiff and m_getReplacement) and better recovery when the Merger fails to manage overlaps (thhe whole line is then considered as having been deleted and replaced by something completely different, which is not really the case but at least is shows a simplified diff instead of crashing. appy.shared: bugfix in the XhtmlCleaner that now returns result as a str and not a unicode. 2012-05-15 23:13:30 +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 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 094e571b74 ckeditor 3.6.3 2012-04-24 16:22:12 +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 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 6d0549e6ce Minor updates. 2012-02-27 14:06:39 +01:00
Gaetan Delannay 9c5f92337b appy.gen: improvements in user management. 2012-02-21 12:09:42 +01:00
Gaetan Delannay 0d55abb239 appy.shared.packaging: added the possibility to sign the generated Debian packages. 2012-02-15 11:38:13 +01:00
Gaetan Delannay 69fb172f03 appy.shared: added the possibility to generate a Cortex (see www.guardis.com) application definition for an Appy application. 2012-02-14 12:52:36 +01:00
Gaetan Delannay 57c481f05e appy.shared: allow to marshall Plone/Zope LazyMap instances. 2012-02-13 20:41:28 +01:00
Gaetan Delannay cb53c6b9b2 appy.shared: improvements in Debianizing an Appy app: the Debian install creates now scripts for starting the Zope/Appy/app instance and OpenOffice in server mode at boot time. 2012-02-07 12:17:10 +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 298ed34b5b appy.pod: allow to import SVG files (requires installing imagemagick). 2012-01-24 17:04:40 +01:00
Gaetan Delannay a1b048153f appy.shared: improved Debianizer (launches Zope and OO automatically); appy.bin: new.py is now able to create a pure Zope instance on its own (without mkzopeinstance) from a Zope install made with Debian zope2.12 package. 2012-01-20 16:12:00 +01:00
Gaetan Delannay 97ce11aa49 Bugfixes. 2012-01-18 18:37:38 +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 a89d65afc6 appy.shared.diff: bugfixes. 2012-01-16 15:05:35 +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 ba1743b38e appy.shared: bugfixes in XhtmlDiff. 2011-12-31 14:24:49 +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 d0cbe7e573 appy.gen: first Ploneless version. 2011-11-25 18:01:20 +01:00
Gaetan Delannay 5672c81553 More work on appy.shared.diff. 2011-11-21 17:10:26 +01:00
Gaetan Delannay 10398e770a appy.shared.diff: more work. 2011-11-19 23:53:38 +01:00
Gaetan Delannay 8c6301b901 appy.shared.diff: more work. 2011-11-19 11:48:03 +01:00
Gaetan Delannay cf992843ff More work on appy.shared.diff... 2011-11-18 01:01:50 +01:00
Gaetan Delannay 2ec05939fe appy.pod: bugfix while generating tracebacks within odt results (unicode-related); appy.shared.diff: first draft of a full-functional version; appy.shared.utils: improved functions normalizeString and formatNumber. 2011-11-17 12:41:06 +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 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 1ebcbb7b34 appy.shared.diff: more flesh on the XhtmlDiff class. 2011-10-22 19:41:50 +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 17f6d15185 appy.shared.diff: bugfixes. 2011-10-10 12:23:58 +02:00
Gaetan Delannay 38260cc2a5 appy.shared: added new class appy.shared.diff.HtmlDiff for computing differences between 2 chunks of HTML code. 2011-10-10 10:02:16 +02:00
Gaetan Delannay 813b47843c appy.shared: dicts can now be marshalled/unmarshalled. 2011-09-06 10:23:56 +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 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 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 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 c7633ecc8b Bugfixes. 2011-02-28 19:30:17 +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 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 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 ead9f7c2de New translation system, that generates screens for updating translations through the web, within the configuration. 2011-01-14 09:06:25 +01:00
Gaetan Delannay f3604624de Implemented management of HTML entities with expat (no need to get an external validating parser from _xmlplus). Works with Python2.4.4 and 2.4.6, but not from Python2.5. 2010-12-23 10:25:27 +01:00
Gaetan Delannay a30949a621 Improved management of indexes; always provide str and not unicode strings as index values; search screen may now include javascripts and css like those required by the date chooser; removed CSS parser, basic XmlUnmarshaller can do it by itself. 2010-12-17 14:46:55 +01:00
Gaetan Delannay 3d87036f85 The Resource object in shared/dav.py is now able to send SOAP requests, with marshalled and unmarshalled Python objects. 2010-11-08 11:40:41 +01:00
Gaetan Delannay ba877e061e Define encodings on some files to be compliant to Python >= 2.6. 2010-11-04 15:18:55 +01:00
Gaetan Delannay 50c8a139fc Updated new.py for installing Plone 4 without buildout and added an alternative way to insert POD expressions in POD templates via fields (track-changed text still works). 2010-10-27 12:06:21 +02:00
Gaetan Delannay feca97bda3 Completed the WebDav library with standard GET and POST HTTP requests. MultiPart not yet implemented. 2010-10-22 16:06:27 +02:00
Gaetan Delannay 3cfc24fe02 Improvements in the WebDAV client. Transmission of binary files seems to have bugs. 2010-10-15 15:14:28 +02:00
Gaetan Delannay 990e16c6e7 Eradicated Flavour and PodTemplate classes (for the latter, use Pod fields instead); Added a code analyser; Groups can now be slaves in master/slaves relationships; Refs have more params (show a confirmation popup before adding an object, add an object without creation form); Code for Refs has been refactored to comply with the new way to organize Types; Added a WebDAV client library. 2010-10-14 14:43:56 +02:00
Gaetan Delannay eb52c1bb7d Bugfix in new.py; added new user management. 2010-09-02 16:16:08 +02:00
Gaetan Delannay bfd2357f69 Added a new system for layouting production-ready forms without any HTML coding, many performance improvements and more independence towards Archetypes. 2010-08-05 18:23:17 +02:00
Gaetan Delannay 309ea921fa Bugfixes in appyObj.dump and in master/slave relationships. 2010-05-10 11:04:59 +02:00
Gaetan Delannay ca7b688c00 Small bugfix while searching string fields and added the possibility to define a text-transform on String fields. 2010-04-16 17:07:34 +02:00
Gaetan Delannay 47334b885f Added a script for automating the creation of a Plone3 instance. 2010-04-01 13:46:50 +02:00
Gaetan Delannay 9cff9df299 Improvements in the XML marshaller. 2010-03-31 15:49:54 +02:00
Gaetan Delannay 3a7b5be03b Applied patch from Frederic Peters for bug https://bugs.launchpad.net/appy/+bug/485815 and another bugfix. 2010-03-25 16:34:37 +01:00
Gaetan Delannay 97494592d5 XmlMarshaller may be given custom functions for marshalling in a specific way some Python values or instances. 2010-02-24 10:27:41 +01:00
Gaetan Delannay 15ef6f334d Improvements in XmlMarshaller: any Python variable may be the root of a structure to marshall. 2010-02-23 14:55:51 +01:00
Gaetan Delannay fc75a42264 Added the possibility to log OO errors in appy.gen method File.dump and changed some code for avoiding silly Plone warnings on every user click. 2010-02-09 15:59:03 +01:00
Gaetan Delannay d398d5bcfc Performance improvement in XML marshaller by mimicking StringIO in unicode-friendly buffer UnicodeBuffer and added a class appy.gen.No allowing to explain why some workflow condition cannot be triggered. 2010-02-05 15:39:52 +01:00
Gaetan Delannay 160c4960da Use of a replacement to StringIO for managing encoding problems while marchalling Python objects. 2010-02-02 16:25:10 +01:00
Gaetan Delannay 2e1c6a6999 Management of floats with a given precision; XmlMarshaller can dump unicode or str result. 2010-01-29 11:28:39 +01:00
Gaetan Delannay 2ff08258bc SAP interface: easy access to SAP results. Bugfix in search method. 2009-12-21 20:45:29 +01:00
Gaetan Delannay d320a369c9 Improved SAP interface and added historization of fields. 2009-12-14 20:22:55 +01:00
Gaetan Delannay b888f8149b Improved XmlMarshaller: strings can be dumped as CDATA. Appy objects are marshalled with their history. 2009-12-07 20:28:41 +01:00
Gaetan Delannay c3f5cfc9cd Finalized integration of coverage.py within the Appy framework. 2009-12-03 16:45:05 +01:00
Gaetan Delannay 01487db688 Added a SAP connector and integrated the test system with coverage.py 2009-12-01 20:36:59 +01:00
Gaetan Delannay cf3748bf77 Added String validators for BIC and IBAN (bank-related ISO numbers) 2009-11-17 15:46:41 +01:00
Gaetan Delannay 546caa485d New test system based on doctest and unittest and many more. 2009-11-11 20:22:13 +01:00
Gaetan Delannay cbd6fbbec5 Added in shared/data some copies of external authentic data (iso country codes and belgian cities). 2009-10-27 14:48:04 +01:00
Gaetan Delannay 605c42d94e Added an AJAX framework within appy.gen, and its first use: a pagination mechanism for producing paginated references in the reference widget. 2009-10-25 21:42:08 +01:00