Gaetan Delannay
|
dcf90f2b94
|
[gen] Created method mixin.getListTitle that is responsible for displaying an object's title in the various lists (queries, refs).
|
2014-09-23 18:38:55 +02:00 |
|
Gaetan Delannay
|
701eae1b19
|
[gen] Performance improvements.
|
2014-09-23 12:47:44 +02:00 |
|
Gaetan Delannay
|
ecc3f07a09
|
[gen] SMTP and LDAP configuration updated. Module appy.gen.mail can now be used independently of a gen-application.
|
2014-09-18 11:08:29 +02:00 |
|
Gaetan Delannay
|
4947e2956c
|
[gen] Pod field: send pod results by emails.
|
2014-09-17 18:09:30 +02:00 |
|
Gaetan Delannay
|
e6f2b5213e
|
[gen] Pod field: more work on mailing lists.
|
2014-09-17 14:22:36 +02:00 |
|
Gaetan Delannay
|
f4ea1a5570
|
[gen] Bugfixes in the pod field.
|
2014-09-16 15:38:29 +02:00 |
|
Gaetan Delannay
|
f64493764f
|
[gen] bugfixes in the pod field.
|
2014-09-15 18:32:45 +02:00 |
|
Gaetan Delannay
|
4d12293dc8
|
[gen] Added wrapper.createFrom, similar to wrapper.create, but allows to create an object with data from another object (kind of 'duplicate' functionality).
|
2014-09-14 21:40:35 +02:00 |
|
Gaetan Delannay
|
400158a0a1
|
[gen] Users have now a workflow allowing them to deactivated. An inactive user can't log in anymore. This is useful if the User is tied to other objects and cannot be removed without braking the data model, but does not correspond anymore to an active user that is allowed to log in.
|
2014-09-11 16:41:08 +02:00 |
|
Gaetan Delannay
|
194b455816
|
[gen] pod field: one of the listed templates in field.template can simply be a pointer to another template from the list. For example, template=('Item.odt', 'Item.odt.variant'). The second file is an empty file and gen will use the first one for the second template. It allows to have similar files for templates that, in the UI, are different, ie, can have different names and appear under different conditions. Note that in the default context of every template, variable 'template' contains the name of the template file. It allows the template to know if he is 'called' under the name 'Item.odt' or 'Item.odt.variant'.
|
2014-09-10 16:26:19 +02:00 |
|
Gaetan Delannay
|
71bc58a8b0
|
[gen] While <obj>.<fieldName> allows to get the 'DB' value of some field, <obj>.getValue allows to get a variant of it, ie, the formatted version (via an internal call to field.getFormattedValue).
|
2014-09-08 15:13:18 +02:00 |
|
Gaetan Delannay
|
8aed007623
|
[gen] Bugfixes: handle multilingual titles in queries, references, breadcrumbs...
|
2014-09-06 15:20:59 +02:00 |
|
Gaetan Delannay
|
f8a7103c7a
|
[gen] Changes in parameters of some basic field methods to enable field.languages to be defined dymanically via a method.
|
2014-09-05 17:13:23 +02:00 |
|
Gaetan Delannay
|
18afb4416c
|
[gen] Bugfix in string.py (inline editing).
|
2014-09-04 11:29:00 +02:00 |
|
Gaetan Delannay
|
c8cf3911fa
|
[gen] Historization of multilingual fields.
|
2014-09-03 18:18:27 +02:00 |
|
Gaetan Delannay
|
2e1bdb9491
|
[gen] Bugfixes.
|
2014-08-15 11:43:46 +02:00 |
|
Gaetan Delannay
|
fb65cf82d8
|
[gen] More work on string multilingual fields.
|
2014-08-15 10:46:28 +02:00 |
|
Gaetan Delannay
|
7c2d4c1b7a
|
[gen] More work on multilingual string fields.
|
2014-08-14 16:46:37 +02:00 |
|
Gaetan Delannay
|
4131ba899e
|
[gen] More work on string multilingual fields.
|
2014-08-13 17:17:25 +02:00 |
|
Gaetan Delannay
|
6770d23a50
|
[gen] Boolean field can now be rendered as 2 radio buttons.
|
2014-08-08 12:36:19 +02:00 |
|
Gaetan Delannay
|
636def8d24
|
[gen] Updated the Ajax system to be able to call a method on a Appy wrapper instead of a Zope object.
|
2014-08-05 09:48:05 +02:00 |
|
Gaetan Delannay
|
fdb8b92fcb
|
[gen] Ref.numbered: when clicking on the number, it gets selected automatically: when hitting then 'enter' key it has the same effect as clickin on the 'move' image.
|
2014-07-31 17:04:08 +02:00 |
|
Gaetan Delannay
|
302d54c7ce
|
[gen] Positioned checkboxes on the left.
|
2014-07-29 19:21:37 +02:00 |
|
Gaetan Delannay
|
dda894089a
|
[gen] When param Ref.select is a Search instance, Search.name can be ommitted; added code that shows a warning: Appy is not compatible with MSIE below 9.
|
2014-07-28 17:35:49 +02:00 |
|
Gaetan Delannay
|
a45dfa8dd0
|
[gen] Ref field: first cmplete version of Ref with link='popup'.
|
2014-07-28 12:29:16 +02:00 |
|
Gaetan Delannay
|
0bcd0055a3
|
[gen] More work on Refs with popup='true'.
|
2014-07-25 15:07:31 +02:00 |
|
Gaetan Delannay
|
a14bff45a7
|
[gen] More work on Ref.link='popup'.
|
2014-07-23 22:29:47 +02:00 |
|
Gaetan Delannay
|
792db32f27
|
[gen] Allow to show checkboxes for search results.
|
2014-07-19 13:42:39 +02:00 |
|
Gaetan Delannay
|
b2a2aa5210
|
[gen] Ref.select can now hold a Search instance; began implementation of Ref.link == 'popup'.
|
2014-07-18 16:54:11 +02:00 |
|
Gaetan Delannay
|
811388078f
|
[gen] Pod field: bugfix: too long filenames were generated for downloadable pod results.
|
2014-07-11 12:38:24 +02:00 |
|
Gaetan Delannay
|
1c2936d76d
|
[gen] Pod field: added param 'getChecked': if you specify there the name of a Ref field of the same gen class, within the pod template you will be able to know what linked objects are currently selected in the user interface.
|
2014-07-10 21:22:52 +02:00 |
|
Gaetan Delannay
|
25f0e8184e
|
[pod] When inserting an image via statement do... from document(...), parameter 'sizeUnit' can now be 'pc' (percentage): in this case, percentages are expressed as a tuple (widthPercentage, heightPercentage) in parameter 'size' and must be integers from 1 to 100. [bin] backup.py: better error handling when contacting SMTP server. [gen] Calendar widget for Date fields: bugfix (when the date range is in reverse chronological order). [gen] Ref field: added hook 'afterLink' allowing to execute a method just after an object has been linked. [gen] Ref field: added attribute 'unlinkElement' allowing to define a specific condition for unlinking a given object (before, it was only possible to define, in attribute 'unlink', a global condition allowing to unlink any object from the Ref. [gen] Bugfix: the link to the home page, when clicking on the logo, is fixed.
|
2014-07-10 09:46:39 +02:00 |
|
Gaetan Delannay
|
268309045a
|
[gen] Ref field: added params 'beforeLink' and 'afterUnlink' allowing to hold methods that execute respectively before an item is linked via a Ref or after it has been unlinked; bugfix in mixin::getUrl.
|
2014-06-25 15:42:34 +02:00 |
|
Gaetan Delannay
|
8511bcd675
|
[gen] Bugfixes.
|
2014-06-24 21:05:01 +02:00 |
|
Gaetan Delannay
|
98b748cfb1
|
[gen] Added for Ref field, param 'insert' that defines at what position a newly tied object is inserted among referred objects.
|
2014-06-24 17:07:59 +02:00 |
|
Gaetan Delannay
|
e11e754305
|
[gen] Class.popup: finalized the development of 'popup' classes.
|
2014-06-16 00:58:45 +02:00 |
|
Gaetan Delannay
|
ef68bb420b
|
[gen] Bugfix in ref (now it is possible to display several refs with render='menus' at the same time); CSS improvements.
|
2014-06-03 15:55:28 +02:00 |
|
Gaetan Delannay
|
432a579d47
|
[gen] On a workflow class, one may now define a method 'onTrigger(self, obj, transitionName)' that will be called after any transition has been triggered, but before the a transition-specific action.
|
2014-06-02 15:08:39 +02:00 |
|
Gaetan Delannay
|
6494bf22c7
|
[gen] Added some utility methods.
|
2014-06-01 11:44:07 +02:00 |
|
Gaetan Delannay
|
2eee217b05
|
[ref] Better rendering of ref menus.
|
2014-05-29 13:32:19 +02:00 |
|
Gaetan Delannay
|
b3a72ade24
|
[gen] Bugfixes; for Ref field, replaced render mode 'titles' with 'minimal', allowing to display all fields defined in shownInfo.
|
2014-05-19 12:12:33 +02:00 |
|
Gaetan Delannay
|
57bab29447
|
[gen] Bugfixes.
|
2014-05-17 16:44:56 +02:00 |
|
Gaetan Delannay
|
cf946e3222
|
[gen] Added String.placeholder, similar to HTML attribute 'placeholder' allowing to specify a short hint that describes the expected value of the input field.
|
2014-05-15 12:45:53 +02:00 |
|
Gaetan Delannay
|
0dee80df3c
|
[gen] Bugfix in groups.
|
2014-05-14 17:26:46 +02:00 |
|
Gaetan Delannay
|
79837d3f00
|
[gen] Bugfix: rendering of pod fields.
|
2014-05-14 17:05:50 +02:00 |
|
Gaetan Delannay
|
b4e6333472
|
[gen] Bugfix: slave groups; bugfix: security check for pod fields; security bugfix for pod fields: write access to the field is required for performing any freeze-related action; migration to Appy 0.9.0: dump frozen pod fields on disk; repaired test system for Appy 0.9.0; more explicit error message when using, on some field, a specific write or read permission that is not used in the workflow.
|
2014-05-14 15:10:41 +02:00 |
|
Gaetan Delannay
|
5c6a7f0f97
|
[gen] Security improvements.
|
2014-05-03 22:45:51 +02:00 |
|
Gaetan Delannay
|
b2dbef2bc4
|
Improved class appy.Hack to be able to hack static methods as well; [gen] pod field can now accept a string in param 'showTemplate' if a single format is accepted; when showing linked objects in a ref field, we show a message and no data for every object the currently logged user is not allowed to read; improved the default UI layout (less table borders).
|
2014-05-03 15:18:41 +02:00 |
|
Gaetan Delannay
|
0a174098f1
|
[gen] Some CSS changes.
|
2014-05-02 20:22:33 +02:00 |
|
Gaetan Delannay
|
b83f6d512d
|
[gen] More methods on AbstractWrapper.
|
2014-05-02 14:34:10 +02:00 |
|
Gaetan Delannay
|
1d0ee7a614
|
[gen] Bugfix in the Ref field; added method workflow.Transition.getBack that finds the 'back' transition of a given transition.
|
2014-05-02 12:35:09 +02:00 |
|
Gaetan Delannay
|
14f85509e1
|
[gen] Added ref.render == 'titles' = a way to render linked objects as a simple list of comma-separated, non clickable titles; bugfix in inline-edit of string XHTML fields.
|
2014-04-30 21:08:42 +02:00 |
|
Gaetan Delannay
|
4d78996938
|
[gen] Fixed some problems with groups having style='tabs'.
|
2014-04-30 15:10:11 +02:00 |
|
Gaetan Delannay
|
7adbc7e4bc
|
[gen] Fixed groups with style 'tabs'; reused the same tabs for representing phases; pages and phases are now outside the portlet, rendered horizontally below the breadcrumb; methods getSupBreadCrumb and getSubBreadCrumb can now be defined on every gen-class to customize what is shown above and below the breadcrumb (=title with a prefix) on view layouts (those methods are similar to getSubTitle and getSupTitle when displaying lists of objects).
|
2014-04-29 19:02:06 +02:00 |
|
Gaetan Delannay
|
cee7b49e3c
|
[gen] Added method Mixin.onCall allowing to call a specific method on a gen-class from the UI.
|
2014-04-25 12:14:50 +02:00 |
|
Gaetan Delannay
|
ef21375410
|
[gen] Bugfixes and use of Ref.autoref fto avoid circular references within cross-class Ref fields.
|
2014-04-22 19:37:36 +02:00 |
|
Gaetan Delannay
|
e1b6b1b951
|
[gen] Buttons for workfow conditions are now smaller when shown in lists of objects; added the possibility to define a specific icon for every workflow transition.
|
2014-04-21 17:19:27 +02:00 |
|
Gaetan Delannay
|
f0c1f69573
|
[gen] Optimisations, bugfixes and refactorings.
|
2014-04-21 12:11:41 +02:00 |
|
Gaetan Delannay
|
822e1a7c63
|
[gen] Buttons can now be stretched to fit the size of the inner label.
|
2014-04-20 19:22:40 +02:00 |
|
Gaetan Delannay
|
2b1fc85512
|
[gen] Bugfixes.
|
2014-04-19 19:58:02 +02:00 |
|
Gaetan Delannay
|
ff7c300dd0
|
[gen] Bugfix in the Ref field in edit mode.
|
2014-04-18 22:00:37 +02:00 |
|
Gaetan Delannay
|
16442341f0
|
[gen] More stuff for modifying workflow objects.
|
2014-04-18 14:50:07 +02:00 |
|
Gaetan Delannay
|
75f5407e48
|
[gen] Added and changed some methods on the basic workflow objects in order to ease modifications on workflow objects (states, transitions).
|
2014-04-17 17:10:38 +02:00 |
|
Gaetan Delannay
|
b5d38ad150
|
[gen] Moved action-related stuff from mixins/__init__.py to field/action.py.
|
2014-04-15 21:46:13 +02:00 |
|
Gaetan Delannay
|
5de5372bec
|
[gen] Added attribute Ref.numbered allowing to produce numbered lists of tied objects and controls for easily moving objects from one position to another.
|
2014-04-15 19:52:18 +02:00 |
|
Gaetan Delannay
|
036856f07e
|
[gen] Within Ref fields, added 2 icons for moving tied objects to top or bottom + bugfixes.
|
2014-04-15 13:01:39 +02:00 |
|
Gaetan Delannay
|
ac08d2d795
|
[gen] Various bugfixes: single-temlplate pod fields, ajax master/slaves and IE10, popup management.
|
2014-04-14 20:55:23 +02:00 |
|
Gaetan Delannay
|
977cd0a225
|
[gen] Ref field improved.
|
2014-04-05 10:54:40 +02:00 |
|
Gaetan Delannay
|
b9bfee9615
|
[gen] Ref field: more work on global actions.
|
2014-04-05 09:49:54 +02:00 |
|
Gaetan Delannay
|
3621d0da92
|
[gen] Ref field has now global actions like 'unlink many', 'link many' and 'delete many'.
|
2014-04-04 16:49:22 +02:00 |
|
Gaetan Delannay
|
e7c20f8d2b
|
[gen] Ref field: allow to insert many selected items at once (Ref fields with link='list').
|
2014-04-03 17:32:57 +02:00 |
|
Gaetan Delannay
|
084f1f9a23
|
[gen] Ref field: param 'link' can now be 'list' (ongoing work).
|
2014-04-01 18:34:12 +02:00 |
|
Gaetan Delannay
|
edde17d9c8
|
[bin] More robust backup procedure. [gen] Removed deprecated i18n labels.
|
2014-03-25 15:11:21 +01:00 |
|
Gaetan Delannay
|
e969bbf362
|
[gen] Pod field: allow to upload a replacement file for a frozen pod document.
|
2014-03-25 12:05:07 +01:00 |
|
Gaetan Delannay
|
d0749cc365
|
[gen] Added 'freeze actions' to pod fields.
|
2014-03-24 22:55:00 +01:00 |
|
Gaetan Delannay
|
0834356487
|
[gen] Pod field can now freeze and unfreeze any of its multiple templates.
|
2014-03-21 16:50:48 +01:00 |
|
Gaetan Delannay
|
ecc3a8c39b
|
[gen] Pod fields can now be configured with several templates.
|
2014-03-19 23:13:31 +01:00 |
|
Gaetan Delannay
|
eba86ae6bc
|
[gen] Bugfix in Ref field.
|
2014-03-11 16:22:28 +01:00 |
|
Gaetan Delannay
|
d956c1f17a
|
[bin] backup.py new mode 'copy' thatdoes not use repozo for backup but a simple copy of Data.fs. [gen] Bugfix in pod.py.
|
2014-03-11 15:29:59 +01:00 |
|
Gaetan Delannay
|
059828b319
|
[gen] Bugfix while displaying possible values for a Ref field in edit mode.
|
2014-03-06 23:08:14 +01:00 |
|
Gaetan Delannay
|
74f8592517
|
[gen] Automatically generated passwords and captcha challenges do not include numbers and letters that could be misread.
|
2014-03-06 12:15:10 +01:00 |
|
Gaetan Delannay
|
62e2d49953
|
[gen] Added a transparent clickable logo at the top left (or right if rtl) of the page.
|
2014-03-05 22:01:51 +01:00 |
|
Gaetan Delannay
|
90af2e5698
|
[gen] More compact code.
|
2014-03-05 17:04:43 +01:00 |
|
Gaetan Delannay
|
b98da33d47
|
[gen] Removed obsolete attribute Field.sync.
|
2014-03-05 16:19:11 +01:00 |
|
Gaetan Delannay
|
5bea4e728b
|
[gen] Allow for ajax-based master-slave relationships within the search screen for String fields.
|
2014-03-05 15:47:12 +01:00 |
|
Gaetan Delannay
|
6d6c842f12
|
[gen] Allow for ajax-based master-slave relationships within the search screen for Ref fields.
|
2014-03-05 13:25:36 +01:00 |
|
Gaetan Delannay
|
584e38abef
|
[gen] Bugfix.
|
2014-03-04 16:02:23 +01:00 |
|
Gaetan Delannay
|
ea08d7981f
|
[gen] Added field.persist to avoid storing values for fields that do not require it (like master fields only used to determine selectable values among slave fields).
|
2014-03-04 15:03:37 +01:00 |
|
Gaetan Delannay
|
b8ceb66a49
|
[gen] Master-slave fields: slave values can now ajax-change when the user modifies master values.
|
2014-03-03 18:54:21 +01:00 |
|
Gaetan Delannay
|
f7172be6ee
|
[gen] Bugfixes.
|
2014-02-27 20:03:39 +01:00 |
|
Gaetan Delannay
|
fe56ee27a0
|
[gen] Bugfixes.
|
2014-02-27 12:54:05 +01:00 |
|
Gaetan Delannay
|
c002b5cb59
|
[gen] Added px.override allowing to modify PX code; bugfixes; added migration code for converting File instances to FileInfo instances.
|
2014-02-26 23:40:27 +01:00 |
|
Gaetan Delannay
|
be145be254
|
[gen] Binary files stored in fields appy.fields.File are now stored outside the ZODB, on the filesystem; Ref fields can now also be rendered as dropdown menus: every menu represents a coherent group of link
ed objects. The main menu entry can be textual or an icon; computed fields are by default rendered in view and cell layouts.
|
2014-02-26 10:40:27 +01:00 |
|
Gaetan Delannay
|
e1d0597694
|
[gen] list field now takes into account 'show' attribute of sub-fields.
|
2014-01-14 09:07:42 +01:00 |
|
Gaetan Delannay
|
14f4848348
|
[gen] Added base Appy i18n files containing standard Appy labels.
|
2013-10-20 18:12:39 +02:00 |
|
Gaetan Delannay
|
6a83285e64
|
[gen] Extended the HTTP-XML system to be able to call a method via a HTTP POST containing XML data (SOAP or REST-like).
|
2013-10-08 22:41:21 +02:00 |
|
Gaetan Delannay
|
91e0bd2240
|
[gen] Allow to group transitions.
|
2013-09-24 12:26:31 +02:00 |
|
Gaetan Delannay
|
180b3473e8
|
[pod,px] Allow to reference an already defined variable instead of defining one in a var statement, via the '@' prefix. For example, in PX: var='@i = i + 1'. [pod] Repaired broken tests [gen] Bugfixes.
|
2013-09-23 22:36:09 +02:00 |
|
Gaetan Delannay
|
1f901e5545
|
[gen] klass.creators can now be a method that either returns a list of global roles allowed to create instances of this class, or a boolean indicating if the currently logged user can create instances of this class or not. [gen] Bugfixes.
|
2013-09-22 16:33:32 +02:00 |
|
Gaetan Delannay
|
e1b83574c5
|
[gen] pod fields now read pod templates directly from disk. Fields 'template' and 'formats' that were generated into the database (and editable through-the-web) are now removed. This simplification will allow in a second step to define several templates for a unique pod field, ie: multiDoc = Pod(template='od/Item*.odt'). [gen] Additionally, fields tool.numberOfSearchColumnsForXXX and tool.searchFieldsForXXX are not generated anymore and are replace by static class attributes class.numberOfSearchColumns and class.searchFields.
|
2013-09-21 17:46:42 +02:00 |
|
Gaetan Delannay
|
c5930edd2d
|
[gen] Added wrapper.getLastEvent, allowing to perform kinds of queries into an object's history.
|
2013-09-20 23:15:54 +02:00 |
|
Gaetan Delannay
|
6206dbe59c
|
[fields] computed.py: plainText is now False by default, method can now be a PX [fields] list.py: bugfixes in the validation process; [gen] within aby PX, its context is now available as a special var '_ctx_': to use with caution only for the needs of Appy itself. It is not meant to be used by Appy developers.
|
2013-09-20 17:42:07 +02:00 |
|
Gaetan Delannay
|
59dc619c7f
|
[gen] Bugfixes.
|
2013-09-18 15:57:34 +02:00 |
|
Gaetan Delannay
|
809a553cf4
|
[gen] Replaced database fields tool.resultColumnsFor[class] by static attributes class.listColumns. [gen] Bugfixes and removed unused code.
|
2013-09-18 12:06:07 +02:00 |
|
Gaetan Delannay
|
383af4a687
|
[gen] BPX bugfixes.
|
2013-09-11 22:11:44 +02:00 |
|
Gaetan Delannay
|
5223af2a62
|
[gen] Get rid of some Zope-specific security aspects. This is a preparatory work to extend the Appy authentication system to perform ldap authentication as well.
|
2013-08-23 18:57:27 +02:00 |
|
Gaetan Delannay
|
04852360fa
|
[gen] Goodbye Zope Page Templates.
|
2013-08-21 22:25:27 +02:00 |
|
Gaetan Delannay
|
1bd77d68c4
|
[gen] Refactoring.
|
2013-08-21 13:54:56 +02:00 |
|
Gaetan Delannay
|
34e3a3083e
|
[gen] More work ZPT->PX.
|
2013-08-21 12:35:30 +02:00 |
|
Gaetan Delannay
|
f91972c21a
|
[gen] Minor updates.
|
2013-08-08 12:00:33 +02:00 |
|
Gaetan Delannay
|
8833f7b0ae
|
[gen] Changed the way to customize the Config in an app.
|
2013-07-24 15:53:19 +02:00 |
|
Gaetan Delannay
|
88bd5e5bce
|
[gen] Created param config.groupsForGlobalRoles that disabled by default creation of a group for every global role. On a appy class it is now possible to define a static method 'generateUid' that generates a UID for every instance of this class, instead of using the standard Appy way to produce such UIDs. [shared] dav.Resource: allow to retrieve the result encoded or not in utf8.
|
2013-07-23 17:07:27 +02:00 |
|
Gaetan Delannay
|
d385b8514e
|
[gen] Optimized PXs, that are almost ready. This is the last gen version where PTs are still working.
|
2013-07-23 10:29:39 +02:00 |
|
Gaetan Delannay
|
efd918f175
|
[gen] Replaced, in PXs, function 'img' by function 'url', that returns the URL of an external resource to be included in the XHTML, like an image, a Javascript file or a CSS file.
|
2013-07-20 19:56:17 +02:00 |
|
Gaetan Delannay
|
5d350de491
|
[gen] Optimized PXs.
|
2013-07-15 13:39:05 +02:00 |
|
Gaetan Delannay
|
1810373304
|
[gen] Optimized PXs. [px] added tag 'var2', similar to 'var', but that is executed after tags 'for' and 'if'.
|
2013-07-15 11:23:29 +02:00 |
|
Gaetan Delannay
|
05292356e7
|
[gen] Added a validator for String fields, for validating Belgian NISS numbers.
|
2013-07-10 18:05:06 +02:00 |
|
Gaetan Delannay
|
369e41b43c
|
[gen] Continued PX-based refactoring.
|
2013-07-10 09:56:35 +02:00 |
|
Gaetan Delannay
|
25b4edfc1d
|
[gen] Moved Appy fields into appy/fields together with their PX.
|
2013-07-08 23:39:16 +02:00 |
|