|
From: <gem...@li...> - 2011-11-16 17:52:48
|
Revision: 223
http://gemstracker.svn.sourceforge.net/gemstracker/?rev=223&view=rev
Author: matijsdejong
Date: 2011-11-16 17:52:38 +0000 (Wed, 16 Nov 2011)
Log Message:
-----------
Start on #40: organizations can defer to each other. Input possible.
Array values can be saved in a model and read by multi elements.
Modified Paths:
--------------
trunk/library/classes/Gems/Default/OrganizationAction.php
trunk/library/classes/MUtil/Model/FormBridge.php
trunk/library/configs/db/patches.sql
trunk/library/configs/db/tables/gems__organizations.20.sql
trunk/library/languages/default-en.mo
trunk/library/languages/default-en.po
trunk/library/languages/default-nl.mo
trunk/library/languages/default-nl.po
Added Paths:
-----------
trunk/library/classes/MUtil/Form/Element/MultiCheckbox.php
trunk/library/classes/MUtil/Form/Element/MultiSelect.php
trunk/library/classes/MUtil/Model/Save/
trunk/library/classes/MUtil/Model/Save/ArraySaver.php
Modified: trunk/library/classes/Gems/Default/OrganizationAction.php
===================================================================
--- trunk/library/classes/Gems/Default/OrganizationAction.php 2011-11-16 13:19:44 UTC (rev 222)
+++ trunk/library/classes/Gems/Default/OrganizationAction.php 2011-11-16 17:52:38 UTC (rev 223)
@@ -140,15 +140,20 @@
'gor_iso_lang', 'label', $this->_('Language'),
'multiOptions', $this->util->getLocalized()->getLanguages(), 'default', 'nl'
);
- $model->set(
- 'gor_active', 'label', $this->_('Active'), 'elementClass', 'Checkbox',
- 'multiOptions', $this->util->getTranslated()->getYesNo()
- );
+ $yesNo = $this->util->getTranslated()->getYesNo();
+ $model->set('gor_active', 'label', $this->_('Active'), 'elementClass', 'Checkbox', 'multiOptions', $yesNo);
+ $model->set('gor_add_patients', 'label', $this->_('Allow new respondents'), 'elementClass', 'CheckBox', 'multiOptions', $yesNo);
+
if ($detailed) {
$model->set('gor_name', 'validator', $model->createUniqueValidator('gor_name'));
$model->set('gor_welcome', 'label', $this->_('Greeting'), 'description', $this->_('For emails and token forward screen.'), 'elementClass', 'Textarea', 'rows', 5);
$model->set('gor_signature', 'label', $this->_('Signature'), 'description', $this->_('For emails and token forward screen.'), 'elementClass', 'Textarea', 'rows', 5);
+
+ $model->set('gor_accessible_by', 'label', $this->_('Accessible by'), 'description', $this->_('Checked organizations see this organizations respondents.'), 'elementClass', 'MultiCheckbox',
+ 'multiOptions', $this->util->getDbLookup()->getOrganizations());
+ MUtil_Model_Save_ArraySaver::create($model, 'gor_accessible_by', ':');
+
}
if ($this->project->multiLocale) {
Added: trunk/library/classes/MUtil/Form/Element/MultiCheckbox.php
===================================================================
--- trunk/library/classes/MUtil/Form/Element/MultiCheckbox.php (rev 0)
+++ trunk/library/classes/MUtil/Form/Element/MultiCheckbox.php 2011-11-16 17:52:38 UTC (rev 223)
@@ -0,0 +1,143 @@
+<?php
+
+/**
+ * Copyright (c) 2011, Erasmus MC
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of Erasmus MC nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ *
+ * @package MUtil
+ * @subpackage Form
+ * @author Matijs de Jong <mj...@ma...>
+ * @copyright Copyright (c) 2011 Erasmus MC
+ * @license New BSD License
+ * @version $Id: Sample.php 203 2011-07-07 12:51:32Z matijs $
+ */
+
+/**
+ * This object allows you to supply a string value when the object expects an
+ * array value, splitting the string along the valueSeperatorChar.
+ *
+ * Return this value as a string is not practical as that breaks the workings
+ * of all Filters, Validators and Decorators.
+ *
+ * @package MUtil
+ * @subpackage Form
+ * @copyright Copyright (c) 2011 Erasmus MC
+ * @license New BSD License
+ * @since Class available since version 1.5
+ */
+class MUtil_Form_Element_MultiCheckbox extends Zend_Form_Element_MultiCheckbox
+{
+ /**
+ * En/disables padding the value in separators. The default is true as this
+ * simplifies search commands (and usually costs only 2 characters).
+ *
+ * @var boolean
+ */
+ protected $_valuePad = true;
+
+ /**
+ * The value seperator enables this control to accept a single string as value
+ * and split it into an array.
+ *
+ * A null seperator means this class behaves as it's parent class and returns an
+ * array value.
+ *
+ * @var string
+ */
+ protected $_valueSeperatorChar = null;
+
+ /**
+ * En/disables padding the value in separators. The default is true as this
+ * simplifies search commands (and usually costs only 2 characters).
+ *
+ * @return boolean
+ */
+ public function getValuePad()
+ {
+ return $this->_valuePad;
+ }
+
+ /**
+ * The value seperator enables this control to accept a single string as value
+ * and split it into an array.
+ *
+ * A null seperator means this class behaves as it's parent class and returns an
+ * array value.
+ *
+ * @return string
+ */
+ public function getValueSeperatorChar()
+ {
+ return $this->_valueSeperatorChar;
+ }
+
+ /**
+ * Set element value
+ *
+ * @param mixed $value
+ * @return MUtil_Form_Element_MultiCheckbox (continuation pattern)
+ */
+ public function setValue($value)
+ {
+ if ((null !== $this->_valueSeperatorChar) && (! is_array($value))) {
+ if ($this->_valuePad) {
+ $value = trim($value, $this->_valueSeperatorChar);
+ }
+ $value = explode($this->_valueSeperatorChar, $value);
+ }
+
+ return parent::setValue($value);
+ }
+
+ /**
+ * En/disables padding the value in separators. The default is true as this
+ * simplifies search commands (and usually costs only 2 characters).
+ *
+ * @param boolean $value
+ * @return MUtil_Form_Element_MultiCheckbox (continuation pattern)
+ */
+ public function setValuePad($value = true)
+ {
+ $this->_valuePad = $value;
+ return $this;
+ }
+
+ /**
+ * The value seperator enables this control to accept a single string as value
+ * and split it into an array.
+ *
+ * A null seperator means this class behaves as it's parent class and returns an
+ * array value.
+ *
+ * @param string $seperator
+ * @return MUtil_Form_Element_MultiCheckbox (continuation pattern)
+ */
+ public function setValueSeperatorChar($seperator = ' ')
+ {
+ $this->_valueSeperatorChar = substr($seperator . ' ', 0, 1);
+ return $this;
+ }
+}
Added: trunk/library/classes/MUtil/Form/Element/MultiSelect.php
===================================================================
--- trunk/library/classes/MUtil/Form/Element/MultiSelect.php (rev 0)
+++ trunk/library/classes/MUtil/Form/Element/MultiSelect.php 2011-11-16 17:52:38 UTC (rev 223)
@@ -0,0 +1,143 @@
+<?php
+
+/**
+ * Copyright (c) 2011, Erasmus MC
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of Erasmus MC nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ *
+ * @package MUtil
+ * @subpackage Form
+ * @author Matijs de Jong <mj...@ma...>
+ * @copyright Copyright (c) 2011 Erasmus MC
+ * @license New BSD License
+ * @version $Id: Sample.php 203 2011-07-07 12:51:32Z matijs $
+ */
+
+/**
+ * This object allows you to supply a string value when the object expects an
+ * array value, splitting the string along the valueSeperatorChar.
+ *
+ * Return this value as a string is not practical as that breaks the workings
+ * of all Filters, Validators and Decorators.
+ *
+ * @package MUtil
+ * @subpackage Form
+ * @copyright Copyright (c) 2011 Erasmus MC
+ * @license New BSD License
+ * @since Class available since version 1.5
+ */
+class MUtil_Form_Element_MultiSelect extends Zend_Form_Element_MultiSelect
+{
+ /**
+ * En/disables padding the value in separators. The default is true as this
+ * simplifies search commands (and usually costs only 2 characters).
+ *
+ * @var boolean
+ */
+ protected $_valuePad = true;
+
+ /**
+ * The value seperator enables this control to accept a single string as value
+ * and split it into an array.
+ *
+ * A null seperator means this class behaves as it's parent class and returns an
+ * array value.
+ *
+ * @var string
+ */
+ protected $_valueSeperatorChar = null;
+
+ /**
+ * En/disables padding the value in separators. The default is true as this
+ * simplifies search commands (and usually costs only 2 characters).
+ *
+ * @return boolean
+ */
+ public function getValuePad()
+ {
+ return $this->_valuePad;
+ }
+
+ /**
+ * The value seperator enables this control to accept a single string as value
+ * and split it into an array.
+ *
+ * A null seperator means this class behaves as it's parent class and returns an
+ * array value.
+ *
+ * @return string
+ */
+ public function getValueSeperatorChar()
+ {
+ return $this->_valueSeperatorChar;
+ }
+
+ /**
+ * Set element value
+ *
+ * @param mixed $value
+ * @return MUtil_Form_Element_MultiCheckbox (continuation pattern)
+ */
+ public function setValue($value)
+ {
+ if ((null !== $this->_valueSeperatorChar) && (! is_array($value))) {
+ if ($this->_valuePad) {
+ $value = trim($value, $this->_valueSeperatorChar);
+ }
+ $value = explode($this->_valueSeperatorChar, $value);
+ }
+
+ return parent::setValue($value);
+ }
+
+ /**
+ * En/disables padding the value in separators. The default is true as this
+ * simplifies search commands (and usually costs only 2 characters).
+ *
+ * @param boolean $value
+ * @return MUtil_Form_Element_MultiCheckbox (continuation pattern)
+ */
+ public function setValuePad($value = true)
+ {
+ $this->_valuePad = $value;
+ return $this;
+ }
+
+ /**
+ * The value seperator enables this control to accept a single string as value
+ * and split it into an array.
+ *
+ * A null seperator means this class behaves as it's parent class and returns an
+ * array value.
+ *
+ * @param string $seperator
+ * @return MUtil_Form_Element_MultiCheckbox (continuation pattern)
+ */
+ public function setValueSeperatorChar($seperator = ' ')
+ {
+ $this->_valueSeperatorChar = substr($seperator . ' ', 0, 1);
+ return $this;
+ }
+}
Modified: trunk/library/classes/MUtil/Model/FormBridge.php
===================================================================
--- trunk/library/classes/MUtil/Model/FormBridge.php 2011-11-16 13:19:44 UTC (rev 222)
+++ trunk/library/classes/MUtil/Model/FormBridge.php 2011-11-16 17:52:38 UTC (rev 223)
@@ -85,7 +85,7 @@
self::FILE_OPTIONS => array('accept', 'count', 'destination', 'valueDisabled'),
self::GROUP_OPTIONS => array('elements', 'legend', 'separator'),
self::JQUERY_OPTIONS => array('jQueryParams'),
- self::MULTI_OPTIONS => array('disable', 'multiOptions', 'onchange', 'separator', 'size'),
+ self::MULTI_OPTIONS => array('disable', 'multiOptions', 'onchange', 'separator', 'size', 'valuePad', 'valueSeperatorChar'),
self::PASSWORD_OPTIONS => array('repeatLabel'),
self::TAB_OPTIONS => array('value'),
self::TEXT_OPTIONS => array('maxlength', 'minlength', 'onchange', 'onfocus', 'onselect', 'size'),
@@ -538,7 +538,7 @@
$options = $this->_mergeOptions($name, $options,
self::DISPLAY_OPTIONS, self::MULTI_OPTIONS);
- $element = new Zend_Form_Element_MultiCheckbox($name, $options);
+ $element = new MUtil_Form_Element_MultiCheckbox($name, $options);
return $this->_addToForm($name, $element);
}
@@ -562,7 +562,7 @@
$options = $this->_mergeOptions($name, $options,
self::DISPLAY_OPTIONS, self::MULTI_OPTIONS);
- $element = new Zend_Form_Element_Multiselect($name, $options);
+ $element = new MUtil_Form_Element_Multiselect($name, $options);
return $this->_addToForm($name, $element);
}
Property changes on: trunk/library/classes/MUtil/Model/Save
___________________________________________________________________
Added: bugtraq:url
+ http://survey.erasmusmc.nl/support/mantis/view.php?id=%BUGID%
Added: bugtraq:logregex
+ #(\d+)
Added: trunk/library/classes/MUtil/Model/Save/ArraySaver.php
===================================================================
--- trunk/library/classes/MUtil/Model/Save/ArraySaver.php (rev 0)
+++ trunk/library/classes/MUtil/Model/Save/ArraySaver.php 2011-11-16 17:52:38 UTC (rev 223)
@@ -0,0 +1,89 @@
+<?php
+
+/**
+ * Copyright (c) 2011, Erasmus MC
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of Erasmus MC nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ *
+ * @package MUtil
+ * @subpackage Model
+ * @author Matijs de Jong <mj...@ma...>
+ * @copyright Copyright (c) 2011 Erasmus MC
+ * @license New BSD License
+ * @version $Id: Sample.php 203 2011-07-07 12:51:32Z matijs $
+ */
+
+/**
+ *
+ *
+ * @package MUtil
+ * @subpackage Model
+ * @copyright Copyright (c) 2011 Erasmus MC
+ * @license New BSD License
+ * @since Class available since version 1.5
+ */
+class MUtil_Model_Save_ArraySaver
+{
+ protected $seperatorChar = ' ';
+
+ protected $valuePad = true;
+
+ public function __construct($seperatorChar = ' ', $valuePad = true)
+ {
+ $this->seperatorChar = substr($seperatorChar . ' ', 0, 1);
+ $this->valuePad = $valuePad;
+ }
+
+ /**
+ * If this field is saved as an array value, use
+ *
+ * @param MUtil_Model_ModelAbstract $model
+ * @param string $name The field to set the seperator character
+ * @param string $char
+ * @param boolean $pad
+ * @return MUtil_Model_ModelAbstract (continuation pattern)
+ */
+ public static function create(MUtil_Model_ModelAbstract $model, $name, $char = ' ', $pad = true)
+ {
+ $class = new self($char, $pad);
+
+ $model->set($name, 'valueSeperatorChar', substr($char . ' ', 0, 1), 'valuePad', $pad);
+ $model->setOnSave($name, array($class, 'saveValue'));
+
+ return $class;
+ }
+
+ public function saveValue($name, $value, $isNew)
+ {
+ if (is_array($value)) {
+ $value = implode($this->seperatorChar, $value);
+
+ if ($this->valuePad) {
+ $value = $this->seperatorChar . $value . $this->seperatorChar;
+ }
+ }
+ return $value;
+ }
+}
Modified: trunk/library/configs/db/patches.sql
===================================================================
--- trunk/library/configs/db/patches.sql 2011-11-16 13:19:44 UTC (rev 222)
+++ trunk/library/configs/db/patches.sql 2011-11-16 17:52:38 UTC (rev 223)
@@ -311,3 +311,11 @@
-- PATCH: Change Burger Service Nummer to Social Security Number
ALTER TABLE `gems__respondents` CHANGE `grs_bsn` `grs_ssn` VARCHAR( 32 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;
+
+-- PATCH: Extending organizations
+
+ALTER TABLE `gems__organizations` ADD UNIQUE INDEX (`gor_code`);
+
+ALTER TABLE `gems__organizations` ADD gor_accessible_by text CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null AFTER gor_task,
+ ADD gor_has_patients boolean not null default 1 AFTER gor_iso_lang,
+ ADD gor_add_patients boolean not null default 1 AFTER gor_has_patients;
Modified: trunk/library/configs/db/tables/gems__organizations.20.sql
===================================================================
--- trunk/library/configs/db/tables/gems__organizations.20.sql 2011-11-16 13:19:44 UTC (rev 222)
+++ trunk/library/configs/db/tables/gems__organizations.20.sql 2011-11-16 17:52:38 UTC (rev 223)
@@ -3,20 +3,25 @@
gor_id_organization bigint unsigned not null auto_increment,
gor_name varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' not null,
- gor_code varchar(20) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
- gor_location varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
- gor_url varchar(127) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
- gor_task varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
+ gor_code varchar(20) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_location varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_url varchar(127) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_task varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
- gor_contact_name varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
- gor_contact_email varchar(127) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
- gor_welcome text CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
- gor_signature text CHARACTER SET 'utf8' COLLATE 'utf8_general_ci',
+ -- A commy separated list of organization numbers that can look at respondents in this organization
+ gor_accessible_by text CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_contact_name varchar(50) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_contact_email varchar(127) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_welcome text CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+ gor_signature text CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' null,
+
gor_style varchar(15) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' not null default 'gems',
gor_iso_lang char(2) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'
not null default 'en' references gems__languages (gml_iso_lang),
+ gor_has_patients boolean not null default 1,
+ gor_add_patients boolean not null default 1,
gor_active boolean not null default 1,
gor_changed timestamp not null default current_timestamp on update current_timestamp,
@@ -24,15 +29,9 @@
gor_created timestamp not null,
gor_created_by bigint unsigned not null,
- PRIMARY KEY(gor_id_organization)
+ PRIMARY KEY(gor_id_organization),
+ UNIQUE (gor_code)
)
ENGINE=InnoDB
AUTO_INCREMENT = 70
CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
-
--- Default group
-INSERT ignore INTO gems__organizations
- (gor_id_organization, gor_name, gor_location, gor_active, gor_iso_lang, gor_changed, gor_changed_by, gor_created, gor_created_by)
- VALUES
- (70, 'Erasmus MGZ', 'Rotterdam', 1, 'nl', current_timestamp, 0, current_timestamp, 0);
-
Modified: trunk/library/languages/default-en.mo
===================================================================
(Binary files differ)
Modified: trunk/library/languages/default-en.po
===================================================================
--- trunk/library/languages/default-en.po 2011-11-16 13:19:44 UTC (rev 222)
+++ trunk/library/languages/default-en.po 2011-11-16 17:52:38 UTC (rev 223)
@@ -2,7 +2,7 @@
msgstr ""
"Project-Id-Version: Pulse EN\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-11-03 12:50+0100\n"
+"POT-Creation-Date: 2011-11-16 18:30+0100\n"
"PO-Revision-Date: \n"
"Last-Translator: Matijs de Jong <mj...@ma...>\n"
"Language-Team: Erasmus MGZ <mat...@ma...>\n"
@@ -18,58 +18,58 @@
"X-Poedit-KeywordsList: plural:1,2\n"
"X-Poedit-SearchPath-0: .\n"
-#: classes/GemsEscort.php:186
+#: classes/GemsEscort.php:201
#, php-format
msgid "Path %s not writable"
msgstr "Path %s not writable"
-#: classes/GemsEscort.php:860
+#: classes/GemsEscort.php:876
#, php-format
msgid "User: %s"
msgstr "User: %s"
-#: classes/GemsEscort.php:884
+#: classes/GemsEscort.php:900
msgid "version"
msgstr "version"
-#: classes/GemsEscort.php:1405
+#: classes/GemsEscort.php:1330
msgid "Take note: your session has expired, your inputs where not saved. Please check the input data and try again"
msgstr "Take note: your session has expired, your inputs where not saved. Please check the input data and try again"
-#: classes/GemsEscort.php:1526
+#: classes/GemsEscort.php:1454
msgid "Please check back later."
msgstr "Please check back later."
-#: classes/GemsEscort.php:1528
-#: classes/GemsEscort.php:1531
-#: classes/GemsEscort.php:1532
+#: classes/GemsEscort.php:1456
+#: classes/GemsEscort.php:1460
+#: classes/GemsEscort.php:1461
msgid "System is in maintenance mode"
msgstr "System is in maintenance mode"
-#: classes/GemsEscort.php:1546
+#: classes/GemsEscort.php:1470
msgid "No access to site."
msgstr "No access to site."
-#: classes/GemsEscort.php:1548
-#: classes/GemsEscort.php:1584
+#: classes/GemsEscort.php:1472
+#: classes/GemsEscort.php:1508
msgid "You have no access to this site."
msgstr "You have no access to this site."
-#: classes/GemsEscort.php:1564
+#: classes/GemsEscort.php:1488
msgid "No access to page"
msgstr "No access to page"
-#: classes/GemsEscort.php:1566
+#: classes/GemsEscort.php:1490
#, php-format
msgid "Access to this page is not allowed for current role: %s."
msgstr "Access to this page is not allowed for current role: %s."
-#: classes/GemsEscort.php:1571
-#: classes/GemsEscort.php:1582
+#: classes/GemsEscort.php:1495
+#: classes/GemsEscort.php:1506
msgid "You are no longer logged in."
msgstr "You are no longer logged in."
-#: classes/GemsEscort.php:1572
+#: classes/GemsEscort.php:1496
msgid "You must login to access this page."
msgstr "You must login to access this page."
@@ -77,15 +77,11 @@
msgid "Database needs to be updated!"
msgstr "Database needs to be updated!"
-#: classes/Gems/Auth.php:107
-msgid "Please update the database"
-msgstr "Please update the database"
-
-#: classes/Gems/Auth.php:174
+#: classes/Gems/Auth.php:225
msgid "Wrong password."
msgstr "Wrong password."
-#: classes/Gems/Auth.php:177
+#: classes/Gems/Auth.php:228
msgid "Combination of username password not found."
msgstr "Combination of username password not found."
@@ -175,7 +171,7 @@
msgstr "Roles"
#: classes/Gems/Menu.php:196
-#: classes/Gems/Menu.php:337
+#: classes/Gems/Menu.php:345
msgid "Assigned"
msgstr "Assigned"
@@ -203,181 +199,202 @@
msgid "Maintenance"
msgstr "Maintenance"
-#: classes/Gems/Menu.php:227
+#: classes/Gems/Menu.php:218
+msgid "Upgrade"
+msgstr "Upgrade"
+
+#: classes/Gems/Menu.php:219
+#: classes/Gems/Menu.php:318
+msgid "Show"
+msgstr "Show"
+
+#: classes/Gems/Menu.php:220
+msgid "Execute all"
+msgstr "Execute all"
+
+#: classes/Gems/Menu.php:221
+msgid "Execute this"
+msgstr "Execute this"
+
+#: classes/Gems/Menu.php:222
+msgid "Execute from here"
+msgstr "Execute from here"
+
+#: classes/Gems/Menu.php:223
+msgid "Execute to here"
+msgstr "Execute to here"
+
+#: classes/Gems/Menu.php:235
#, php-format
msgid "Stand-alone privilige: %s"
msgstr "Stand-alone privilige: %s"
-#: classes/Gems/Menu.php:234
+#: classes/Gems/Menu.php:242
msgid "Logon"
msgstr "Logon"
-#: classes/Gems/Menu.php:235
+#: classes/Gems/Menu.php:243
msgid "Lost password"
msgstr "Lost password"
-#: classes/Gems/Menu.php:236
+#: classes/Gems/Menu.php:244
msgid "Your account"
msgstr "Your account"
-#: classes/Gems/Menu.php:237
+#: classes/Gems/Menu.php:245
msgid "Activity overview"
msgstr "Activity overview"
-#: classes/Gems/Menu.php:238
+#: classes/Gems/Menu.php:246
msgid "Change password"
msgstr "Change password"
-#: classes/Gems/Menu.php:239
-#: classes/Gems/Menu.php:279
-#: classes/Gems/Menu.php:314
+#: classes/Gems/Menu.php:247
+#: classes/Gems/Menu.php:287
+#: classes/Gems/Menu.php:322
msgid "Token"
msgstr "Token"
-#: classes/Gems/Menu.php:240
+#: classes/Gems/Menu.php:248
msgid "Logoff"
msgstr "Logoff"
-#: classes/Gems/Menu.php:275
+#: classes/Gems/Menu.php:283
msgid "Track"
msgstr "Track"
-#: classes/Gems/Menu.php:282
-#: classes/Gems/Menu.php:302
-#: classes/Gems/Menu.php:333
+#: classes/Gems/Menu.php:290
+#: classes/Gems/Menu.php:310
+#: classes/Gems/Menu.php:341
msgid "Add"
msgstr "Add"
-#: classes/Gems/Menu.php:286
-#: classes/Gems/Menu.php:369
+#: classes/Gems/Menu.php:294
+#: classes/Gems/Menu.php:377
msgid "Preview"
msgstr "Preview"
-#: classes/Gems/Menu.php:293
+#: classes/Gems/Menu.php:301
msgid "Tracks"
msgstr "Tracks"
-#: classes/Gems/Menu.php:306
+#: classes/Gems/Menu.php:314
msgid "Assignments"
msgstr "Assignments"
-#: classes/Gems/Menu.php:310
-msgid "Show"
-msgstr "Show"
-
-#: classes/Gems/Menu.php:318
+#: classes/Gems/Menu.php:326
msgid "Edit"
msgstr "Edit"
-#: classes/Gems/Menu.php:322
+#: classes/Gems/Menu.php:330
msgid "Delete"
msgstr "Delete"
-#: classes/Gems/Menu.php:327
+#: classes/Gems/Menu.php:335
msgid "Surveys"
msgstr "Surveys"
-#: classes/Gems/Menu.php:359
+#: classes/Gems/Menu.php:367
msgid "Fill in"
msgstr "Fill in"
-#: classes/Gems/Menu.php:363
+#: classes/Gems/Menu.php:371
msgid "Print PDF"
msgstr "Print PDF"
-#: classes/Gems/Menu.php:366
+#: classes/Gems/Menu.php:374
msgid "E-Mail now!"
msgstr "E-Mail now!"
-#: classes/Gems/Menu.php:372
+#: classes/Gems/Menu.php:380
msgid "Answers"
msgstr "Answers"
-#: classes/Gems/Menu.php:510
+#: classes/Gems/Menu.php:518
msgid "Respondents"
msgstr "Patients"
-#: classes/Gems/Menu.php:513
+#: classes/Gems/Menu.php:521
msgid "Overview"
msgstr "Overview"
-#: classes/Gems/Menu.php:520
+#: classes/Gems/Menu.php:528
msgid "Project"
msgstr "Project"
-#: classes/Gems/Menu.php:523
+#: classes/Gems/Menu.php:531
msgid "Setup"
msgstr "Setup"
-#: classes/Gems/Menu.php:526
+#: classes/Gems/Menu.php:534
msgid "Mail"
msgstr "Mail"
-#: classes/Gems/Menu.php:529
+#: classes/Gems/Menu.php:537
msgid "Track Builder"
msgstr "Track Builder"
-#: classes/Gems/Menu.php:538
+#: classes/Gems/Menu.php:546
msgid "Contact"
msgstr "Contact"
-#: classes/Gems/Menu.php:551
+#: classes/Gems/Menu.php:559
msgid "Changelog"
msgstr "Changelog"
-#: classes/Gems/Model.php:106
+#: classes/Gems/Model.php:190
msgid "Respondent nr"
msgstr "Patient nr"
-#: classes/Gems/Model.php:107
+#: classes/Gems/Model.php:191
msgid "Opened"
msgstr "Opened"
-#: classes/Gems/Model.php:108
+#: classes/Gems/Model.php:192
msgid "Consent"
msgstr "Consent"
-#: classes/Gems/Model.php:110
+#: classes/Gems/Model.php:194
msgid "E-Mail"
msgstr "E-Mail"
-#: classes/Gems/Model.php:115
+#: classes/Gems/Model.php:199
msgid "Gender"
msgstr "Gender"
-#: classes/Gems/Model.php:116
+#: classes/Gems/Model.php:200
msgid "First name"
msgstr "First name"
-#: classes/Gems/Model.php:117
+#: classes/Gems/Model.php:201
msgid "Surname prefix"
msgstr "Surname prefix"
-#: classes/Gems/Model.php:118
+#: classes/Gems/Model.php:202
msgid "Last name"
msgstr "Last name"
-#: classes/Gems/Model.php:120
+#: classes/Gems/Model.php:204
msgid "Name"
msgstr "Name"
-#: classes/Gems/Model.php:123
+#: classes/Gems/Model.php:207
msgid "Street"
msgstr "Street"
-#: classes/Gems/Model.php:124
+#: classes/Gems/Model.php:208
msgid "Zipcode"
msgstr "Zipcode"
-#: classes/Gems/Model.php:125
+#: classes/Gems/Model.php:209
msgid "City"
msgstr "City"
-#: classes/Gems/Model.php:127
+#: classes/Gems/Model.php:211
msgid "Phone"
msgstr "Phone"
-#: classes/Gems/Model.php:129
+#: classes/Gems/Model.php:213
msgid "Birthday"
msgstr "Birthday"
@@ -385,6 +402,20 @@
msgid "Checks performed"
msgstr "Checks performed"
+#: classes/Gems/UpgradesAbstract.php:164
+msgid "Already at max. level."
+msgstr "Already at max. level."
+
+#: classes/Gems/UpgradesAbstract.php:171
+#, php-format
+msgid "Trying upgrade for %s from level %s to level %s"
+msgstr "Trying upgrade for %s from level %s to level %s"
+
+#: classes/Gems/UpgradesAbstract.php:179
+#, php-format
+msgid "Trying upgrade for %s to level %s: %s"
+msgstr "Trying upgrade for %s to level %s: %s"
+
#: classes/Gems/Controller/BrowseEditAction.php:344
#, php-format
msgid "New %s..."
@@ -473,7 +504,8 @@
msgstr "Unknown %s."
#: classes/Gems/Controller/ModelActionAbstract.php:97
-#: classes/Gems/Default/AskAction.php:149
+#: classes/Gems/Default/AskAction.php:150
+#: classes/Gems/Default/DatabaseAction.php:524
msgid "Cancel"
msgstr "Cancel"
@@ -481,99 +513,99 @@
msgid "No data found."
msgstr "No data found."
-#: classes/Gems/Default/AskAction.php:127
+#: classes/Gems/Default/AskAction.php:128
#, php-format
msgid "Welcome %s,"
msgstr "Welcome %s,"
-#: classes/Gems/Default/AskAction.php:130
+#: classes/Gems/Default/AskAction.php:131
#, php-format
msgid "Thank you for answering the survey for token %s."
msgstr "Thank you for answering the survey for token %s."
-#: classes/Gems/Default/AskAction.php:131
+#: classes/Gems/Default/AskAction.php:132
msgid "Please click the button below to answer the next survey."
msgstr "Please click the button below to answer the next survey."
-#: classes/Gems/Default/AskAction.php:136
+#: classes/Gems/Default/AskAction.php:137
#, php-format
msgid "Please click the button below to answer the survey for token %s."
msgstr "Please click the button below to answer the survey for token %s."
-#: classes/Gems/Default/AskAction.php:140
+#: classes/Gems/Default/AskAction.php:141
#, php-format
msgid "Wait one second to open the survey automatically or click on Cancel to stop."
msgid_plural "Wait %d seconds to open the survey automatically or click on Cancel to stop."
msgstr[0] "Wait one second to open the survey automatically or click on Cancel to stop."
msgstr[1] "Wait %d seconds to open the survey automatically or click on Cancel to stop."
-#: classes/Gems/Default/AskAction.php:155
+#: classes/Gems/Default/AskAction.php:156
#, php-format
msgid "After this survey there is one other survey we would like you to answer."
msgid_plural "After this survey there are another %d surveys we would like you to answer."
msgstr[0] "After this survey there is one other survey we would like you to answer."
msgstr[1] "After this survey there are another %d surveys we would like you to answer."
-#: classes/Gems/Default/AskAction.php:165
+#: classes/Gems/Default/AskAction.php:166
#, php-format
msgid "The survey for token %s is no longer active."
msgstr "The survey for token %s is no longer active."
-#: classes/Gems/Default/AskAction.php:169
+#: classes/Gems/Default/AskAction.php:170
#, php-format
msgid "The token %s does not exist."
msgstr "The token %s does not exist."
-#: classes/Gems/Default/AskAction.php:171
+#: classes/Gems/Default/AskAction.php:172
#, php-format
msgid "Thank you for answering. At the moment we have no further surveys for you to take."
msgstr "Thank you for answering. At the moment we have no further surveys for you to take."
-#: classes/Gems/Default/AskAction.php:173
+#: classes/Gems/Default/AskAction.php:174
#, php-format
msgid "The survey for token %s has been answered and no further surveys are open."
msgstr "The survey for token %s has been answered and no further surveys are open."
-#: classes/Gems/Default/AskAction.php:180
+#: classes/Gems/Default/AskAction.php:181
#, php-format
msgid "The token %s does not exist (any more)."
msgstr "The token %s does not exist (any more)."
-#: classes/Gems/Default/AskAction.php:194
+#: classes/Gems/Default/AskAction.php:198
#, php-format
msgid "Enter your %s token"
msgstr "Enter your %s token"
-#: classes/Gems/Default/AskAction.php:199
+#: classes/Gems/Default/AskAction.php:203
#, php-format
msgid "Enter tokens as %s."
msgstr "Enter tokens as %s."
-#: classes/Gems/Default/AskAction.php:209
+#: classes/Gems/Default/AskAction.php:213
msgid "OK"
msgstr "OK"
-#: classes/Gems/Default/AskAction.php:225
+#: classes/Gems/Default/AskAction.php:229
msgid "Tokens identify a survey that was assigned to you personally."
msgstr "Tokens identify a survey that was assigned to you personally."
-#: classes/Gems/Default/AskAction.php:225
+#: classes/Gems/Default/AskAction.php:229
msgid "Entering the token and pressing OK will open that survey."
msgstr "Entering the token and pressing OK will open that survey."
-#: classes/Gems/Default/AskAction.php:229
+#: classes/Gems/Default/AskAction.php:233
msgid "After answering the survey you will be logged off automatically."
msgstr "After answering the survey you will be logged off automatically."
-#: classes/Gems/Default/AskAction.php:231
+#: classes/Gems/Default/AskAction.php:235
msgid "After answering the survey you will return to the respondent overview screen."
msgstr "After answering the survey you will return to the paitent overview screen."
-#: classes/Gems/Default/AskAction.php:238
+#: classes/Gems/Default/AskAction.php:242
msgid "A token consists of two groups of four letters and numbers, separated by an optional hyphen. Tokens are case insensitive."
msgstr "A token consists of two groups of four letters and numbers, separated by an optional hyphen. Tokens are case insensitive."
-#: classes/Gems/Default/AskAction.php:239
+#: classes/Gems/Default/AskAction.php:243
msgid "The number zero and the letter O are treated as the same; the same goes for the number one and the letter L."
msgstr "The number zero and the letter O are treated as the same; the same goes for the number one and the letter L."
@@ -637,14 +669,18 @@
msgid "Links concerning this web application:"
msgstr "Links concerning this web application:"
-#: classes/Gems/Default/CronAction.php:136
+#: classes/Gems/Default/CronAction.php:148
msgid "Cron jobs turned off."
msgstr "Cron jobs turned off."
-#: classes/Gems/Default/CronAction.php:200
-msgid "No mails sent"
-msgstr "No mails sent"
+#: classes/Gems/Default/CronAction.php:218
+msgid "No mails sent."
+msgstr "No mails sent."
+#: classes/Gems/Default/CronAction.php:221
+msgid "On this test system all mail will be delivered to the from address."
+msgstr "On this test system all mail will be delivered to the from address."
+
#: classes/Gems/Default/DatabaseAction.php:64
#, php-format
msgid "Executed %2$s creation script %1$s:"
@@ -781,12 +817,12 @@
msgstr "Database object overview"
#: classes/Gems/Default/DatabaseAction.php:316
-#: classes/Gems/Default/DatabaseAction.php:362
+#: classes/Gems/Default/DatabaseAction.php:360
msgid "Level"
msgstr "Level"
#: classes/Gems/Default/DatabaseAction.php:317
-#: classes/Gems/Default/DatabaseAction.php:363
+#: classes/Gems/Default/DatabaseAction.php:361
msgid "Subtype"
msgstr "Subtype"
@@ -795,12 +831,12 @@
msgstr "To be executed"
#: classes/Gems/Default/DatabaseAction.php:320
-#: classes/Gems/Default/DatabaseAction.php:366
+#: classes/Gems/Default/DatabaseAction.php:364
msgid "Executed"
msgstr "Executed"
#: classes/Gems/Default/DatabaseAction.php:321
-#: classes/Gems/Default/DatabaseAction.php:367
+#: classes/Gems/Default/DatabaseAction.php:365
msgid "Finished"
msgstr "Finished"
@@ -837,114 +873,114 @@
msgid "Show patches"
msgstr "Show patches"
-#: classes/Gems/Default/DatabaseAction.php:356
+#: classes/Gems/Default/DatabaseAction.php:354
#, php-format
msgid "%d patch(es) executed."
msgstr "%d patch(es) executed."
-#: classes/Gems/Default/DatabaseAction.php:361
+#: classes/Gems/Default/DatabaseAction.php:359
msgid "Patch"
msgstr "Patch"
-#: classes/Gems/Default/DatabaseAction.php:365
+#: classes/Gems/Default/DatabaseAction.php:363
msgid "Query"
msgstr "Query"
-#: classes/Gems/Default/DatabaseAction.php:368
+#: classes/Gems/Default/DatabaseAction.php:366
msgid "Result"
msgstr "Result"
-#: classes/Gems/Default/DatabaseAction.php:392
+#: classes/Gems/Default/DatabaseAction.php:390
msgid "Patch maintenance"
msgstr "Patch maintenance"
-#: classes/Gems/Default/DatabaseAction.php:396
+#: classes/Gems/Default/DatabaseAction.php:394
msgid "Patch overview"
msgstr "Patch overview"
-#: classes/Gems/Default/DatabaseAction.php:458
+#: classes/Gems/Default/DatabaseAction.php:456
msgid "This database object does not exist. You cannot create it."
msgstr "This database object does not exist. You cannot create it."
-#: classes/Gems/Default/DatabaseAction.php:464
+#: classes/Gems/Default/DatabaseAction.php:462
msgid "This database object has no script. You cannot execute it."
msgstr "This database object has no script. You cannot execute it."
-#: classes/Gems/Default/DatabaseAction.php:475
+#: classes/Gems/Default/DatabaseAction.php:473
#, php-format
msgid "Run %s"
msgstr "Run %s"
-#: classes/Gems/Default/DatabaseAction.php:494
+#: classes/Gems/Default/DatabaseAction.php:492
#, php-format
msgid "Starting %d object creation scripts."
msgstr "Starting %d object creation scripts."
-#: classes/Gems/Default/DatabaseAction.php:499
+#: classes/Gems/Default/DatabaseAction.php:497
#, php-format
msgid "Finished %s creation script for object %d of %d"
msgstr "Finished %s creation script for object %d of %d"
-#: classes/Gems/Default/DatabaseAction.php:503
+#: classes/Gems/Default/DatabaseAction.php:501
msgid "All objects exist. Nothing was executed."
msgstr "All objects exist. Nothing was executed."
-#: classes/Gems/Default/DatabaseAction.php:509
+#: classes/Gems/Default/DatabaseAction.php:507
msgid "Create not-existing database objects"
msgstr "Create not-existing database objects"
-#: classes/Gems/Default/DatabaseAction.php:511
+#: classes/Gems/Default/DatabaseAction.php:509
#, php-format
msgid "One database object does not exist."
msgid_plural "These %d database objects do not exist."
msgstr[0] "One database object does not exist."
msgstr[1] "These %d database objects do not exist."
-#: classes/Gems/Default/DatabaseAction.php:512
+#: classes/Gems/Default/DatabaseAction.php:510
msgid "Are you sure you want to create it?"
msgid_plural "Are you sure you want to create them all?"
msgstr[0] "Are you sure you want to create it?"
msgstr[1] "Are you sure you want to create them all?"
-#: classes/Gems/Default/DatabaseAction.php:525
+#: classes/Gems/Default/DatabaseAction.php:523
msgid "All database objects exist. There is nothing to create."
msgstr "All database objects exist. There is nothing to create."
-#: classes/Gems/Default/DatabaseAction.php:538
+#: classes/Gems/Default/DatabaseAction.php:536
msgid "Separate multiple commands with semicolons (;)."
msgstr "Separate multiple commands with semicolons (;)."
-#: classes/Gems/Default/DatabaseAction.php:545
+#: classes/Gems/Default/DatabaseAction.php:543
msgid "Run"
msgstr "Run"
-#: classes/Gems/Default/DatabaseAction.php:554
+#: classes/Gems/Default/DatabaseAction.php:552
msgid "raw"
msgstr "raw"
-#: classes/Gems/Default/DatabaseAction.php:563
+#: classes/Gems/Default/DatabaseAction.php:561
#, php-format
msgid "Result set %s."
msgstr "Result set %s."
-#: classes/Gems/Default/DatabaseAction.php:586
+#: classes/Gems/Default/DatabaseAction.php:584
msgid "Execute raw SQL"
msgstr "Execute raw SQL"
-#: classes/Gems/Default/DatabaseAction.php:589
+#: classes/Gems/Default/DatabaseAction.php:587
msgid "Result sets"
msgstr "Result sets"
-#: classes/Gems/Default/DatabaseAction.php:614
+#: classes/Gems/Default/DatabaseAction.php:612
msgid "This database object does not exist. You cannot view it."
msgstr "This database object does not exist. You cannot view it."
-#: classes/Gems/Default/DatabaseAction.php:619
+#: classes/Gems/Default/DatabaseAction.php:617
#, php-format
msgid "The data in table %s"
msgstr "The data in table %s"
-#: classes/Gems/Default/DatabaseAction.php:620
+#: classes/Gems/Default/DatabaseAction.php:618
#, php-format
msgid "Contents of %s %s"
msgstr "Contents of %s %s"
@@ -968,7 +1004,7 @@
msgstr "%s records found."
#: classes/Gems/Default/ExportAction.php:174
-#: classes/Gems/Default/IndexAction.php:105
+#: classes/Gems/Default/IndexAction.php:162
#: classes/Gems/Default/MailJobAction.php:119
msgid "Organization"
msgstr "Organization"
@@ -996,73 +1032,87 @@
msgid "Administrative groups"
msgstr "Administrative groups"
-#: classes/Gems/Default/IndexAction.php:98
+#: classes/Gems/Default/IndexAction.php:83
+msgid "Enter your token..."
+msgstr "Enter your token..."
+
+#: classes/Gems/Default/IndexAction.php:124
#, php-format
msgid "Login to %s application"
msgstr "Login to %s application"
-#: classes/Gems/Default/IndexAction.php:117
-#: classes/Gems/Default/IndexAction.php:304
-msgid "Username"
-msgstr "Username"
+#: classes/Gems/Default/IndexAction.php:128
+msgid "Login"
+msgstr "Login"
-#: classes/Gems/Default/IndexAction.php:125
-#: classes/Gems/Default/MailServerAction.php:88
+#: classes/Gems/Default/IndexAction.php:145
+msgid "Back to login"
+msgstr "Back to login"
+
+#: classes/Gems/Default/IndexAction.php:183
msgid "Password"
msgstr "Password"
-#: classes/Gems/Default/IndexAction.php:134
-msgid "Login"
-msgstr "Login"
+#: classes/Gems/Default/IndexAction.php:198
+#, php-format
+msgid "Reset password for %s application"
+msgstr "Reset password for %s application"
-#: classes/Gems/Default/IndexAction.php:141
-msgid "Enter your token..."
-msgstr "Enter your token..."
+#: classes/Gems/Default/IndexAction.php:202
+msgid "Reset password"
+msgstr "Reset password"
-#: classes/Gems/Default/IndexAction.php:196
-#: classes/Gems/Default/IndexAction.php:244
+#: classes/Gems/Default/IndexAction.php:248
+msgid "Username"
+msgstr "Username"
+
+#: classes/Gems/Default/IndexAction.php:305
#, php-format
msgid "Login successful, welcome %s."
msgstr "Login successful, welcome %s."
-#: classes/Gems/Default/IndexAction.php:270
-msgid "Good bye: "
-msgstr "Good bye: "
-
-#: classes/Gems/Default/IndexAction.php:300
+#: classes/Gems/Default/IndexAction.php:335
#, php-format
-msgid "Reset password for %s application"
-msgstr "Reset password for %s application"
+msgid "Good bye: %s."
+msgstr "Good bye: %s."
-#: classes/Gems/Default/IndexAction.php:312
-msgid "Reset password"
-msgstr "Reset password"
+#: classes/Gems/Default/IndexAction.php:360
+msgid "Reset accepted, enter your new password."
+msgstr "Reset accepted, enter your new password."
-#: classes/Gems/Default/IndexAction.php:336
-msgid "No such user found or no e-mail address known"
-msgstr "No such user found or no e-mail address known"
+#: classes/Gems/Default/IndexAction.php:364
+msgid "This key timed out or does not belong to this user."
+msgstr "This key timed out or does not belong to this user."
-#: classes/Gems/Default/IndexAction.php:338
-msgid "Reset e-mail already sent, please try again after 24 hours"
-msgstr "Reset e-mail already sent, please try again after 24 hours"
+#: classes/Gems/Default/IndexAction.php:381
+msgid "Password reset requested"
+msgstr "Password reset requested"
-#: classes/Gems/Default/IndexAction.php:353
-msgid "Follow the instructions in the e-mail"
-msgstr "Follow the instructions in the e-mail"
+#: classes/Gems/Default/IndexAction.php:382
+#, php-format
+msgid "To reset your password for %s, please click this link: %s"
+msgstr "To reset your password for %s, please click this link: %s"
-#: classes/Gems/Default/IndexAction.php:355
-#: classes/Gems/Default/IndexAction.php:379
-msgid "Unable to send e-mail"
-msgstr "Unable to send e-mail"
+#: classes/Gems/Default/IndexAction.php:387
+msgid "We sent you an e-mail with a reset link. Click on the link in the e-mail."
+msgstr "We sent you an e-mail with a reset link. Click on the link in the e-mail."
-#: classes/Gems/Default/IndexAction.php:375
-msgid "An e-mail was sent containing your new password"
-msgstr "An e-mail was sent containing your new password"
+#: classes/Gems/Default/IndexAction.php:389
+msgid "Unable to send e-mail."
+msgstr "Unable to send e-mail."
-#: classes/Gems/Default/IndexAction.php:383
-msgid "Unknown request"
-msgstr "Unknown request"
+#: classes/Gems/Default/IndexAction.php:394
+msgid "No such user found or no e-mail address known or user cannot be reset."
+msgstr "No such user found or no e-mail address known or user cannot be reset."
+#: classes/Gems/Default/IndexAction.php:398
+msgid "We received your password reset key."
+msgstr "We received your password reset key."
+
+#: classes/Gems/Default/IndexAction.php:399
+msgid "Please enter the organization and username belonging to this key."
+msgstr "Please enter the organization and username belonging to this key."
+
#: classes/Gems/Default/InvitationAction.php:52
msgid "Invite"
msgstr "Invite"
@@ -1133,7 +1183,6 @@
msgstr "Action"
#: classes/Gems/Default/LogAction.php:165
-#: classes/Gems/Default/MailTemplateAction.php:65
msgid "Message"
msgstr "Message"
@@ -1171,7 +1220,6 @@
msgstr "New automatic mail job..."
#: classes/Gems/Default/MailJobAction.php:100
-#: classes/Gems/Default/MailLogAction.php:116
msgid "Template"
msgstr "Template"
@@ -1340,10 +1388,16 @@
msgstr "User ID"
#: classes/Gems/Default/MailServerAction.php:90
+#: classes/Gems/Default/OptionAction.php:112
+#: classes/Gems/Default/OptionAction.php:117
+#: classes/Gems/Default/SourceAction.php:95
+#: classes/Gems/Default/StaffAction.php:144
msgid "Repeat password"
msgstr "Repeat password"
#: classes/Gems/Default/MailServerAction.php:91
+#: classes/Gems/Default/SourceAction.php:74
+#: classes/Gems/Default/StaffAction.php:118
msgid "Enter only when changing"
msgstr "Enter only when changing the password"
@@ -1358,6 +1412,7 @@
msgstr "Email servers"
#: classes/Gems/Default/MailTemplateAction.php:75
+#: classes/Gems/Default/StaffAction.php:228
msgid "(all organizations)"
msgstr "(all organizations)"
@@ -1371,34 +1426,38 @@
msgid "Email templates"
msgstr "Email templates"
-#: classes/Gems/Default/OptionAction.php:75
-#: classes/Gems/Default/OrganizationAction.php:128
-#: classes/Gems/Default/RespondentAction.php:173
-#: classes/Gems/Default/StaffAction.php:196
-msgid "Language"
-msgstr "Language"
+#: classes/Gems/Default/OptionAction.php:84
+msgid "You are not allowed to change your password."
+msgstr "You are not allowed to change your password."
-#: classes/Gems/Default/OptionAction.php:94
+#: classes/Gems/Default/OptionAction.php:96
msgid "Current password"
msgstr "Current password"
-#: classes/Gems/Default/OptionAction.php:105
-#: classes/Gems/Default/OptionAction.php:121
+#: classes/Gems/Default/OptionAction.php:106
+#: classes/Gems/Default/OptionAction.php:122
msgid "New password"
msgstr "New password"
-#: classes/Gems/Default/OptionAction.php:146
+#: classes/Gems/Default/OptionAction.php:141
msgid "New password is active."
msgstr "New password is active."
-#: classes/Gems/Default/OptionAction.php:152
+#: classes/Gems/Default/OptionAction.php:146
msgid "Caps Lock seems to be on!"
msgstr "Caps Lock seems to be on!"
-#: classes/Gems/Default/OptionAction.php:191
+#: classes/Gems/Default/OptionAction.php:190
msgid "Login Name"
msgstr "Login Name"
+#: classes/Gems/Default/OptionAction.php:197
+#: classes/Gems/Default/OrganizationAction.php:140
+#: classes/Gems/Default/RespondentAction.php:173
+#: classes/Gems/Default/StaffAction.php:213
+msgid "Language"
+msgstr "Language"
+
#: classes/Gems/Default/OptionAction.php:207
#, php-format
msgid "Options"
@@ -1426,61 +1485,72 @@
msgid "Item"
msgstr "Item"
-#: classes/Gems/Default/OrganizationAction.php:93
+#: classes/Gems/Default/OrganizationAction.php:105
msgid "Cookies must be enabled."
msgstr "Cookies must be enabled."
-#: classes/Gems/Default/OrganizationAction.php:96
+#: classes/Gems/Default/OrganizationAction.php:108
msgid "Invalid organization."
msgstr "Invalid organization."
-#: classes/Gems/Default/OrganizationAction.php:117
+#: classes/Gems/Default/OrganizationAction.php:129
msgid "Url"
msgstr "Url"
-#: classes/Gems/Default/OrganizationAction.php:118
+#: classes/Gems/Default/OrganizationAction.php:130
msgid "Task"
msgstr "Task"
-#: classes/Gems/Default/OrganizationAction.php:119
+#: classes/Gems/Default/OrganizationAction.php:131
msgid "Contact name"
msgstr "Contact name"
-#: classes/Gems/Default/OrganizationAction.php:120
+#: classes/Gems/Default/OrganizationAction.php:132
msgid "Contact email"
msgstr "Contact email"
-#: classes/Gems/Default/OrganizationAction.php:123
+#: classes/Gems/Default/OrganizationAction.php:135
msgid "Style"
msgstr "Style"
-#: classes/Gems/Default/OrganizationAction.php:138
+#: classes/Gems/Default/OrganizationAction.php:145
+msgid "Allow new respondents"
+msgstr "Allow new patients"
+
+#: classes/Gems/Default/OrganizationAction.php:150
msgid "Greeting"
msgstr "Greeting"
-#: classes/Gems/Default/OrganizationAction.php:138
-#: classes/Gems/Default/OrganizationAction.php:139
+#: classes/Gems/Default/OrganizationAction.php:150
+#: classes/Gems/Default/OrganizationAction.php:151
msgid "For emails and token forward screen."
msgstr "For emails and token forward screen."
-#: classes/Gems/Default/OrganizationAction.php:139
+#: classes/Gems/Default/OrganizationAction.php:151
msgid "Signature"
msgstr "Signature"
-#: classes/Gems/Default/OrganizationAction.php:155
+#: classes/Gems/Default/OrganizationAction.php:153
+msgid "Accessible by"
+msgstr "Accessible by"
+
+#: classes/Gems/Default/OrganizationAction.php:153
+msgid "Checked organizations see this organizations respondents."
+msgstr "Checked organizations see this organizations patients."
+
+#: classes/Gems/Default/OrganizationAction.php:172
msgid "organization"
msgid_plural "organizations"
msgstr[0] "organization"
msgstr[1] "organizations"
-#: classes/Gems/Default/OrganizationAction.php:160
+#: classes/Gems/Default/OrganizationAction.php:177
msgid "Participating organizations"
msgstr "Participating organizations"
#: classes/Gems/Default/OverviewPlanAction.php:115
#: classes/Gems/Default/ProjectSurveysAction.php:88
#: classes/Gems/Default/SurveyAction.php:203
-#: classes/Gems/Default/SurveyMaintenanceAction.php:409
msgid "survey"
msgid_plural "surveys"
msgstr[0] "survey"
@@ -1614,14 +1684,12 @@
#: classes/Gems/Default/ProjectSurveysAction.php:69
#: classes/Gems/Default/ProjectTracksAction.php:67
#: classes/Gems/Default/SurveyAction.php:193
-#: classes/Gems/Default/TrackAction.php:329
msgid "From"
msgstr "From"
#: classes/Gems/Default/ProjectSurveysAction.php:70
#: classes/Gems/Default/ProjectTracksAction.php:68
#: classes/Gems/Default/SurveyAction.php:195
-#: classes/Gems/Default/TrackAction.php:331
msgid "Until"
msgstr "Until"
@@ -1630,12 +1698,10 @@
msgstr "Active surveys"
#: classes/Gems/Default/ProjectTracksAction.php:65
-#: classes/Gems/Default/TrackAction.php:328
msgid "Survey #"
msgstr "Survey #"
#: classes/Gems/Default/ProjectTracksAction.php:85
-#: classes/Gems/Default/TrackAction.php:451
msgid "track"
msgid_plural "tracks"
msgstr[0] "track"
@@ -1695,7 +1761,7 @@
#: classes/Gems/Default/ReceptionAction.php:94
msgid "This reception code can be assigned to a respondent."
-msgstr "This reception code can be assigned to a respondent."
+msgstr "This reception code can be assigned to a patient."
#: classes/Gems/Default/ReceptionAction.php:95
msgid "For tracks"
@@ -1801,8 +1867,6 @@
msgstr "Treatment"
#: classes/Gems/Default/RespondentAction.php:230
-#: classes/Gems/Default/TrackAction.php:131
-#: classes/Gems/Default/TrackAction.php:475
msgid "Rejection code"
msgstr "Rejection code"
@@ -1815,45 +1879,39 @@
msgstr "Patient deleted"
#: classes/Gems/Default/RespondentAction.php:291
-#: classes/Gems/Default/TrackAction.php:404
msgid "Choose a reception code to delete."
msgstr "Choose a reception code to delete."
-#: classes/Gems/Default/RespondentAction.php:355
+#: classes/Gems/Default/RespondentAction.php:335
msgid "respondent"
msgid_plural "respondents"
msgstr[0] "patient"
msgstr[1] "patients"
-#: classes/Gems/Default/RespondentAction.php:398
+#: classes/Gems/Default/RespondentAction.php:392
msgid "Please settle the informed consent form for this respondent."
msgstr "Please settle the informed consent form for this patient."
#: classes/Gems/Default/RespondentPlanAction.php:67
#: classes/Gems/Default/SurveyAction.php:171
-#: classes/Gems/Default/TrackAction.php:296
msgid "Show respondent"
msgstr "Show patient"
#: classes/Gems/Default/RespondentPlanAction.php:73
-#: classes/Gems/Default/TrackAction.php:265
-#: classes/Gems/Default/TrackAction.php:284
msgid "Show track"
msgstr "Show track"
#: classes/Gems/Default/RespondentPlanAction.php:136
-#: classes/Gems/Default/TrackAction.php:316
msgid " of "
msgstr " of "
#: classes/Gems/Default/RespondentPlanAction.php:137
-#: classes/Gems/Default/TrackAction.php:317
msgid "Progress"
msgstr "Progress"
#: classes/Gems/Default/RespondentPlanAction.php:144
msgid "Respondent planning"
-msgstr "Respondent planning"
+msgstr "Patient planning"
#: classes/Gems/Default/RoleAction.php:175
msgid "Illegal name"
@@ -1997,23 +2055,23 @@
msgid "Are you sure you want to synchronize all survey sources?"
msgstr "Are you sure you want to synchronize all survey sources?"
-#: classes/Gems/Default/StaffAction.php:137
+#: classes/Gems/Default/StaffAction.php:158
msgid "If checked the user will logoff when answering a survey."
msgstr "If checked the user will logoff when answering a survey."
-#: classes/Gems/Default/StaffAction.php:153
+#: classes/Gems/Default/StaffAction.php:174
msgid "You are not allowed to edit this staff member."
msgstr "You are not allowed to edit this staff member."
-#: classes/Gems/Default/StaffAction.php:191
+#: classes/Gems/Default/StaffAction.php:208
msgid "Primary function"
msgstr "Primary function"
-#: classes/Gems/Default/StaffAction.php:197
+#: classes/Gems/Default/StaffAction.php:214
msgid "Logout on survey"
msgstr "Logout on survey"
-#: classes/Gems/Default/StaffAction.php:275
+#: classes/Gems/Default/StaffAction.php:283
msgid "staff member"
msgid_plural "staff members"
msgstr[0] "staff member"
@@ -2116,42 +2174,42 @@
msgid "Checking survey results for the %s survey."
msgstr "Checking survey results for the %s survey."
-#: classes/Gems/Default/SurveyMaintenanceAction.php:348
+#: classes/Gems/Default/SurveyMaintenanceAction.php:347
msgid "Source"
msgstr "Source"
-#: classes/Gems/Default/SurveyMaintenanceAction.php:349
+#: classes/Gems/Default/SurveyMaintenanceAction.php:348
msgid "Status in source"
msgstr "Status in source"
-#: classes/Gems/Default/SurveyMaintenanceAction.php:353
+#: classes/Gems/Default/SurveyMaintenanceAction.php:352
msgid "Active in source"
msgstr "Active in source"
-#: classes/Gems/Default/SurveyMaintenanceAction.php:354
+#: classes/Gems/Default/SurveyMaintenanceAction.php:353
#, php-format
msgid "Active in %s"
msgstr "Active in %s"
-#: classes/Gems/Default/SurveyMaintenanceAction.php:361
+#: classes/Gems/Default/SurveyMaintenanceAction.php:360
msgid "Single"
msgstr "Single"
-#: classes/Gems/Default/SurveyMaintenanceAction.php:394
+#: classes/Gems/Default/SurveyMaintenanceAction.php:393
#, php-format
msgid "%d times in track."
msgstr "%d times in track."
-#: classes/Gems/Default/SurveyMaintenanceAction.php:396
+#: classes/Gems/Default/SurveyMaintenanceAction.php:395
#, php-format
msgid "%d times in %d track(s)."
msgstr "%d times in %d track(s)."
-#: classes/Gems/Default/SurveyMaintenanceAction.php:400
+#: classes/Gems/Default/SurveyMaintenanceAction.php:399
msgid "Not used in track."
msgstr "Not used in track."
-#: classes/Gems/Default/SurveyMaintenanceAction.php:402
+#: classes/Gems/Default/SurveyMaintenanceAction.php:401
msgid "Not used in tracks."
msgstr "Not used in tracks."
@@ -2242,22 +2300,22 @@
msgid "(all fillers)"
msgstr "(all fillers)"
-#: classes/Gems/Default/TokenPlanAction.php:358
+#: classes/Gems/Defaul...
[truncated message content] |