author | Thierry Florac <tflorac@ulthar.net> |
Fri, 26 Jul 2019 19:23:33 +0200 | |
changeset 1339 | 401655442ef0 |
parent 1338 | a89ab799a162 |
child 1340 | d2e2e785252b |
--- a/buildout.cfg Fri Jul 26 13:04:54 2019 +0200 +++ b/buildout.cfg Fri Jul 26 19:23:33 2019 +0200 @@ -85,4 +85,4 @@ eggs = pyams_content [test] [versions] -pyams_content = 0.1.51.2 +pyams_content = 0.1.52
--- a/docs/HISTORY.txt Fri Jul 26 13:04:54 2019 +0200 +++ b/docs/HISTORY.txt Fri Jul 26 19:23:33 2019 +0200 @@ -1,6 +1,16 @@ History ======= +0.1.52 +------ + - updated label dor draft contents using standard workflow + - added actions support to form fields container table + - make form fields annotatable + - use an iterator when getting form's fields list + - added Google's Recaptcha support to forms + - update permissions management in associations containers and items (including menus) + - corrected logos paragraph content checker + 0.1.51.2 -------- - small update in owner change form (use and store a copy of contributor's attribute instead of updating them
--- a/setup.py Fri Jul 26 13:04:54 2019 +0200 +++ b/setup.py Fri Jul 26 19:23:33 2019 +0200 @@ -24,7 +24,7 @@ README = os.path.join(DOCS, 'README.txt') HISTORY = os.path.join(DOCS, 'HISTORY.txt') -version = '0.1.51.2' +version = '0.1.52' long_description = open(README).read() + '\n\n' + open(HISTORY).read() tests_require = []
--- a/src/pyams_content.egg-info/PKG-INFO Fri Jul 26 13:04:54 2019 +0200 +++ b/src/pyams_content.egg-info/PKG-INFO Fri Jul 26 19:23:33 2019 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: pyams-content -Version: 0.1.51.2 +Version: 0.1.52 Summary: PyAMS base content interfaces and classes Home-page: http://hg.ztfy.org/pyams/pyams_content Author: Thierry Florac @@ -72,6 +72,16 @@ History ======= + 0.1.52 + ------ + - updated label dor draft contents using standard workflow + - added actions support to form fields container table + - make form fields annotatable + - use an iterator when getting form's fields list + - added Google's Recaptcha support to forms + - update permissions management in associations containers and items (including menus) + - corrected logos paragraph content checker + 0.1.51.2 -------- - small update in owner change form (use and store a copy of contributor's attribute instead of updating them
--- a/src/pyams_content.egg-info/SOURCES.txt Fri Jul 26 13:04:54 2019 +0200 +++ b/src/pyams_content.egg-info/SOURCES.txt Fri Jul 26 19:23:33 2019 +0200 @@ -436,10 +436,6 @@ src/pyams_content/zmi/resources/js/jquery-imagemapster-1.2.10.min.js src/pyams_content/zmi/resources/js/pyams_content.js src/pyams_content/zmi/resources/js/pyams_content.min.js -src/pyams_content/zmi/resources/js/pyams_content.min.min.js -src/pyams_content/zmi/resources/js/pyams_content.min.min.min.js -src/pyams_content/zmi/resources/js/pyams_content.min.min.min.min.js -src/pyams_content/zmi/resources/js/pyams_content.min.min.min.min.min.js src/pyams_content/zmi/resources/less/pyams_content.less src/pyams_content/zmi/viewlet/__init__.py src/pyams_content/zmi/viewlet/toplinks/__init__.py
--- a/src/pyams_content/locales/fr/LC_MESSAGES/pyams_content.po Fri Jul 26 13:04:54 2019 +0200 +++ b/src/pyams_content/locales/fr/LC_MESSAGES/pyams_content.po Fri Jul 26 19:23:33 2019 +0200 @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE 1.0\n" -"POT-Creation-Date: 2019-06-28 18:06+0200\n" +"POT-Creation-Date: 2019-07-26 12:53+0200\n" "PO-Revision-Date: 2015-09-10 10:42+0200\n" "Last-Translator: Thierry Florac <tflorac@ulthar.net>\n" "Language-Team: French\n" @@ -200,7 +200,7 @@ #: src/pyams_content/features/search/portlet/interfaces.py:25 #: src/pyams_content/root/zmi/templates/advanced-search.pt:197 #: src/pyams_content/shared/view/portlet/interfaces.py:52 -#: src/pyams_content/shared/common/zmi/dashboard.py:123 +#: src/pyams_content/shared/common/zmi/dashboard.py:122 #: src/pyams_content/shared/common/zmi/reverse.py:73 #: src/pyams_content/shared/common/zmi/templates/advanced-search.pt:200 #: src/pyams_content/shared/site/portlet/interfaces.py:24 @@ -237,7 +237,7 @@ #: src/pyams_content/component/association/interfaces.py:37 #: src/pyams_content/features/alert/interfaces.py:54 #: src/pyams_content/features/menu/interfaces.py:62 -#: src/pyams_content/shared/form/interfaces.py:85 +#: src/pyams_content/shared/form/interfaces.py:83 #: src/pyams_content/shared/site/interfaces.py:179 msgid "Visible?" msgstr "Visible ?" @@ -476,7 +476,7 @@ #: src/pyams_content/component/paragraph/interfaces/audio.py:50 #: src/pyams_content/component/extfile/interfaces.py:36 #: src/pyams_content/features/search/interfaces.py:45 -#: src/pyams_content/shared/form/interfaces.py:64 +#: src/pyams_content/shared/form/interfaces.py:62 msgid "Description" msgstr "Description" @@ -1119,6 +1119,7 @@ msgstr "Référence d'un formulaire de contact" #: src/pyams_content/component/paragraph/interfaces/contact.py:69 +#: src/pyams_content/shared/form/field.py:207 msgid "Phone number" msgstr "Téléphone" @@ -2319,9 +2320,9 @@ #: src/pyams_content/features/share/interfaces.py:62 #: src/pyams_content/features/share/zmi/container.py:155 -#: src/pyams_content/features/menu/zmi/__init__.py:218 -#: src/pyams_content/shared/form/interfaces.py:60 -#: src/pyams_content/shared/form/zmi/field.py:167 +#: src/pyams_content/features/menu/zmi/__init__.py:217 +#: src/pyams_content/shared/form/interfaces.py:58 +#: src/pyams_content/shared/form/zmi/field.py:166 #: src/pyams_content/shared/common/interfaces/types.py:43 msgid "Label" msgstr "Libellé" @@ -3119,27 +3120,27 @@ msgid "Link has no illustration" msgstr "Le lien n'a pas d'illustration" -#: src/pyams_content/features/menu/zmi/__init__.py:80 +#: src/pyams_content/features/menu/zmi/__init__.py:83 msgid "Add menu..." msgstr "Ajouter une entrée" -#: src/pyams_content/features/menu/zmi/__init__.py:91 +#: src/pyams_content/features/menu/zmi/__init__.py:94 msgid "Add new menu" msgstr "Ajout d'un menu" -#: src/pyams_content/features/menu/zmi/__init__.py:124 +#: src/pyams_content/features/menu/zmi/__init__.py:127 msgid "Edit menu properties" msgstr "Propriétés du menu" -#: src/pyams_content/features/menu/zmi/__init__.py:230 +#: src/pyams_content/features/menu/zmi/__init__.py:229 msgid "Inner content" msgstr "Contenu interne" -#: src/pyams_content/features/menu/zmi/__init__.py:111 +#: src/pyams_content/features/menu/zmi/__init__.py:114 msgid "Menu was correctly added." msgstr "Le menu a été ajouté." -#: src/pyams_content/features/menu/zmi/__init__.py:415 +#: src/pyams_content/features/menu/zmi/__init__.py:419 msgid "Link was correctly added." msgstr "Le lien a été ajouté." @@ -3536,213 +3537,213 @@ msgstr "Accueil" #: src/pyams_content/root/zmi/__init__.py:110 -#: src/pyams_content/shared/common/zmi/dashboard.py:290 +#: src/pyams_content/shared/common/zmi/dashboard.py:289 msgid "Dashboard" msgstr "Tableau de bord" #: src/pyams_content/root/zmi/__init__.py:159 -#: src/pyams_content/shared/common/zmi/dashboard.py:346 +#: src/pyams_content/shared/common/zmi/dashboard.py:345 #, python-format msgid "MANAGER - {0} content waiting for your action" msgstr "RESPONSABLE - {0} contenu en attente de votre intervention" #: src/pyams_content/root/zmi/__init__.py:160 -#: src/pyams_content/shared/common/zmi/dashboard.py:347 +#: src/pyams_content/shared/common/zmi/dashboard.py:346 #, python-format msgid "MANAGER - {0} contents waiting for your action" msgstr "RESPONSABLE - {0} contenus en attente de votre intervention" #: src/pyams_content/root/zmi/__init__.py:204 -#: src/pyams_content/shared/common/zmi/dashboard.py:388 +#: src/pyams_content/shared/common/zmi/dashboard.py:387 #, python-format msgid "CONTRIBUTOR - {0} content waiting for action" msgstr "CONTRIBUTEUR - {0} contenu soumis à un responsable" #: src/pyams_content/root/zmi/__init__.py:205 -#: src/pyams_content/shared/common/zmi/dashboard.py:389 +#: src/pyams_content/shared/common/zmi/dashboard.py:388 #, python-format msgid "CONTRIBUTOR - {0} contents waiting for action" msgstr "CONTRIBUTEUR - {0} contenus soumis à un responsable" #: src/pyams_content/root/zmi/__init__.py:240 -#: src/pyams_content/shared/common/zmi/dashboard.py:421 +#: src/pyams_content/shared/common/zmi/dashboard.py:420 #, python-format msgid "CONTRIBUTOR - {0} modified content" msgstr "CONTRIBUTEUR - {0} contenu modifié" #: src/pyams_content/root/zmi/__init__.py:283 -#: src/pyams_content/shared/common/zmi/dashboard.py:462 +#: src/pyams_content/shared/common/zmi/dashboard.py:461 msgid "My contents" msgstr "Mes contenus" #: src/pyams_content/root/zmi/__init__.py:298 #: src/pyams_content/root/zmi/templates/dashboard.pt:8 -#: src/pyams_content/shared/common/zmi/dashboard.py:477 +#: src/pyams_content/shared/common/zmi/dashboard.py:476 #: src/pyams_content/shared/common/zmi/templates/dashboard.pt:8 msgid "My favorites" msgstr "Mes favoris" #: src/pyams_content/root/zmi/__init__.py:307 -#: src/pyams_content/shared/common/zmi/dashboard.py:486 +#: src/pyams_content/shared/common/zmi/dashboard.py:485 #, python-format msgid "CONTRIBUTOR - {0} favorite" msgstr "CONTRIBUTEUR - {0} contenu favori" #: src/pyams_content/root/zmi/__init__.py:308 -#: src/pyams_content/shared/common/zmi/dashboard.py:487 +#: src/pyams_content/shared/common/zmi/dashboard.py:486 #, python-format msgid "CONTRIBUTOR - {0} favorites" msgstr "CONTRIBUTEUR - {0} contenus favoris" #: src/pyams_content/root/zmi/__init__.py:346 -#: src/pyams_content/shared/common/zmi/dashboard.py:562 +#: src/pyams_content/shared/common/zmi/dashboard.py:561 msgid "Your favorite contents" msgstr "Mes contenus favoris" #: src/pyams_content/root/zmi/__init__.py:359 -#: src/pyams_content/shared/common/zmi/dashboard.py:575 +#: src/pyams_content/shared/common/zmi/dashboard.py:574 msgid "My drafts" msgstr "Mes brouillons" #: src/pyams_content/root/zmi/__init__.py:368 -#: src/pyams_content/shared/common/zmi/dashboard.py:584 +#: src/pyams_content/shared/common/zmi/dashboard.py:583 #, python-format msgid "CONTRIBUTOR - {0} content in preparation" msgstr "CONTRIBUTEUR - {0} contenu en préparation" #: src/pyams_content/root/zmi/__init__.py:369 -#: src/pyams_content/shared/common/zmi/dashboard.py:585 +#: src/pyams_content/shared/common/zmi/dashboard.py:584 #, python-format msgid "CONTRIBUTOR - {0} contents in preparation" msgstr "CONTRIBUTEUR - {0} contenus en préparation" #: src/pyams_content/root/zmi/__init__.py:408 -#: src/pyams_content/shared/common/zmi/dashboard.py:626 +#: src/pyams_content/shared/common/zmi/dashboard.py:625 msgid "Your prepared contents" msgstr "Mes contenus en préparation" #: src/pyams_content/root/zmi/__init__.py:421 -#: src/pyams_content/shared/common/zmi/dashboard.py:639 +#: src/pyams_content/shared/common/zmi/dashboard.py:638 msgid "My submissions" msgstr "Mes demandes" #: src/pyams_content/root/zmi/__init__.py:430 -#: src/pyams_content/shared/common/zmi/dashboard.py:648 +#: src/pyams_content/shared/common/zmi/dashboard.py:647 #, python-format msgid "CONTRIBUTOR - {0} submitted content" msgstr "CONTRIBUTEUR - {0} contenu soumis à un responsable" #: src/pyams_content/root/zmi/__init__.py:431 -#: src/pyams_content/shared/common/zmi/dashboard.py:649 +#: src/pyams_content/shared/common/zmi/dashboard.py:648 #, python-format msgid "CONTRIBUTOR - {0} submitted contents" msgstr "CONTRIBUTEUR - {0} contenus soumis à un responsable" #: src/pyams_content/root/zmi/__init__.py:470 -#: src/pyams_content/shared/common/zmi/dashboard.py:690 +#: src/pyams_content/shared/common/zmi/dashboard.py:689 msgid "Your submitted contents" msgstr "Mes contenus soumis à un responsable" #: src/pyams_content/root/zmi/__init__.py:483 -#: src/pyams_content/shared/common/zmi/dashboard.py:703 +#: src/pyams_content/shared/common/zmi/dashboard.py:702 msgid "My publications" msgstr "Mes publications" #: src/pyams_content/root/zmi/__init__.py:492 -#: src/pyams_content/shared/common/zmi/dashboard.py:712 +#: src/pyams_content/shared/common/zmi/dashboard.py:711 #, python-format msgid "CONTRIBUTOR - {0} published content" msgstr "CONTRIBUTEUR - {0} contenu publié" #: src/pyams_content/root/zmi/__init__.py:493 -#: src/pyams_content/shared/common/zmi/dashboard.py:713 +#: src/pyams_content/shared/common/zmi/dashboard.py:712 #, python-format msgid "CONTRIBUTOR - {0} published contents" msgstr "CONTRIBUTEUR - {0} contenus publiés" #: src/pyams_content/root/zmi/__init__.py:532 -#: src/pyams_content/shared/common/zmi/dashboard.py:754 +#: src/pyams_content/shared/common/zmi/dashboard.py:753 msgid "Your published contents" msgstr "Mes contenus publiés" #: src/pyams_content/root/zmi/__init__.py:545 -#: src/pyams_content/shared/common/zmi/dashboard.py:767 +#: src/pyams_content/shared/common/zmi/dashboard.py:766 msgid "My retired contents" msgstr "Mes contenus retirés" #: src/pyams_content/root/zmi/__init__.py:554 -#: src/pyams_content/shared/common/zmi/dashboard.py:776 +#: src/pyams_content/shared/common/zmi/dashboard.py:775 #, python-format msgid "CONTRIBUTOR - {0} retired content" msgstr "CONTRIBUTEUR - {0} contenu retiré" #: src/pyams_content/root/zmi/__init__.py:555 -#: src/pyams_content/shared/common/zmi/dashboard.py:777 +#: src/pyams_content/shared/common/zmi/dashboard.py:776 #, python-format msgid "CONTRIBUTOR - {0} retired contents" msgstr "CONTRIBUTEUR - {0} contenus retirés" #: src/pyams_content/root/zmi/__init__.py:595 -#: src/pyams_content/shared/common/zmi/dashboard.py:818 +#: src/pyams_content/shared/common/zmi/dashboard.py:817 msgid "Your retired contents" msgstr "Mes contenus retirés" #: src/pyams_content/root/zmi/__init__.py:608 -#: src/pyams_content/shared/common/zmi/dashboard.py:831 +#: src/pyams_content/shared/common/zmi/dashboard.py:830 msgid "My archived contents" msgstr "Mes contenus archivés" #: src/pyams_content/root/zmi/__init__.py:617 -#: src/pyams_content/shared/common/zmi/dashboard.py:840 +#: src/pyams_content/shared/common/zmi/dashboard.py:839 #, python-format msgid "CONTRIBUTOR - {0} archived content" msgstr "CONTRIBUTEUR - {0} contenu archivé" #: src/pyams_content/root/zmi/__init__.py:618 -#: src/pyams_content/shared/common/zmi/dashboard.py:841 +#: src/pyams_content/shared/common/zmi/dashboard.py:840 #, python-format msgid "CONTRIBUTOR - {0} archived contents" msgstr "CONTRIBUTEUR - {0} contenus archivés" #: src/pyams_content/root/zmi/__init__.py:664 -#: src/pyams_content/shared/common/zmi/dashboard.py:888 +#: src/pyams_content/shared/common/zmi/dashboard.py:887 msgid "Your archived contents" msgstr "Mes contenus archivés" #: src/pyams_content/root/zmi/__init__.py:678 -#: src/pyams_content/shared/common/zmi/dashboard.py:902 +#: src/pyams_content/shared/common/zmi/dashboard.py:901 msgid "Other interventions" msgstr "Toutes les interventions" #: src/pyams_content/root/zmi/__init__.py:693 -#: src/pyams_content/shared/common/zmi/dashboard.py:917 +#: src/pyams_content/shared/common/zmi/dashboard.py:916 msgid "Last publications" msgstr "Dernières publications" #: src/pyams_content/root/zmi/__init__.py:702 -#: src/pyams_content/shared/common/zmi/dashboard.py:926 +#: src/pyams_content/shared/common/zmi/dashboard.py:925 #, python-format msgid "CONTRIBUTORS - {0} published content" msgstr "TOUS CONTRIBUTEURS - {0} contenu publié" #: src/pyams_content/root/zmi/__init__.py:748 -#: src/pyams_content/shared/common/zmi/dashboard.py:973 +#: src/pyams_content/shared/common/zmi/dashboard.py:972 msgid "Last published contents" msgstr "Derniers contenus publiés" #: src/pyams_content/root/zmi/__init__.py:761 -#: src/pyams_content/shared/common/zmi/dashboard.py:986 +#: src/pyams_content/shared/common/zmi/dashboard.py:985 msgid "Last updates" msgstr "Dernières modifications" #: src/pyams_content/root/zmi/__init__.py:770 -#: src/pyams_content/shared/common/zmi/dashboard.py:995 +#: src/pyams_content/shared/common/zmi/dashboard.py:994 #, python-format msgid "CONTRIBUTORS - {0} updated content" msgstr "TOUS CONTRIBUTEURS - {0} contenu modifié" #: src/pyams_content/root/zmi/__init__.py:814 -#: src/pyams_content/shared/common/zmi/dashboard.py:1040 +#: src/pyams_content/shared/common/zmi/dashboard.py:1039 msgid "Last updated contents" msgstr "Derniers contenus modifiés" @@ -3752,36 +3753,36 @@ msgstr "Contenu" #: src/pyams_content/root/zmi/__init__.py:245 -#: src/pyams_content/shared/common/zmi/dashboard.py:426 +#: src/pyams_content/shared/common/zmi/dashboard.py:425 #, python-format msgid "CONTRIBUTOR - {0} modified contents" msgstr "CONTRIBUTEUR - {0} contenus modifiés" #: src/pyams_content/root/zmi/__init__.py:247 -#: src/pyams_content/shared/common/zmi/dashboard.py:428 +#: src/pyams_content/shared/common/zmi/dashboard.py:427 #, python-format msgid "CONTRIBUTOR - Last {0} modified contents" msgstr "CONTRIBUTEUR - Les {0} dernières modifications" #: src/pyams_content/root/zmi/__init__.py:707 -#: src/pyams_content/shared/common/zmi/dashboard.py:931 +#: src/pyams_content/shared/common/zmi/dashboard.py:930 #, python-format msgid "CONTRIBUTORS - Last {0} published contents" msgstr "TOUS CONTRIBUTEURS - Les {0} dernières publications" #: src/pyams_content/root/zmi/__init__.py:709 -#: src/pyams_content/shared/common/zmi/dashboard.py:933 +#: src/pyams_content/shared/common/zmi/dashboard.py:932 msgid "CONTRIBUTORS - Last published contents (in the limit of 50)" msgstr "TOUS CONTRIBUTEURS - Les {0} dernières publications" #: src/pyams_content/root/zmi/__init__.py:775 -#: src/pyams_content/shared/common/zmi/dashboard.py:1000 +#: src/pyams_content/shared/common/zmi/dashboard.py:999 #, python-format msgid "CONTRIBUTORS - Last {0} updated contents" msgstr "TOUS CONTRIBUTEURS - Les {0} dernières modifications" #: src/pyams_content/root/zmi/__init__.py:777 -#: src/pyams_content/shared/common/zmi/dashboard.py:1002 +#: src/pyams_content/shared/common/zmi/dashboard.py:1001 msgid "CONTRIBUTORS - Last updated contents (in the limit of 50)" msgstr "TOUS CONTRIBUTEURS - Les {0} dernières modifications" @@ -3807,7 +3808,7 @@ msgstr "Types de contenus" #: src/pyams_content/root/zmi/search.py:162 -#: src/pyams_content/shared/common/zmi/dashboard.py:245 +#: src/pyams_content/shared/common/zmi/dashboard.py:244 #: src/pyams_content/shared/common/zmi/search.py:169 #: src/pyams_content/shared/common/zmi/types/updater.py:65 msgid "Owner" @@ -4021,248 +4022,303 @@ msgid "Resource « {title} »" msgstr "Ressource « {title} »" -#: src/pyams_content/shared/form/field.py:144 +#: src/pyams_content/shared/form/field.py:147 msgid "Text" msgstr "Texte simple" -#: src/pyams_content/shared/form/field.py:154 +#: src/pyams_content/shared/form/field.py:157 msgid "Multi-lines text" msgstr "Texte multi-lignes" -#: src/pyams_content/shared/form/field.py:164 +#: src/pyams_content/shared/form/field.py:167 msgid "Boolean" msgstr "Booléen" -#: src/pyams_content/shared/form/field.py:174 +#: src/pyams_content/shared/form/field.py:177 msgid "Integer" msgstr "Nombre entier" -#: src/pyams_content/shared/form/field.py:184 +#: src/pyams_content/shared/form/field.py:187 msgid "Decimal" msgstr "Nombre décimal" -#: src/pyams_content/shared/form/field.py:194 +#: src/pyams_content/shared/form/field.py:197 +msgid "Date" +msgstr "Date" + +#: src/pyams_content/shared/form/field.py:217 msgid "E-mail address" msgstr "Adresse de messagerie" -#: src/pyams_content/shared/form/field.py:204 +#: src/pyams_content/shared/form/field.py:227 msgid "URI" msgstr "URI" -#: src/pyams_content/shared/form/field.py:214 -msgid "Date" -msgstr "Date" - -#: src/pyams_content/shared/form/field.py:228 +#: src/pyams_content/shared/form/field.py:241 msgid "Choice" msgstr "Choix unique dans une liste" -#: src/pyams_content/shared/form/field.py:248 +#: src/pyams_content/shared/form/field.py:261 msgid "List" msgstr "Choix multiples dans une liste" #: src/pyams_content/shared/form/handler.py:75 -msgid "Mailto form handler" -msgstr "Envoi des données par mail" +msgid "Direct mailto form handler" +msgstr "Envoi direct des données par mail" #: src/pyams_content/shared/form/handler.py:39 msgid "No selected handler..." msgstr "Aucun gestionnaire sélectionné" -#: src/pyams_content/shared/form/__init__.py:98 +#: src/pyams_content/shared/form/__init__.py:100 msgid "Form fields" msgstr "Champs de saisie" -#: src/pyams_content/shared/form/__init__.py:99 +#: src/pyams_content/shared/form/__init__.py:101 msgid "no field defined" msgstr "aucun champ défini" -#: src/pyams_content/shared/form/interfaces.py:33 +#: src/pyams_content/shared/form/interfaces.py:31 msgid "Form" msgstr "Formulaire" -#: src/pyams_content/shared/form/interfaces.py:51 +#: src/pyams_content/shared/form/interfaces.py:49 msgid "Field name" msgstr "Nom du champ" -#: src/pyams_content/shared/form/interfaces.py:52 +#: src/pyams_content/shared/form/interfaces.py:50 msgid "Field internal name; must be unique for a given form" msgstr "" "Nom interne du champ ; ce nom doit être unique pour un formulaire donné" -#: src/pyams_content/shared/form/interfaces.py:55 -#: src/pyams_content/shared/form/zmi/field.py:178 +#: src/pyams_content/shared/form/interfaces.py:53 +#: src/pyams_content/shared/form/zmi/field.py:177 msgid "Field type" msgstr "Type de champ" -#: src/pyams_content/shared/form/interfaces.py:56 +#: src/pyams_content/shared/form/interfaces.py:54 msgid "Selected field type" msgstr "Type de champ proposé à l'internaute" -#: src/pyams_content/shared/form/interfaces.py:61 +#: src/pyams_content/shared/form/interfaces.py:59 msgid "User field label" msgstr "Libellé affiché à l'internaute" -#: src/pyams_content/shared/form/interfaces.py:65 +#: src/pyams_content/shared/form/interfaces.py:63 msgid "Field description can be displayed as hint" msgstr "" "Description du champ, qui pourra être affichée sous la forme d'une info-bulle" -#: src/pyams_content/shared/form/interfaces.py:68 +#: src/pyams_content/shared/form/interfaces.py:66 msgid "Placeholder" msgstr "Espace réservé" -#: src/pyams_content/shared/form/interfaces.py:69 +#: src/pyams_content/shared/form/interfaces.py:67 msgid "Some field types like textline can display a placeholder" msgstr "" "Certains champs tels que les zones de texte peuvent afficher ce texte tant " "qu'aucune valeur n'y a été saisie" -#: src/pyams_content/shared/form/interfaces.py:72 +#: src/pyams_content/shared/form/interfaces.py:70 msgid "Optional values" msgstr "Liste de valeurs" -#: src/pyams_content/shared/form/interfaces.py:73 +#: src/pyams_content/shared/form/interfaces.py:71 msgid "List of available values (for 'choice' and 'list' field types)" msgstr "" "Liste des valeurs disponibles (pour les champs de types 'Sélection simple' " "ou 'Sélection multiple')" -#: src/pyams_content/shared/form/interfaces.py:76 +#: src/pyams_content/shared/form/interfaces.py:74 msgid "Default value" msgstr "Valeur par défaut" -#: src/pyams_content/shared/form/interfaces.py:77 +#: src/pyams_content/shared/form/interfaces.py:75 msgid "Give default value if field type can use it" msgstr "" "Donner la valeur par défaut du champ ; attention, tous les types de champs " "ne peuvent pas utiliser une valeur par défaut !" -#: src/pyams_content/shared/form/interfaces.py:80 +#: src/pyams_content/shared/form/interfaces.py:78 msgid "Required?" msgstr "Obligatoire ?" -#: src/pyams_content/shared/form/interfaces.py:81 +#: src/pyams_content/shared/form/interfaces.py:79 msgid "Select 'yes' to set field as mandatory" msgstr "Sélectionnez 'oui' pour que la saisie de ce champ soit obligatoire" -#: src/pyams_content/shared/form/interfaces.py:86 +#: src/pyams_content/shared/form/interfaces.py:84 msgid "Select 'no' to hide given field..." msgstr "Sélectionnez 'non' pour masquer ce champ" -#: src/pyams_content/shared/form/interfaces.py:120 +#: src/pyams_content/shared/form/interfaces.py:121 msgid "Form title" msgstr "Titre du formulaire" -#: src/pyams_content/shared/form/interfaces.py:123 -msgid "Form handler" -msgstr "Gestionnaire du formulaire" - #: src/pyams_content/shared/form/interfaces.py:124 -msgid "Select how form data is transmitted" -msgstr "" -"Le gestionnaire sélectionné détermine la façon dont les données saisies par " -"les internautes seront stockées ou envoyées" - -#: src/pyams_content/shared/form/interfaces.py:127 msgid "Authenticated only?" msgstr "Authentification requise ?" -#: src/pyams_content/shared/form/interfaces.py:128 +#: src/pyams_content/shared/form/interfaces.py:125 msgid "If 'yes', only authenticated users will be able to see and submit form" msgstr "" "Si 'oui', seuls les utilisateurs authentifiés pourront saisir des données " "dans le formulaire et les soumettre" -#: src/pyams_content/shared/form/interfaces.py:132 -msgid "Use captcha?" -msgstr "Ajouter un captcha ?" +#: src/pyams_content/shared/form/interfaces.py:129 +msgid "Form header" +msgstr "En-tête du formulaire" + +#: src/pyams_content/shared/form/interfaces.py:130 +msgid "This header is displayed just above form fields" +msgstr "Cet en-tête sera affiché au-dessus de la liste des champs de saisie" #: src/pyams_content/shared/form/interfaces.py:133 -msgid "If 'yes', a captcha will be added automatically to the form" -msgstr "Si 'oui', un captcha sera ajouté automatiquement au formulaire" +msgid "Submit button" +msgstr "Libellé de soumission" + +#: src/pyams_content/shared/form/interfaces.py:134 +msgid "Label of form submit button" +msgstr "Libellé du bouton de soumission du formulaire" #: src/pyams_content/shared/form/interfaces.py:137 -msgid "Submit label" -msgstr "Libellé de soumission" +msgid "Submit message" +msgstr "Message de soumission" #: src/pyams_content/shared/form/interfaces.py:138 -msgid "Label of form submit button" -msgstr "Libellé du bouton de soumission du formulaire" - -#: src/pyams_content/shared/form/interfaces.py:175 +msgid "This message will be displayed after form submission" +msgstr "Ce message sera affiché à l'internaute lorsque les données du formulaire auront été soumises" + +#: src/pyams_content/shared/form/interfaces.py:141 +msgid "Form handler" +msgstr "Gestionnaire du formulaire" + +#: src/pyams_content/shared/form/interfaces.py:142 +msgid "Select how form data is transmitted" +msgstr "" +"Le gestionnaire sélectionné détermine la façon dont les données saisies par " +"les internautes seront stockées ou envoyées" + +#: src/pyams_content/shared/form/interfaces.py:145 +msgid "Use captcha?" +msgstr "Ajouter un captcha ?" + +#: src/pyams_content/shared/form/interfaces.py:146 +msgid "If 'yes', a captcha will be added automatically to the form" +msgstr "Si 'oui', un captcha sera ajouté automatiquement au formulaire" + +#: src/pyams_content/shared/form/interfaces.py:150 +msgid "Site key" +msgstr "Clé du site" + +#: src/pyams_content/shared/form/interfaces.py:151 +msgid "This key is included into HTML code and submitted with form data" +msgstr "" +"Cette clé est intégrée dans le code HTML et soumise avec les autres données " +"du formulaire" + +#: src/pyams_content/shared/form/interfaces.py:154 +msgid "Secret key" +msgstr "Clé secrète" + +#: src/pyams_content/shared/form/interfaces.py:155 +msgid "This key is used to communicate with Google's reCaptcha services" +msgstr "Cette clé est utilisée avec le service reCaptcha de Google" + +#: src/pyams_content/shared/form/interfaces.py:158 +msgid "Recaptcha proxy" +msgstr "Proxy HTTPS" + +#: src/pyams_content/shared/form/interfaces.py:159 +msgid "" +"If your server is behind a proxy, please set it's address here; captcha " +"verification requires HTTPS support..." +msgstr "" +"Si le serveur qui reçoit les données du formulaire est situé derrière un proxy, vous devez l'indiquer ici " +"pour permettre la vérification du captcha" + +#: src/pyams_content/shared/form/interfaces.py:197 msgid "Source address" msgstr "Adresse source" -#: src/pyams_content/shared/form/interfaces.py:176 +#: src/pyams_content/shared/form/interfaces.py:198 msgid "Mail address from which form data is sent" -msgstr "Adresse de messagerie émettrice des données" - -#: src/pyams_content/shared/form/interfaces.py:179 +msgstr "Adresse de messagerie émettrice des messages envoyés" + +#: src/pyams_content/shared/form/interfaces.py:201 msgid "Source name" msgstr "Nom de la source" -#: src/pyams_content/shared/form/interfaces.py:180 +#: src/pyams_content/shared/form/interfaces.py:202 msgid "Name of mail data sender" -msgstr "Nom de l'émetteur des données" - -#: src/pyams_content/shared/form/interfaces.py:183 +msgstr "Nom de l'émetteur des messages envoyés" + +#: src/pyams_content/shared/form/interfaces.py:205 msgid "Recipient address" msgstr "Adresse de destination" -#: src/pyams_content/shared/form/interfaces.py:184 +#: src/pyams_content/shared/form/interfaces.py:206 msgid "Mail address to which form data is sent" msgstr "" "Adresse d'envoi des données; vous pouvez indiquer plusieurs adresses en les " "séparant par des point-virgules" -#: src/pyams_content/shared/form/interfaces.py:187 +#: src/pyams_content/shared/form/interfaces.py:209 msgid "Recipient name" msgstr "Nom du destinataire" -#: src/pyams_content/shared/form/interfaces.py:188 +#: src/pyams_content/shared/form/interfaces.py:210 msgid "Name of data recipient" msgstr "Nom du destinataire des messages" -#: src/pyams_content/shared/form/zmi/properties.py:41 +#: src/pyams_content/shared/form/zmi/properties.py:39 msgid "Main form settings" msgstr "Paramètres du formulaire" -#: src/pyams_content/shared/form/zmi/properties.py:65 +#: src/pyams_content/shared/form/zmi/properties.py:96 msgid "Form handler settings" msgstr "Paramètres du gestionnaire" -#: src/pyams_content/shared/form/zmi/field.py:69 +#: src/pyams_content/shared/form/zmi/properties.py:56 +msgid "Add captcha" +msgstr "Intégrer un captcha" + +#: src/pyams_content/shared/form/zmi/properties.py:94 +#, python-format +msgid "« {handler} » form handler settings" +msgstr "Paramètres du gestionnaire « {handler} »" + +#: src/pyams_content/shared/form/zmi/field.py:67 msgid "Form fields..." msgstr "Champs de saisie" -#: src/pyams_content/shared/form/zmi/field.py:156 +#: src/pyams_content/shared/form/zmi/field.py:155 #: src/pyams_content/shared/common/interfaces/types.py:39 msgid "Name" msgstr "Nom" -#: src/pyams_content/shared/form/zmi/field.py:211 +#: src/pyams_content/shared/form/zmi/field.py:210 msgid "Form fields list" msgstr "Liste des champs du formulaire" -#: src/pyams_content/shared/form/zmi/field.py:234 -#: src/pyams_content/shared/form/zmi/field.py:247 +#: src/pyams_content/shared/form/zmi/field.py:233 +#: src/pyams_content/shared/form/zmi/field.py:246 msgid "Add form field" msgstr "Ajouter un champ" -#: src/pyams_content/shared/form/zmi/field.py:285 +#: src/pyams_content/shared/form/zmi/field.py:284 msgid "Edit form field properties" msgstr "Propriétés du champ" -#: src/pyams_content/shared/form/zmi/field.py:187 +#: src/pyams_content/shared/form/zmi/field.py:186 msgid "-- unknown field type --" msgstr "-- type de champ inconnu --" -#: src/pyams_content/shared/form/zmi/field.py:122 +#: src/pyams_content/shared/form/zmi/field.py:121 msgid "No currently defined form field." msgstr "Ce formulaire ne comporte aucun champ." -#: src/pyams_content/shared/form/zmi/field.py:269 +#: src/pyams_content/shared/form/zmi/field.py:268 msgid "Specified name is already used!" msgstr "Le nom indiqué pour ce champ est déjà utilisé !" @@ -4812,19 +4868,19 @@ msgid "Blog post « {title} »" msgstr "Article « {title} »" -#: src/pyams_content/shared/common/__init__.py:266 +#: src/pyams_content/shared/common/__init__.py:268 #: src/pyams_content/shared/common/zmi/properties.py:65 #: src/pyams_content/shared/common/zmi/manager.py:96 msgid "Properties" msgstr "Propriétés" -#: src/pyams_content/shared/common/__init__.py:176 -#: src/pyams_content/shared/common/__init__.py:184 +#: src/pyams_content/shared/common/__init__.py:178 +#: src/pyams_content/shared/common/__init__.py:186 #, python-format msgid "{date} by {principal}" msgstr "{date} par {principal}" -#: src/pyams_content/shared/common/__init__.py:289 +#: src/pyams_content/shared/common/__init__.py:291 #, python-format msgid "title length should be between 40 and 66 characters ({length} actually)" msgstr "" @@ -5207,7 +5263,7 @@ msgstr "depuis {date}" #: src/pyams_content/shared/common/zmi/header.py:91 -#: src/pyams_content/shared/common/zmi/dashboard.py:185 +#: src/pyams_content/shared/common/zmi/dashboard.py:184 msgid "Content publication start date is not passed yet" msgstr "La date de début de publication n'est pas encore atteinte" @@ -5272,46 +5328,46 @@ msgid "Tool management" msgstr "Gérer cet outil" -#: src/pyams_content/shared/common/zmi/dashboard.py:106 +#: src/pyams_content/shared/common/zmi/dashboard.py:105 msgid "Type" msgstr "Type" -#: src/pyams_content/shared/common/zmi/dashboard.py:148 +#: src/pyams_content/shared/common/zmi/dashboard.py:147 msgid "Unique ID" msgstr "N° IN" -#: src/pyams_content/shared/common/zmi/dashboard.py:168 +#: src/pyams_content/shared/common/zmi/dashboard.py:167 #: src/pyams_content/shared/common/zmi/search.py:172 msgid "Status" msgstr "Statut" -#: src/pyams_content/shared/common/zmi/dashboard.py:195 +#: src/pyams_content/shared/common/zmi/dashboard.py:194 msgid "Status date" msgstr "En date du" -#: src/pyams_content/shared/common/zmi/dashboard.py:212 +#: src/pyams_content/shared/common/zmi/dashboard.py:211 #: src/pyams_content/shared/common/zmi/summary.py:167 msgid "Version" msgstr "Version" -#: src/pyams_content/shared/common/zmi/dashboard.py:227 +#: src/pyams_content/shared/common/zmi/dashboard.py:226 msgid "Status principal" msgstr "Intervenant" -#: src/pyams_content/shared/common/zmi/dashboard.py:267 +#: src/pyams_content/shared/common/zmi/dashboard.py:266 msgid "Last modification" msgstr "Dernière modification" -#: src/pyams_content/shared/common/zmi/dashboard.py:300 +#: src/pyams_content/shared/common/zmi/dashboard.py:299 msgid "Contents dashboard" msgstr "Mon tableau de bord" -#: src/pyams_content/shared/common/zmi/dashboard.py:499 +#: src/pyams_content/shared/common/zmi/dashboard.py:498 #: src/pyams_content/shared/common/zmi/templates/header.pt:26 msgid "Add/remove from favorites" msgstr "Ajouter/enlever des favoris" -#: src/pyams_content/shared/common/zmi/dashboard.py:323 +#: src/pyams_content/shared/common/zmi/dashboard.py:322 #, python-format msgid "SEARCH - Between all contents of type « {type} »" msgstr "RECHERCHE - Tous contenus « {type} » confondus" @@ -7511,9 +7567,6 @@ #~ msgid "Display current version date" #~ msgstr "Date de publication de cette version" -#~ msgid "The matching date will be displayed in front-office" -#~ msgstr "La date correspondante sera affichée en front-office" - #~ msgid "Push end date" #~ msgstr "Pousser jusqu'au"
--- a/src/pyams_content/locales/pyams_content.pot Fri Jul 26 13:04:54 2019 +0200 +++ b/src/pyams_content/locales/pyams_content.pot Fri Jul 26 19:23:33 2019 +0200 @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE 1.0\n" -"POT-Creation-Date: 2019-06-28 18:06+0200\n" +"POT-Creation-Date: 2019-07-26 12:53+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -197,7 +197,7 @@ #: ./src/pyams_content/features/search/portlet/interfaces.py:25 #: ./src/pyams_content/root/zmi/templates/advanced-search.pt:197 #: ./src/pyams_content/shared/view/portlet/interfaces.py:52 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:123 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:122 #: ./src/pyams_content/shared/common/zmi/reverse.py:73 #: ./src/pyams_content/shared/common/zmi/templates/advanced-search.pt:200 #: ./src/pyams_content/shared/site/portlet/interfaces.py:24 @@ -234,7 +234,7 @@ #: ./src/pyams_content/component/association/interfaces.py:37 #: ./src/pyams_content/features/alert/interfaces.py:54 #: ./src/pyams_content/features/menu/interfaces.py:62 -#: ./src/pyams_content/shared/form/interfaces.py:85 +#: ./src/pyams_content/shared/form/interfaces.py:83 #: ./src/pyams_content/shared/site/interfaces.py:179 msgid "Visible?" msgstr "" @@ -460,7 +460,7 @@ #: ./src/pyams_content/component/paragraph/interfaces/audio.py:50 #: ./src/pyams_content/component/extfile/interfaces.py:36 #: ./src/pyams_content/features/search/interfaces.py:45 -#: ./src/pyams_content/shared/form/interfaces.py:64 +#: ./src/pyams_content/shared/form/interfaces.py:62 msgid "Description" msgstr "" @@ -1062,6 +1062,7 @@ msgstr "" #: ./src/pyams_content/component/paragraph/interfaces/contact.py:69 +#: ./src/pyams_content/shared/form/field.py:207 msgid "Phone number" msgstr "" @@ -2184,9 +2185,9 @@ #: ./src/pyams_content/features/share/interfaces.py:62 #: ./src/pyams_content/features/share/zmi/container.py:155 -#: ./src/pyams_content/features/menu/zmi/__init__.py:218 -#: ./src/pyams_content/shared/form/interfaces.py:60 -#: ./src/pyams_content/shared/form/zmi/field.py:167 +#: ./src/pyams_content/features/menu/zmi/__init__.py:217 +#: ./src/pyams_content/shared/form/interfaces.py:58 +#: ./src/pyams_content/shared/form/zmi/field.py:166 #: ./src/pyams_content/shared/common/interfaces/types.py:43 msgid "Label" msgstr "" @@ -2875,27 +2876,27 @@ msgid "Link has no illustration" msgstr "" -#: ./src/pyams_content/features/menu/zmi/__init__.py:80 +#: ./src/pyams_content/features/menu/zmi/__init__.py:83 msgid "Add menu..." msgstr "" -#: ./src/pyams_content/features/menu/zmi/__init__.py:91 +#: ./src/pyams_content/features/menu/zmi/__init__.py:94 msgid "Add new menu" msgstr "" -#: ./src/pyams_content/features/menu/zmi/__init__.py:124 +#: ./src/pyams_content/features/menu/zmi/__init__.py:127 msgid "Edit menu properties" msgstr "" -#: ./src/pyams_content/features/menu/zmi/__init__.py:230 +#: ./src/pyams_content/features/menu/zmi/__init__.py:229 msgid "Inner content" msgstr "" -#: ./src/pyams_content/features/menu/zmi/__init__.py:111 +#: ./src/pyams_content/features/menu/zmi/__init__.py:114 msgid "Menu was correctly added." msgstr "" -#: ./src/pyams_content/features/menu/zmi/__init__.py:415 +#: ./src/pyams_content/features/menu/zmi/__init__.py:419 msgid "Link was correctly added." msgstr "" @@ -3264,213 +3265,213 @@ msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:110 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:290 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:289 msgid "Dashboard" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:159 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:346 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:345 #, python-format msgid "MANAGER - {0} content waiting for your action" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:160 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:347 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:346 #, python-format msgid "MANAGER - {0} contents waiting for your action" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:204 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:388 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:387 #, python-format msgid "CONTRIBUTOR - {0} content waiting for action" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:205 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:389 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:388 #, python-format msgid "CONTRIBUTOR - {0} contents waiting for action" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:240 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:421 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:420 #, python-format msgid "CONTRIBUTOR - {0} modified content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:283 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:462 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:461 msgid "My contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:298 #: ./src/pyams_content/root/zmi/templates/dashboard.pt:8 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:477 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:476 #: ./src/pyams_content/shared/common/zmi/templates/dashboard.pt:8 msgid "My favorites" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:307 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:486 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:485 #, python-format msgid "CONTRIBUTOR - {0} favorite" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:308 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:487 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:486 #, python-format msgid "CONTRIBUTOR - {0} favorites" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:346 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:562 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:561 msgid "Your favorite contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:359 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:575 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:574 msgid "My drafts" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:368 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:584 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:583 #, python-format msgid "CONTRIBUTOR - {0} content in preparation" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:369 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:585 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:584 #, python-format msgid "CONTRIBUTOR - {0} contents in preparation" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:408 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:626 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:625 msgid "Your prepared contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:421 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:639 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:638 msgid "My submissions" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:430 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:648 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:647 #, python-format msgid "CONTRIBUTOR - {0} submitted content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:431 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:649 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:648 #, python-format msgid "CONTRIBUTOR - {0} submitted contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:470 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:690 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:689 msgid "Your submitted contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:483 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:703 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:702 msgid "My publications" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:492 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:712 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:711 #, python-format msgid "CONTRIBUTOR - {0} published content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:493 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:713 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:712 #, python-format msgid "CONTRIBUTOR - {0} published contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:532 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:754 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:753 msgid "Your published contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:545 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:767 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:766 msgid "My retired contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:554 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:776 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:775 #, python-format msgid "CONTRIBUTOR - {0} retired content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:555 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:777 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:776 #, python-format msgid "CONTRIBUTOR - {0} retired contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:595 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:818 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:817 msgid "Your retired contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:608 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:831 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:830 msgid "My archived contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:617 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:840 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:839 #, python-format msgid "CONTRIBUTOR - {0} archived content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:618 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:841 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:840 #, python-format msgid "CONTRIBUTOR - {0} archived contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:664 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:888 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:887 msgid "Your archived contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:678 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:902 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:901 msgid "Other interventions" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:693 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:917 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:916 msgid "Last publications" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:702 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:926 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:925 #, python-format msgid "CONTRIBUTORS - {0} published content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:748 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:973 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:972 msgid "Last published contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:761 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:986 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:985 msgid "Last updates" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:770 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:995 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:994 #, python-format msgid "CONTRIBUTORS - {0} updated content" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:814 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:1040 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:1039 msgid "Last updated contents" msgstr "" @@ -3480,36 +3481,36 @@ msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:245 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:426 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:425 #, python-format msgid "CONTRIBUTOR - {0} modified contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:247 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:428 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:427 #, python-format msgid "CONTRIBUTOR - Last {0} modified contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:707 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:931 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:930 #, python-format msgid "CONTRIBUTORS - Last {0} published contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:709 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:933 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:932 msgid "CONTRIBUTORS - Last published contents (in the limit of 50)" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:775 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:1000 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:999 #, python-format msgid "CONTRIBUTORS - Last {0} updated contents" msgstr "" #: ./src/pyams_content/root/zmi/__init__.py:777 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:1002 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:1001 msgid "CONTRIBUTORS - Last updated contents (in the limit of 50)" msgstr "" @@ -3535,7 +3536,7 @@ msgstr "" #: ./src/pyams_content/root/zmi/search.py:162 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:245 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:244 #: ./src/pyams_content/shared/common/zmi/search.py:169 #: ./src/pyams_content/shared/common/zmi/types/updater.py:65 msgid "Owner" @@ -3748,234 +3749,285 @@ msgid "Resource « {title} »" msgstr "" -#: ./src/pyams_content/shared/form/field.py:144 +#: ./src/pyams_content/shared/form/field.py:147 msgid "Text" msgstr "" -#: ./src/pyams_content/shared/form/field.py:154 +#: ./src/pyams_content/shared/form/field.py:157 msgid "Multi-lines text" msgstr "" -#: ./src/pyams_content/shared/form/field.py:164 +#: ./src/pyams_content/shared/form/field.py:167 msgid "Boolean" msgstr "" -#: ./src/pyams_content/shared/form/field.py:174 +#: ./src/pyams_content/shared/form/field.py:177 msgid "Integer" msgstr "" -#: ./src/pyams_content/shared/form/field.py:184 +#: ./src/pyams_content/shared/form/field.py:187 msgid "Decimal" msgstr "" -#: ./src/pyams_content/shared/form/field.py:194 +#: ./src/pyams_content/shared/form/field.py:197 +msgid "Date" +msgstr "" + +#: ./src/pyams_content/shared/form/field.py:217 msgid "E-mail address" msgstr "" -#: ./src/pyams_content/shared/form/field.py:204 +#: ./src/pyams_content/shared/form/field.py:227 msgid "URI" msgstr "" -#: ./src/pyams_content/shared/form/field.py:214 -msgid "Date" -msgstr "" - -#: ./src/pyams_content/shared/form/field.py:228 +#: ./src/pyams_content/shared/form/field.py:241 msgid "Choice" msgstr "" -#: ./src/pyams_content/shared/form/field.py:248 +#: ./src/pyams_content/shared/form/field.py:261 msgid "List" msgstr "" #: ./src/pyams_content/shared/form/handler.py:75 -msgid "Mailto form handler" +msgid "Direct mailto form handler" msgstr "" #: ./src/pyams_content/shared/form/handler.py:39 msgid "No selected handler..." msgstr "" -#: ./src/pyams_content/shared/form/__init__.py:98 +#: ./src/pyams_content/shared/form/__init__.py:100 msgid "Form fields" msgstr "" -#: ./src/pyams_content/shared/form/__init__.py:99 +#: ./src/pyams_content/shared/form/__init__.py:101 msgid "no field defined" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:33 +#: ./src/pyams_content/shared/form/interfaces.py:31 msgid "Form" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:51 +#: ./src/pyams_content/shared/form/interfaces.py:49 msgid "Field name" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:52 +#: ./src/pyams_content/shared/form/interfaces.py:50 msgid "Field internal name; must be unique for a given form" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:55 -#: ./src/pyams_content/shared/form/zmi/field.py:178 +#: ./src/pyams_content/shared/form/interfaces.py:53 +#: ./src/pyams_content/shared/form/zmi/field.py:177 msgid "Field type" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:56 +#: ./src/pyams_content/shared/form/interfaces.py:54 msgid "Selected field type" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:61 +#: ./src/pyams_content/shared/form/interfaces.py:59 msgid "User field label" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:65 +#: ./src/pyams_content/shared/form/interfaces.py:63 msgid "Field description can be displayed as hint" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:68 +#: ./src/pyams_content/shared/form/interfaces.py:66 msgid "Placeholder" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:69 +#: ./src/pyams_content/shared/form/interfaces.py:67 msgid "Some field types like textline can display a placeholder" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:72 +#: ./src/pyams_content/shared/form/interfaces.py:70 msgid "Optional values" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:73 +#: ./src/pyams_content/shared/form/interfaces.py:71 msgid "List of available values (for 'choice' and 'list' field types)" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:76 +#: ./src/pyams_content/shared/form/interfaces.py:74 msgid "Default value" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:77 +#: ./src/pyams_content/shared/form/interfaces.py:75 msgid "Give default value if field type can use it" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:80 +#: ./src/pyams_content/shared/form/interfaces.py:78 msgid "Required?" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:81 +#: ./src/pyams_content/shared/form/interfaces.py:79 msgid "Select 'yes' to set field as mandatory" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:86 +#: ./src/pyams_content/shared/form/interfaces.py:84 msgid "Select 'no' to hide given field..." msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:120 +#: ./src/pyams_content/shared/form/interfaces.py:121 msgid "Form title" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:123 -msgid "Form handler" -msgstr "" - #: ./src/pyams_content/shared/form/interfaces.py:124 -msgid "Select how form data is transmitted" -msgstr "" - -#: ./src/pyams_content/shared/form/interfaces.py:127 msgid "Authenticated only?" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:128 +#: ./src/pyams_content/shared/form/interfaces.py:125 msgid "If 'yes', only authenticated users will be able to see and submit form" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:132 -msgid "Use captcha?" +#: ./src/pyams_content/shared/form/interfaces.py:129 +msgid "Form header" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:130 +msgid "This header is displayed just above form fields" msgstr "" #: ./src/pyams_content/shared/form/interfaces.py:133 -msgid "If 'yes', a captcha will be added automatically to the form" +msgid "Submit button" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:134 +msgid "Label of form submit button" msgstr "" #: ./src/pyams_content/shared/form/interfaces.py:137 -msgid "Submit label" +msgid "Submit message" msgstr "" #: ./src/pyams_content/shared/form/interfaces.py:138 -msgid "Label of form submit button" -msgstr "" - -#: ./src/pyams_content/shared/form/interfaces.py:175 +msgid "This message will be displayed after form submission" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:141 +msgid "Form handler" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:142 +msgid "Select how form data is transmitted" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:145 +msgid "Use captcha?" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:146 +msgid "If 'yes', a captcha will be added automatically to the form" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:150 +msgid "Site key" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:151 +msgid "This key is included into HTML code and submitted with form data" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:154 +msgid "Secret key" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:155 +msgid "This key is used to communicate with Google's reCaptcha services" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:158 +msgid "Recaptcha proxy" +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:159 +msgid "" +"If your server is behind a proxy, please set it's address here; captcha " +"verification requires HTTPS support..." +msgstr "" + +#: ./src/pyams_content/shared/form/interfaces.py:197 msgid "Source address" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:176 +#: ./src/pyams_content/shared/form/interfaces.py:198 msgid "Mail address from which form data is sent" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:179 +#: ./src/pyams_content/shared/form/interfaces.py:201 msgid "Source name" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:180 +#: ./src/pyams_content/shared/form/interfaces.py:202 msgid "Name of mail data sender" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:183 +#: ./src/pyams_content/shared/form/interfaces.py:205 msgid "Recipient address" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:184 +#: ./src/pyams_content/shared/form/interfaces.py:206 msgid "Mail address to which form data is sent" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:187 +#: ./src/pyams_content/shared/form/interfaces.py:209 msgid "Recipient name" msgstr "" -#: ./src/pyams_content/shared/form/interfaces.py:188 +#: ./src/pyams_content/shared/form/interfaces.py:210 msgid "Name of data recipient" msgstr "" -#: ./src/pyams_content/shared/form/zmi/properties.py:41 +#: ./src/pyams_content/shared/form/zmi/properties.py:39 msgid "Main form settings" msgstr "" -#: ./src/pyams_content/shared/form/zmi/properties.py:65 +#: ./src/pyams_content/shared/form/zmi/properties.py:96 msgid "Form handler settings" msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:69 +#: ./src/pyams_content/shared/form/zmi/properties.py:56 +msgid "Add captcha" +msgstr "" + +#: ./src/pyams_content/shared/form/zmi/properties.py:94 +#, python-format +msgid "« {handler} » form handler settings" +msgstr "" + +#: ./src/pyams_content/shared/form/zmi/field.py:67 msgid "Form fields..." msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:156 +#: ./src/pyams_content/shared/form/zmi/field.py:155 #: ./src/pyams_content/shared/common/interfaces/types.py:39 msgid "Name" msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:211 +#: ./src/pyams_content/shared/form/zmi/field.py:210 msgid "Form fields list" msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:234 -#: ./src/pyams_content/shared/form/zmi/field.py:247 +#: ./src/pyams_content/shared/form/zmi/field.py:233 +#: ./src/pyams_content/shared/form/zmi/field.py:246 msgid "Add form field" msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:285 +#: ./src/pyams_content/shared/form/zmi/field.py:284 msgid "Edit form field properties" msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:187 +#: ./src/pyams_content/shared/form/zmi/field.py:186 msgid "-- unknown field type --" msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:122 +#: ./src/pyams_content/shared/form/zmi/field.py:121 msgid "No currently defined form field." msgstr "" -#: ./src/pyams_content/shared/form/zmi/field.py:269 +#: ./src/pyams_content/shared/form/zmi/field.py:268 msgid "Specified name is already used!" msgstr "" @@ -4441,19 +4493,19 @@ msgid "Blog post « {title} »" msgstr "" -#: ./src/pyams_content/shared/common/__init__.py:266 +#: ./src/pyams_content/shared/common/__init__.py:268 #: ./src/pyams_content/shared/common/zmi/properties.py:65 #: ./src/pyams_content/shared/common/zmi/manager.py:96 msgid "Properties" msgstr "" -#: ./src/pyams_content/shared/common/__init__.py:176 -#: ./src/pyams_content/shared/common/__init__.py:184 +#: ./src/pyams_content/shared/common/__init__.py:178 +#: ./src/pyams_content/shared/common/__init__.py:186 #, python-format msgid "{date} by {principal}" msgstr "" -#: ./src/pyams_content/shared/common/__init__.py:289 +#: ./src/pyams_content/shared/common/__init__.py:291 #, python-format msgid "title length should be between 40 and 66 characters ({length} actually)" msgstr "" @@ -4781,7 +4833,7 @@ msgstr "" #: ./src/pyams_content/shared/common/zmi/header.py:91 -#: ./src/pyams_content/shared/common/zmi/dashboard.py:185 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:184 msgid "Content publication start date is not passed yet" msgstr "" @@ -4841,46 +4893,46 @@ msgid "Tool management" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:106 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:105 msgid "Type" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:148 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:147 msgid "Unique ID" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:168 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:167 #: ./src/pyams_content/shared/common/zmi/search.py:172 msgid "Status" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:195 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:194 msgid "Status date" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:212 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:211 #: ./src/pyams_content/shared/common/zmi/summary.py:167 msgid "Version" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:227 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:226 msgid "Status principal" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:267 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:266 msgid "Last modification" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:300 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:299 msgid "Contents dashboard" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:499 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:498 #: ./src/pyams_content/shared/common/zmi/templates/header.pt:26 msgid "Add/remove from favorites" msgstr "" -#: ./src/pyams_content/shared/common/zmi/dashboard.py:323 +#: ./src/pyams_content/shared/common/zmi/dashboard.py:322 #, python-format msgid "SEARCH - Between all contents of type « {type} »" msgstr ""
--- a/src/pyams_content/zmi/resources/js/pyams_content.js Fri Jul 26 13:04:54 2019 +0200 +++ b/src/pyams_content/zmi/resources/js/pyams_content.js Fri Jul 26 19:23:33 2019 +0200 @@ -498,18 +498,6 @@ }, /** - * Form fields management - */ - fields: { - - refreshField: function(changes) { - var container = $('table[id="form_fields_list"]'); - var para = $('tr[data-ams-element-name="' + changes.object_name + '"]', container); - $('td:nth-child(4)', para).html(changes.title); - } - }, - - /** * Image map management */ imgmap: {
--- a/src/pyams_content/zmi/resources/js/pyams_content.min.js Fri Jul 26 13:04:54 2019 +0200 +++ b/src/pyams_content/zmi/resources/js/pyams_content.min.js Fri Jul 26 19:23:33 2019 +0200 @@ -1,1 +1,1 @@ -!function(t,e){"use strict";var a=e.MyAMS,i={widget:{treeview:{selectFolder:function(e,a){t(e.target).siblings('input[type="hidden"]').val(a.id)},unselectFolder:function(e,a){t(e.target).siblings('input[type="hidden"]').val(null)}}},TinyMCE:{initEditor:function(t){tinyMCE.addI18n("fr",{"Link list":"Liste de liens","Toggle h3 header":"En-tête H3","Toggle h4 header":"En-tête H4","Insert internal link":"Insérer un lien interne","Link title":"Texte à afficher","Internal number":"N° interne","Custom styles":"Styles spécifiques"}),tinymce.PluginManager.add("internal_links",function(t,e){t.addButton("internal_links",{icon:"cloud-check",tooltip:"Insert internal link",image:"/--static--/pyams_content/img/internal-link.png",stateSelector:'a[href^="oid://"]',onclick:function(){var e={},a=t.dom,i=t.selection,n=i.getNode(),s=a.getParent(n,"a[href]");e.text=s?s.innerText||s.textContent:i.getContent({format:"text"}),e.href=s?a.getAttrib(s,"href"):"",t.windowManager.open({title:"Insert internal link",body:[{type:"textbox",name:"oid",label:"Internal number",value:e.href,onchange:function(){e.href=this.value()}},{type:"textbox",name:"title",label:"Link title",value:e.text,onchange:function(){e.text=this.value()}}],onsubmit:function(n){t.focus(),e.href?s?("innerText"in s?s.innerText=e.text:s.textContent=e.text,a.setAttribs(s,{href:e.href}),i.select(s),t.undoManager.add()):t.insertContent('<a href="oid://'+n.data.oid+'">'+n.data.title+"</a>"):t.execCommand("unlink")}})}})}),tinyMCE.PluginManager.add("headers",function(t,e){["h3","h4"].forEach(function(e){t.addButton("header-"+e,{tooltip:"Toggle "+e+" header",text:e.toUpperCase(),onClick:function(){t.execCommand("mceToggleFormat",!1,e)},onPostRender:function(){var a=this,i=function(){t.formatter.formatChanged(e,function(t){a.active(t)})};t.formatter?i():t.on("init",i)}})})}),t.paste_as_text=!0,t.image_list=i.TinyMCE.getImagesList,t.link_list=i.TinyMCE.getLinksList,t.style_formats=[{title:"Inline",items:[{title:"Bold",icon:"bold",format:"bold"},{title:"Italic",icon:"italic",format:"italic"},{title:"Underline",icon:"underline",format:"underline"},{title:"Strikethrough",icon:"strikethrough",format:"strikethrough"},{title:"Superscript",icon:"superscript",format:"superscript"},{title:"Subscript",icon:"subscript",format:"subscript"},{title:"Code",icon:"code",format:"code"}]},{title:"Blocks",items:[{title:"Paragraph",format:"p"},{title:"Blockquote",format:"blockquote"},{title:"Div",format:"div"},{title:"Pre",format:"pre"}]},{title:"Alignment",items:[{title:"Left",icon:"alignleft",format:"alignleft"},{title:"Center",icon:"aligncenter",format:"aligncenter"},{title:"Right",icon:"alignright",format:"alignright"},{title:"Justify",icon:"alignjustify",format:"alignjustify"}]}];var e=this.data();return e.amsTinymceEditorStyles&&t.style_formats.push({title:"Custom styles",items:e.amsTinymceEditorStyles}),t.plugins+=" internal_links headers",t.toolbar1&&(t.toolbar1="undo redo | pastetext | header-h3 header-h4 styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent"),t.toolbar2&&(t.toolbar2="forecolor backcolor | charmap internal_links link | fullscreen preview print | code"),t},getImagesList:function(e){var i=t(document.activeElement).parents("form");if(i.exists()){var n=i.attr("data-ams-form-handler")||i.attr("action"),s=n.substr(0,n.lastIndexOf("/")+1);return a.ajax.post(s+"get-images-list.json",{},e)}},getLinksList:function(e){var i=t(document.activeElement).parents("form");if(i.exists()){var n=i.attr("data-ams-form-handler")||i.attr("action"),s=n.substr(0,n.lastIndexOf("/")+1);return a.ajax.post(s+"get-links-list.json",{},e)}}},galleries:{addMediaCallback:function(e){var a=t(".gallery",t('[id="'+e.parent+'"]')),n=a.siblings(".switcher");n.parents("fieldset:first").hasClass("switched")&&n.click();for(var s=0;s<e.medias.length;s++)a.append(e.medias[s]);a.sortable({helper:"clone",stop:i.galleries.setOrder})},updateMediaTitle:function(e){t('img[id="'+e.media_id+'"]').attr("original-title",e.title)},switchMediaVisibility:function(e){return function(){var e=t(this),i=e.parents(".media"),n=i.parents(".gallery");t("i",e).attr("class","fa fa-fw fa-spinner fa-pulse"),a.ajax.post(n.data("ams-location")+"/set-media-visibility.json",{object_name:i.data("ams-element-name")},function(i,n){i.visible?(t("i",e).attr("class","fa fa-fw fa-eye"),e.parents(".btn-group").siblings("a.fancyimg").removeClass("not-visible")):(t("i",e).attr("class","fa fa-fw fa-eye-slash text-danger"),e.parents(".btn-group").siblings("a.fancyimg").addClass("not-visible")),i.handle_json&&a.ajax.handleJSON(i)})}},setOrder:function(e,i){if(!i||!i.item.hasClass("already-dropped")){var n=i.item.parents(".gallery"),s=t(".media",n).listattr("data-ams-element-name");a.ajax.post(n.data("ams-location")+"/set-medias-order.json",{medias:JSON.stringify(s)})}},removeMedia:function(e){return function(){var e=t(this);a.skin.bigBox({title:a.i18n.WARNING,content:'<i class="text-danger fa fa-2x fa-bell shake animated"></i> '+a.i18n.DELETE_WARNING,buttons:a.i18n.BTN_OK_CANCEL},function(t){if(t===a.i18n.BTN_OK){var i=e.parents(".gallery").data("ams-location"),n=e.parents(".media"),s=n.data("ams-element-name");a.ajax.post(i+"/delete-element.json",{object_name:s},function(t,e){n.remove(),t.handle_json&&a.ajax.handleJSON(t)})}})}},afterFancyboxLoad:function(t,e){t.element.hasClass("not-visible")&&t.inner.prepend('<div class="hidden-mask"></div>')}},illustration:{addIllustration:function(){var e=t(this),a=e.parents(".btn-group").siblings("legend.switcher");t("i.fa-plus",a).click(),e.hide(),t('input[type="file"]',a.siblings(".form-group:first")).click()}},paragraphs:{preReload:function(){i.paragraphs.switched=t("i.switch.fa-minus-square-o","#paragraphs_list").parents("tr").listattr("id")},postReload:function(){t(i.paragraphs.switched).each(function(){t("i.switch.fa-plus-square-o",'[id="'+this+'"]').parents("div").first().click()}),delete i.paragraphs.switched},refreshParagraph:function(e){var a=t('tr[id="'+e.object_id+'"]');t("span.title",a).html(e.title||" - - - - - - - -")},switchEditor:function(e){var i=t(this),n=t("i.switch",i),s=i.parents("td"),r=t(".editor",s),o=i.parents("tr");if(n.hasClass("fa-plus-square-o")){var l=o.parents("table");r.html('<h1 class="loading"><i class="fa fa-2x fa-gear fa-spin"></i></h1>'),a.ajax.post(l.data("ams-location")+"/get-paragraph-editor.json",{object_name:o.data("ams-element-name")},function(t){r.html(t),t&&(a.initContent(r),n.removeClass("fa-plus-square-o").addClass("fa-minus-square-o"),o.data("ams-disabled-handlers",!0),a.skin.scrollTo(r,{offset:r.height()-o.height()}))})}else a.skin.cleanContainer(r),r.empty(),n.removeClass("fa-minus-square-o").addClass("fa-plus-square-o"),o.removeData("ams-disabled-handlers")},switchLastEditor:function(e){var a=t('table[id="'+e+'"]'),i=t("tr:last",a);t('[data-ams-click-handler="PyAMS_content.paragraphs.switchEditor"]',i).click()},switchAllEditors:function(e){var i=t(this),n=t("i",i),s=i.parents("table");n.hasClass("fa-plus-square-o")?(n.removeClass("fa-plus-square-o").addClass("fa-cog fa-spin"),a.ajax.post(s.data("ams-location")+"/get-paragraphs-editors.json",{},function(e){for(var i in e)if(e.hasOwnProperty(i)){var r=t('tr[data-ams-element-name="'+i+'"]',s),o=t(".editor",r);o.is(":empty")&&o.html(e[i]),t(".fa-plus-square-o",r).removeClass("fa-plus-square-o").addClass("fa-minus-square-o"),r.data("ams-disabled-handlers",!0)}t("i.fa-plus-square-o",t("tbody",s)).exists()||n.removeClass("fa-cog fa-spin").addClass("fa-minus-square-o"),a.initContent(s)})):(t(".editor",s).each(function(){a.skin.cleanContainer(t(this)),t(this).empty()}),t(".fa-minus-square-o",s).removeClass("fa-minus-square-o").addClass("fa-plus-square-o"),t("tr",s).removeData("ams-disabled-handlers"))},updateToolbar:function(e){var i=t('tr[id="'+e.object_id+'"]'),n=t(".title-toolbar",i);n.replaceWith(e.toolbar_tag),n=t(".title-toolbar",i),a.initContent(n)},updateMarkers:function(e){var i=t('tr[id="'+e.object_id+'"]'),n=t(".title-toolbar",i),s=t("DIV.action."+e.marker_type,n);s.exists()?s.replaceWith(e.marker_tag):t(e.marker_tag).appendTo(n),e.marker_tag&&(s=t("DIV.action."+e.marker_type,n),a.initContent(s)),a.helpers.sort(n,"weight")}},pictograms:{initManagerSelection:function(){var e=t(this),a=t('input[type="hidden"]',t(".selected-pictograms",e)).listattr("value");return{selected:JSON.stringify(a)}},switchPictogram:function(){var e=t(this),a=e.parents(".pictograms"),i=a.parents(".pictograms-manager");a.hasClass("available-pictograms")?t(".selected-pictograms",i).append(e):t(".available-pictograms",i).append(e)}},themes:{updateThesaurus:function(e){var i=t(this).parents("form"),n=t('select[name$=".extract_name:list"]',i),s=n.data("select2");n.empty(),n.select2("data",null),s.results.empty();var r=t('select[name$=".thesaurus_name:list"]',i).val();r&&a.jsonrpc.post("getExtracts",{thesaurus_name:r},{url:"/api/thesaurus/json"},function(e){n.empty(),t(e.result).each(function(){t("<option></option>").attr("value",this.id).text(this.text).appendTo(n)}),s.opts.populateResults.call(s,s.results,e.result,{term:""})})}},fields:{refreshField:function(e){var a=t('table[id="form_fields_list"]'),i=t('tr[data-ams-element-name="'+e.object_name+'"]',a);t("td:nth-child(4)",i).html(e.title)}},imgmap:{init:function(){var e=t(this);a.ajax.check(t.fn.canvasAreaDraw,"/--static--/pyams_content/js/jquery-canvasAreaDraw"+a.devext+".js",function(){e.canvasAreaDraw({imageUrl:e.data("ams-image-url")})})},initPreview:function(){var e=t(this);a.ajax.check(t.fn.mapster,"/--static--/pyams_content/js/jquery-imagemapster-1.2.10"+a.devext+".js",function(){e.mapster({fillColor:"ff0000",fillOpacity:.35,selected:!0,highlight:!0,staticState:!0})})}},site:{switchVisibility:function(){return function(){var e=t(this),i=e.parents("tr").first();a.ajax.post(i.data("ams-location")+"/switch-content-visibility.json",{object_name:i.data("ams-element-name")},function(a,i){var n="fa-eye";a.visible||(n+="-slash"),a.published||(n+=" text-danger"),t("i",e).attr("class","fa fa-fw "+n)})}}},review:{timer:null,timer_duration:{general:3e4,chat:5e3},initComments:function(e){var n=t(".chat-body",e);n.animate({scrollTop:n[0].scrollHeight},1e3),clearInterval(i.review.timer),i.review.timer=setInterval(i.review.updateComments,i.review.timer_duration.chat),a.skin.registerCleanCallback(i.review.cleanCommentsCallback)},cleanCommentsCallback:function(){clearInterval(i.review.timer),i.review.timer=setInterval(i.review.updateComments,i.review.timer_duration.general)},updateComments:function(){var e,i=t(".badge",'nav a[href="#review-comments.html"]'),n=t(".chat-body",".widget-body");e=n.exists()?t(".message",n).length:parseInt(i.text()),a.ajax.post("get-last-review-comments.json",{count:e},function(a){n.exists()&&i.removeClass("bg-color-danger").addClass("bg-color-info"),e!==a.count&&(i.text(a.count).removeClass("hidden"),n.exists()&&(t(".messages",n).append(a.content),n.animate({scrollTop:n[0].scrollHeight},1e3)),n.exists()||i.removeClass("bg-color-info").addClass("bg-color-danger").animate({padding:"3px 12px 2px","margin-right":"9px"},"slow",function(){t(this).animate({padding:"3px 6px 2px","margin-right":"15px"},"slow")}))})},initCommentData:function(e){var a=t(".chat-body",".widget-body");return{count:t(".message",a).length}},addCommentAction:function(){return function(){t('textarea[name="comment"]').focus()}},addCommentCallback:function(e){var a=t(this),i=a.parents(".widget-body");t(".messages",i).append(e.content),t('textarea[name="comment"]',a).val("");var n=t(".chat-body",i);n.animate({scrollTop:n[0].scrollHeight},1e3),t(".badge",'nav a[href="#review-comments.html"]').text(e.count).removeClass("hidden")}},header:{submitEditForm:function(){var e=t(this).parents("form").first();a.form.submit(e,{form_data:{autosubmit:!0}})}},footer:{submitEditForm:function(){var e=t(this).parents("form").first();a.form.submit(e,{form_data:{autosubmit:!0}})}},profile:{switchFavorite:function(){var e=t(this),i=e.data("sequence-oid");a.ajax.post("switch-user-favorite.json",{oid:i},function(t,a){t.favorite?e.removeClass("fa-star-o").addClass("fa-star"):e.removeClass("fa-star").addClass("fa-star-o")})}}};t(".badge",'nav a[href="#review-comments.html"]').exists()&&(i.review.timer=setInterval(i.review.updateComments,i.review.timer_duration.general)),e.PyAMS_content=i}(jQuery,this); +!function(t,e){"use strict";var a=e.MyAMS,i={widget:{treeview:{selectFolder:function(e,a){t(e.target).siblings('input[type="hidden"]').val(a.id)},unselectFolder:function(e,a){t(e.target).siblings('input[type="hidden"]').val(null)}}},TinyMCE:{initEditor:function(t){tinyMCE.addI18n("fr",{"Link list":"Liste de liens","Toggle h3 header":"En-tête H3","Toggle h4 header":"En-tête H4","Insert internal link":"Insérer un lien interne","Link title":"Texte à afficher","Internal number":"N° interne","Custom styles":"Styles spécifiques"}),tinymce.PluginManager.add("internal_links",function(t,e){t.addButton("internal_links",{icon:"cloud-check",tooltip:"Insert internal link",image:"/--static--/pyams_content/img/internal-link.png",stateSelector:'a[href^="oid://"]',onclick:function(){var e={},a=t.dom,i=t.selection,n=i.getNode(),s=a.getParent(n,"a[href]");e.text=s?s.innerText||s.textContent:i.getContent({format:"text"}),e.href=s?a.getAttrib(s,"href"):"",t.windowManager.open({title:"Insert internal link",body:[{type:"textbox",name:"oid",label:"Internal number",value:e.href,onchange:function(){e.href=this.value()}},{type:"textbox",name:"title",label:"Link title",value:e.text,onchange:function(){e.text=this.value()}}],onsubmit:function(n){t.focus(),e.href?s?("innerText"in s?s.innerText=e.text:s.textContent=e.text,a.setAttribs(s,{href:e.href}),i.select(s),t.undoManager.add()):t.insertContent('<a href="oid://'+n.data.oid+'">'+n.data.title+"</a>"):t.execCommand("unlink")}})}})}),tinyMCE.PluginManager.add("headers",function(t,e){["h3","h4"].forEach(function(e){t.addButton("header-"+e,{tooltip:"Toggle "+e+" header",text:e.toUpperCase(),onClick:function(){t.execCommand("mceToggleFormat",!1,e)},onPostRender:function(){var a=this,i=function(){t.formatter.formatChanged(e,function(t){a.active(t)})};t.formatter?i():t.on("init",i)}})})}),t.paste_as_text=!0,t.image_list=i.TinyMCE.getImagesList,t.link_list=i.TinyMCE.getLinksList,t.style_formats=[{title:"Inline",items:[{title:"Bold",icon:"bold",format:"bold"},{title:"Italic",icon:"italic",format:"italic"},{title:"Underline",icon:"underline",format:"underline"},{title:"Strikethrough",icon:"strikethrough",format:"strikethrough"},{title:"Superscript",icon:"superscript",format:"superscript"},{title:"Subscript",icon:"subscript",format:"subscript"},{title:"Code",icon:"code",format:"code"}]},{title:"Blocks",items:[{title:"Paragraph",format:"p"},{title:"Blockquote",format:"blockquote"},{title:"Div",format:"div"},{title:"Pre",format:"pre"}]},{title:"Alignment",items:[{title:"Left",icon:"alignleft",format:"alignleft"},{title:"Center",icon:"aligncenter",format:"aligncenter"},{title:"Right",icon:"alignright",format:"alignright"},{title:"Justify",icon:"alignjustify",format:"alignjustify"}]}];var e=this.data();return e.amsTinymceEditorStyles&&t.style_formats.push({title:"Custom styles",items:e.amsTinymceEditorStyles}),t.plugins+=" internal_links headers",t.toolbar1&&(t.toolbar1="undo redo | pastetext | header-h3 header-h4 styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent"),t.toolbar2&&(t.toolbar2="forecolor backcolor | charmap internal_links link | fullscreen preview print | code"),t},getImagesList:function(e){var i=t(document.activeElement).parents("form");if(i.exists()){var n=i.attr("data-ams-form-handler")||i.attr("action"),s=n.substr(0,n.lastIndexOf("/")+1);return a.ajax.post(s+"get-images-list.json",{},e)}},getLinksList:function(e){var i=t(document.activeElement).parents("form");if(i.exists()){var n=i.attr("data-ams-form-handler")||i.attr("action"),s=n.substr(0,n.lastIndexOf("/")+1);return a.ajax.post(s+"get-links-list.json",{},e)}}},galleries:{addMediaCallback:function(e){var a=t(".gallery",t('[id="'+e.parent+'"]')),n=a.siblings(".switcher");n.parents("fieldset:first").hasClass("switched")&&n.click();for(var s=0;s<e.medias.length;s++)a.append(e.medias[s]);a.sortable({helper:"clone",stop:i.galleries.setOrder})},updateMediaTitle:function(e){t('img[id="'+e.media_id+'"]').attr("original-title",e.title)},switchMediaVisibility:function(e){return function(){var e=t(this),i=e.parents(".media"),n=i.parents(".gallery");t("i",e).attr("class","fa fa-fw fa-spinner fa-pulse"),a.ajax.post(n.data("ams-location")+"/set-media-visibility.json",{object_name:i.data("ams-element-name")},function(i,n){i.visible?(t("i",e).attr("class","fa fa-fw fa-eye"),e.parents(".btn-group").siblings("a.fancyimg").removeClass("not-visible")):(t("i",e).attr("class","fa fa-fw fa-eye-slash text-danger"),e.parents(".btn-group").siblings("a.fancyimg").addClass("not-visible")),i.handle_json&&a.ajax.handleJSON(i)})}},setOrder:function(e,i){if(!i||!i.item.hasClass("already-dropped")){var n=i.item.parents(".gallery"),s=t(".media",n).listattr("data-ams-element-name");a.ajax.post(n.data("ams-location")+"/set-medias-order.json",{medias:JSON.stringify(s)})}},removeMedia:function(e){return function(){var e=t(this);a.skin.bigBox({title:a.i18n.WARNING,content:'<i class="text-danger fa fa-2x fa-bell shake animated"></i> '+a.i18n.DELETE_WARNING,buttons:a.i18n.BTN_OK_CANCEL},function(t){if(t===a.i18n.BTN_OK){var i=e.parents(".gallery").data("ams-location"),n=e.parents(".media"),s=n.data("ams-element-name");a.ajax.post(i+"/delete-element.json",{object_name:s},function(t,e){n.remove(),t.handle_json&&a.ajax.handleJSON(t)})}})}},afterFancyboxLoad:function(t,e){t.element.hasClass("not-visible")&&t.inner.prepend('<div class="hidden-mask"></div>')}},illustration:{addIllustration:function(){var e=t(this),a=e.parents(".btn-group").siblings("legend.switcher");t("i.fa-plus",a).click(),e.hide(),t('input[type="file"]',a.siblings(".form-group:first")).click()}},paragraphs:{preReload:function(){i.paragraphs.switched=t("i.switch.fa-minus-square-o","#paragraphs_list").parents("tr").listattr("id")},postReload:function(){t(i.paragraphs.switched).each(function(){t("i.switch.fa-plus-square-o",'[id="'+this+'"]').parents("div").first().click()}),delete i.paragraphs.switched},refreshParagraph:function(e){var a=t('tr[id="'+e.object_id+'"]');t("span.title",a).html(e.title||" - - - - - - - -")},switchEditor:function(e){var i=t(this),n=t("i.switch",i),s=i.parents("td"),r=t(".editor",s),o=i.parents("tr");if(n.hasClass("fa-plus-square-o")){var l=o.parents("table");r.html('<h1 class="loading"><i class="fa fa-2x fa-gear fa-spin"></i></h1>'),a.ajax.post(l.data("ams-location")+"/get-paragraph-editor.json",{object_name:o.data("ams-element-name")},function(t){r.html(t),t&&(a.initContent(r),n.removeClass("fa-plus-square-o").addClass("fa-minus-square-o"),o.data("ams-disabled-handlers",!0),a.skin.scrollTo(r,{offset:r.height()-o.height()}))})}else a.skin.cleanContainer(r),r.empty(),n.removeClass("fa-minus-square-o").addClass("fa-plus-square-o"),o.removeData("ams-disabled-handlers")},switchLastEditor:function(e){var a=t('table[id="'+e+'"]'),i=t("tr:last",a);t('[data-ams-click-handler="PyAMS_content.paragraphs.switchEditor"]',i).click()},switchAllEditors:function(e){var i=t(this),n=t("i",i),s=i.parents("table");n.hasClass("fa-plus-square-o")?(n.removeClass("fa-plus-square-o").addClass("fa-cog fa-spin"),a.ajax.post(s.data("ams-location")+"/get-paragraphs-editors.json",{},function(e){for(var i in e)if(e.hasOwnProperty(i)){var r=t('tr[data-ams-element-name="'+i+'"]',s),o=t(".editor",r);o.is(":empty")&&o.html(e[i]),t(".fa-plus-square-o",r).removeClass("fa-plus-square-o").addClass("fa-minus-square-o"),r.data("ams-disabled-handlers",!0)}t("i.fa-plus-square-o",t("tbody",s)).exists()||n.removeClass("fa-cog fa-spin").addClass("fa-minus-square-o"),a.initContent(s)})):(t(".editor",s).each(function(){a.skin.cleanContainer(t(this)),t(this).empty()}),t(".fa-minus-square-o",s).removeClass("fa-minus-square-o").addClass("fa-plus-square-o"),t("tr",s).removeData("ams-disabled-handlers"))},updateToolbar:function(e){var i=t('tr[id="'+e.object_id+'"]'),n=t(".title-toolbar",i);n.replaceWith(e.toolbar_tag),n=t(".title-toolbar",i),a.initContent(n)},updateMarkers:function(e){var i=t('tr[id="'+e.object_id+'"]'),n=t(".title-toolbar",i),s=t("DIV.action."+e.marker_type,n);s.exists()?s.replaceWith(e.marker_tag):t(e.marker_tag).appendTo(n),e.marker_tag&&(s=t("DIV.action."+e.marker_type,n),a.initContent(s)),a.helpers.sort(n,"weight")}},pictograms:{initManagerSelection:function(){var e=t(this),a=t('input[type="hidden"]',t(".selected-pictograms",e)).listattr("value");return{selected:JSON.stringify(a)}},switchPictogram:function(){var e=t(this),a=e.parents(".pictograms"),i=a.parents(".pictograms-manager");a.hasClass("available-pictograms")?t(".selected-pictograms",i).append(e):t(".available-pictograms",i).append(e)}},themes:{updateThesaurus:function(e){var i=t(this).parents("form"),n=t('select[name$=".extract_name:list"]',i),s=n.data("select2");n.empty(),n.select2("data",null),s.results.empty();var r=t('select[name$=".thesaurus_name:list"]',i).val();r&&a.jsonrpc.post("getExtracts",{thesaurus_name:r},{url:"/api/thesaurus/json"},function(e){n.empty(),t(e.result).each(function(){t("<option></option>").attr("value",this.id).text(this.text).appendTo(n)}),s.opts.populateResults.call(s,s.results,e.result,{term:""})})}},imgmap:{init:function(){var e=t(this);a.ajax.check(t.fn.canvasAreaDraw,"/--static--/pyams_content/js/jquery-canvasAreaDraw"+a.devext+".js",function(){e.canvasAreaDraw({imageUrl:e.data("ams-image-url")})})},initPreview:function(){var e=t(this);a.ajax.check(t.fn.mapster,"/--static--/pyams_content/js/jquery-imagemapster-1.2.10"+a.devext+".js",function(){e.mapster({fillColor:"ff0000",fillOpacity:.35,selected:!0,highlight:!0,staticState:!0})})}},site:{switchVisibility:function(){return function(){var e=t(this),i=e.parents("tr").first();a.ajax.post(i.data("ams-location")+"/switch-content-visibility.json",{object_name:i.data("ams-element-name")},function(a,i){var n="fa-eye";a.visible||(n+="-slash"),a.published||(n+=" text-danger"),t("i",e).attr("class","fa fa-fw "+n)})}}},review:{timer:null,timer_duration:{general:3e4,chat:5e3},initComments:function(e){var n=t(".chat-body",e);n.animate({scrollTop:n[0].scrollHeight},1e3),clearInterval(i.review.timer),i.review.timer=setInterval(i.review.updateComments,i.review.timer_duration.chat),a.skin.registerCleanCallback(i.review.cleanCommentsCallback)},cleanCommentsCallback:function(){clearInterval(i.review.timer),i.review.timer=setInterval(i.review.updateComments,i.review.timer_duration.general)},updateComments:function(){var e,i=t(".badge",'nav a[href="#review-comments.html"]'),n=t(".chat-body",".widget-body");e=n.exists()?t(".message",n).length:parseInt(i.text()),a.ajax.post("get-last-review-comments.json",{count:e},function(a){n.exists()&&i.removeClass("bg-color-danger").addClass("bg-color-info"),e!==a.count&&(i.text(a.count).removeClass("hidden"),n.exists()&&(t(".messages",n).append(a.content),n.animate({scrollTop:n[0].scrollHeight},1e3)),n.exists()||i.removeClass("bg-color-info").addClass("bg-color-danger").animate({padding:"3px 12px 2px","margin-right":"9px"},"slow",function(){t(this).animate({padding:"3px 6px 2px","margin-right":"15px"},"slow")}))})},initCommentData:function(e){var a=t(".chat-body",".widget-body");return{count:t(".message",a).length}},addCommentAction:function(){return function(){t('textarea[name="comment"]').focus()}},addCommentCallback:function(e){var a=t(this),i=a.parents(".widget-body");t(".messages",i).append(e.content),t('textarea[name="comment"]',a).val("");var n=t(".chat-body",i);n.animate({scrollTop:n[0].scrollHeight},1e3),t(".badge",'nav a[href="#review-comments.html"]').text(e.count).removeClass("hidden")}},header:{submitEditForm:function(){var e=t(this).parents("form").first();a.form.submit(e,{form_data:{autosubmit:!0}})}},footer:{submitEditForm:function(){var e=t(this).parents("form").first();a.form.submit(e,{form_data:{autosubmit:!0}})}},profile:{switchFavorite:function(){var e=t(this),i=e.data("sequence-oid");a.ajax.post("switch-user-favorite.json",{oid:i},function(t,a){t.favorite?e.removeClass("fa-star-o").addClass("fa-star"):e.removeClass("fa-star").addClass("fa-star-o")})}}};t(".badge",'nav a[href="#review-comments.html"]').exists()&&(i.review.timer=setInterval(i.review.updateComments,i.review.timer_duration.general)),e.PyAMS_content=i}(jQuery,this);