You can subscribe to this list here.
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(84) |
Oct
(70) |
Nov
(164) |
Dec
(71) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
(52) |
Feb
(77) |
Mar
(70) |
Apr
(58) |
May
(81) |
Jun
(74) |
Jul
(87) |
Aug
(30) |
Sep
(45) |
Oct
(37) |
Nov
(51) |
Dec
(31) |
2013 |
Jan
(47) |
Feb
(29) |
Mar
(40) |
Apr
(33) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <gem...@li...> - 2011-09-16 08:25:49
|
Revision: 30 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=30&view=rev Author: mennodekker Date: 2011-09-16 08:25:43 +0000 (Fri, 16 Sep 2011) Log Message: ----------- Fixed table create script Modified Paths: -------------- trunk/library/configs/db/tables/gems__staff.20.sql Modified: trunk/library/configs/db/tables/gems__staff.20.sql =================================================================== --- trunk/library/configs/db/tables/gems__staff.20.sql 2011-09-16 08:03:15 UTC (rev 29) +++ trunk/library/configs/db/tables/gems__staff.20.sql 2011-09-16 08:25:43 UTC (rev 30) @@ -11,6 +11,7 @@ gsf_active boolean not null default 1, gsf_failed_logins int(11) unsigned not null default 0, + gsf_last_failed timestamp null, gsf_id_primary_group bigint unsigned references gems__groups (ggp_id_group), gsf_id_organization bigint not null This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-16 08:03:27
|
Revision: 29 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=29&view=rev Author: mennodekker Date: 2011-09-16 08:03:15 +0000 (Fri, 16 Sep 2011) Log Message: ----------- Fixed #6: Add export options for collected data Modified Paths: -------------- trunk/library/classes/Gems/Menu.php Added Paths: ----------- trunk/library/classes/Gems/Default/ExportAction.php trunk/library/classes/Gems/Export/ trunk/library/classes/Gems/Export/Excel.php trunk/library/classes/Gems/Export/ExportAbstract.php trunk/library/classes/Gems/Export/ExportInterface.php trunk/library/classes/Gems/Export/ExportModel.php trunk/library/classes/Gems/Export/Spss.php trunk/library/classes/Gems/Export.php trunk/library/controllers/ExportController.php Added: trunk/library/classes/Gems/Default/ExportAction.php =================================================================== --- trunk/library/classes/Gems/Default/ExportAction.php (rev 0) +++ trunk/library/classes/Gems/Default/ExportAction.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,270 @@ +<?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 Gems + * @subpackage Default + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: DatabaseAction.php 28 2011-09-16 06:24:15Z mennodekker $ + */ + +/** + * Standard controller for database creation and maintenance. + * + * @package Gems + * @subpackage Default + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.0 + */ +class Gems_Default_ExportAction extends Gems_Controller_Action +{ + /** + * @var Gems_Export + */ + public $export; + + /** + * + * @var Zend_Locale + */ + public $locale; + + public function __construct(Zend_Controller_Request_Abstract $request, Zend_Controller_Response_Abstract $response, array $invokeArgs = array()) + { + parent::__construct($request, $response, $invokeArgs); + $this->export = $this->loader->getExport(); + + //Add this controller to the export so it can render view when needed + $this->export->controller = $this; + } + + public function getTopic($count = 1) + { + return $this->_('Data'); + } + + public function getTopicTitle() + { + return $this->_('Export data'); + } + + public function indexAction() + { + $this->initHtml(); + //Hacked around to get a self-refreshing form, quite hardcoded but fine for now + if ($form = $this->processForm()) { + if (!$this->getRequest()->isPost() || $form->getElement('export')->isChecked()) { + if ($form->getElement('export')->isChecked()) { + $data = $form->getValues(); + $this->handleExport($data); + } + $this->html->h3($this->getTopicTitle()); + $div = $this->html->div(array('id' => 'mainform')); + $div[] = $form; + } else { + Zend_Layout::resetMvcInstance(); + $this->view->addHelperPath('Gems/JQuery/View/Helper', 'Gems_JQuery_View_Helper'); + $this->view->addHelperPath('ZendX/JQuery/View/Helper', 'ZendX_JQuery_View_Helper'); + $this->html->raw($form->render($this->view)); + + //Now add all onload actions to make the form still work + $actions = $this->view->jQuery()->getOnLoadActions(); + $this->html->raw('<script type="text/javascript">'); + foreach($actions as $action) { + $this->html->raw($action); + } + $this->html->raw('</script>'); + } + } + } + + /** + * Handle the form + * + * @param type $saveLabel + * @param type $data + * @return type + */ + public function processForm($saveLabel = null, $data = null) + { + $request = $this->getRequest(); + + if ($request->isPost()) { + $data = $request->getPost() + (array) $data; + } else { + //Set the defaults for the form here + $data = $this->export->getDefaults(); + } + + $form = $this->getForm($data); + + $form->setAttrib('id', 'autosubmit'); + $form->setAutoSubmit(MUtil_Html::attrib('href', array('action' => 'index', MUtil_Model::TEXT_FILTER => null, 'RouteReset' => true)), 'mainform'); + //$this->html[] = new Gems_JQuery_AutoSubmitForm(MUtil_Html::attrib('href', array('action' => 'index', MUtil_Model::TEXT_FILTER => null, 'RouteReset' => true)), 'mainform', $form); + + if ($request->isPost()) { + $form->populate($data); + } + + if ($data) { + $form->populate($data); + } + return $form; + } + + /** + * Retrieve the form + * + * @param array $data + * @return Gems_Form + */ + public function getForm(&$data) + { + //Read some data from tables, initialize defaults... + $surveys = $this->db->fetchPairs('SELECT gsu_id_survey, gsu_survey_name FROM gems__surveys WHERE gsu_active = 1 ORDER BY gsu_survey_name'); + $organizations = $this->escort->getAllowedOrganizations(); + $types = $this->export->getExportClasses(); + + //Create the basic form + $form = new Gems_Form_TableForm(); + $form->loadDefaultDecorators(); + $form->removeDecorator('TabPane'); + + //Start adding elements + $element = new Zend_Form_Element_Select('sid'); + $element->setLabel($this->_('Survey')) + ->setMultiOptions($surveys); + $elements[] = $element; + + //Add a field to the form showing the record count. If this is too slow for large recordsets + //then remove it or make it more efficient + unset($data['records']); + if (isset($data['sid'])) { + $gsu_id = intval($data['sid']); + $survey = $this->loader->getTracker()->getSurvey($gsu_id); + + $filter = $this->_getFilter($data); + $answers = $survey->getRawTokenAnswerRows($filter); + } else { + $answers = array(); + } + $element = new MUtil_Form_Element_Exhibitor('records'); + $element->setValue(sprintf($this->_('%s records found.'), count($answers))); + $elements[] = $element; + + $element = new Zend_Form_Element_MultiCheckbox('oid'); + $element->setLabel($this->_('Organization')) + ->setMultiOptions($organizations); + $elements[] = $element; + $element = new Gems_JQuery_Form_Element_ToggleCheckboxes('toggleOrg', array('selector'=>'input[name^=oid]')); + $element->setLabel('Toggle'); + $elements[] = $element; + + $element = new Zend_Form_Element_Select('type'); + $element->setLabel($this->_('Export to')) + ->setMultiOptions($types); + $elements[] = $element; + + //Add all elements to the form + $form->addElements($elements); + unset($elements); + + //Now make a change for the selected export type + if (isset($data['type'])) { + $exportClass = $this->export->getExport($data['type']); + $formFields = $exportClass->getFormElements($form, $data); + $exportName = $exportClass->getName(); + //Now add a hidden field so we know that when this is present in the $data + //we don't need to set the defaults + $formFields[] = new Zend_Form_Element_Hidden($exportName); + foreach ($formFields as $formField) { + $formField->setBelongsTo($exportName); + $form->addElement($formField); + } + + if (!isset($data[$exportName])) { + $data[$exportName] = $exportClass->getDefaults(); + } + } + + //Finally create a submit button and add to the form + $element = new Zend_Form_Element_Submit('export'); + $element->setLabel('Export') + ->setAttrib('class', 'button'); + $form->addElement($element); + + return $form; + } + + /** + * Take care of exporting the data + * + * @param array $data + */ + public function handleExport($data) + { + $language = $this->locale->getLanguage(); + $emptyMsg = sprintf($this->_('No %s found.'), $this->getTopic(0)); + $gsu_id = intval($data['sid']); + $survey = $this->loader->getTracker()->getSurvey($gsu_id); + + $filter = $this->_getFilter($data); + $answers = $survey->getRawTokenAnswerRows($filter); + $answerModel = $survey->getAnswerModel($language); + //Now add the organization id => name mapping + $answerModel->set('organizationid', 'multiOptions', $this->escort->getAllowedOrganizations()); + + if (count($answers) === 0) { + $answers[0] = array('' => $emptyMsg); + } + + if (isset($data['type'])) { + //Do the logging + $message = join(', ', $data); + Gems_AccessLog::getLog()->log('export', $this->getRequest(), $message, null, true); + + //And delegate the export to the right class + $exportClass = $this->export->getExport($data['type']); + $exportClass->handleExport($data, $survey, $answers, $answerModel, $language); + } + } + + public function _getFilter($data) { + $filter = array(); + if (isset($data['oid'])) { + $filter['organizationid'] = $data['oid']; + } else { + //Invalid id so when nothing selected... we get nothing + //$filter['organizationid'] = '-1'; + } + $filter['consentcode'] = array_diff((array) $this->util->getConsentTypes(), (array) $this->util->getConsentRejected()); + + return $filter; + } +} \ No newline at end of file Added: trunk/library/classes/Gems/Export/Excel.php =================================================================== --- trunk/library/classes/Gems/Export/Excel.php (rev 0) +++ trunk/library/classes/Gems/Export/Excel.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,138 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: Excel.php 140 2011-09-15 14:18:14Z 175780 $ + */ + +/** + * Short description for Excel + * + * Long description for class Excel (if any)... + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_Export_Excel extends Gems_Export_ExportAbstract +{ + /** + * Return an array of Form Elements for this specific export + * + * @param type $form + * @param type $data + * @return array of Zend_Form_Element + */ + public function getFormElements(&$form, &$data) + { + $element = new Zend_Form_Element_MultiCheckbox('format'); + $element->setLabel($this->_('Excel options')) + ->setMultiOptions(array( + 'formatVariable' => $this->_('Export questions instead of variable names'), + 'formatAnswer' => $this->_('Format answers') + )); + $elements[] = $element; + + return $elements; + } + + /** + * Sets the default form values when this export type is first chosen + * + * @return array + */ + public function getDefaults() + { + return array('format'=>array('formatVariable', 'formatAnswer')); + } + + /** + * Returns the unique name for this class + * + * It will be used for handling this export's specific options + * + * @return string + */ + public function getName() + { + return 'excel'; + } + + /** + * This method handles the export with the given options + * + * The method takes care of rendering the right script by using $this->export->controller to + * access the controller object. + * + * @param array $data The formdata + * @param Gems_Tracker_Survey $survey The survey object we are exporting + * @param array $answers The array of answers + */ + public function handleExport($data, $survey, $answers, $answerModel, $language) + { + $questions = $survey->getQuestionList($language); + if (isset($data[$this->getName()])) { + $options = $data[$this->getName()]; + if (isset($options['format'])) { + $options = $options['format']; + } + } else { + $options = array(); + } + + if (in_array('formatVariable', $options)) { + //@@TODO This breaks date formatting, think of a way to fix this, check out the spss exports for + //a more direct export, also check UTF-8 differences between view / direct output + foreach ($answers[0] as $key => $value) { + if (isset($questions[$key])) { + $headers[0][$key] = $questions[$key]; + } else { + $headers[0][$key] = $key; + } + } + } else { + $headers[0] = array_keys($answers[0]); + } + $answers = array_merge($headers, $answers); + + if (in_array('formatAnswer', $options)) { + $answers = new Gems_FormattedData($answers, $answerModel); + } + + $this->view->result = $answers; + $this->view->filename = $survey->getName() . '.xls'; + $this->view->setScriptPath(GEMS_LIBRARY_DIR . '/views/scripts'); + $this->export->controller->render('excel',null,true); + } +} \ No newline at end of file Added: trunk/library/classes/Gems/Export/ExportAbstract.php =================================================================== --- trunk/library/classes/Gems/Export/ExportAbstract.php (rev 0) +++ trunk/library/classes/Gems/Export/ExportAbstract.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,84 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: ExportAbstract.php 128 2011-08-12 12:33:14Z 175780 $ + */ + +/** + * Short description for ExportAbstract + * + * Long description for class ExportAbstract (if any)... + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +abstract class Gems_Export_ExportAbstract extends Gems_Loader_TargetLoaderAbstract implements Gems_Export_ExportInterface +{ + /** + * Variable needed to access the controller functions + * + * $this->export->controller + * + * @var Gems_Export + */ + public $export; + + /** + * @var Zend_Translate + */ + public $translate; + + /** + * @var Zend_View + */ + public $view; + + /** + * Copy from Zend_Translate_Adapter + * + * Translates the given string + * returns the translation + * + * @param string $text Translation string + * @param string|Zend_Locale $locale (optional) Locale/Language to use, identical with locale + * identifier, @see Zend_Locale for more information + * @return string + */ + public function _($text, $locale = null) + { + return $this->translate->_($text, $locale); + } +} \ No newline at end of file Added: trunk/library/classes/Gems/Export/ExportInterface.php =================================================================== --- trunk/library/classes/Gems/Export/ExportInterface.php (rev 0) +++ trunk/library/classes/Gems/Export/ExportInterface.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,87 @@ +<?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 Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: ExportInterface.php 128 2011-08-12 12:33:14Z 175780 $ + */ + +/** + * The export interface + * + * Exporting survey-data can be done for various sorts of output formats, this interface + * describes the methods needed to implement an output format + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +interface Gems_Export_ExportInterface +{ + /** + * Return an array of Form Elements for this specific export + * + * @param type $form + * @param type $data + * @return array of Zend_Form_Element + */ + public function getFormElements(&$form, &$data); + + /** + * Sets the default form values when this export type is first chosen + * + * @return array + */ + public function getDefaults(); + + /** + * Returns the unique name for this class + * + * It will be used for handling this export's specific options + * + * @return string + */ + public function getName(); + + /** + * This method handles the export with the given options + * + * The method takes care of rendering the right script by using $this->export->controller to + * access the controller object. + * + * @param array $data The formdata + * @param Gems_Tracker_Survey $survey The survey object we are exporting + * @param array $answers The array of answers + * @param MUtil_Model_ModelAbstract $answerModel The modified answermodel that includes info about extra attributes + * @param string $language The language used / to use for the export + */ + public function handleExport($data, $survey, $answers, $answerModel, $language); +} \ No newline at end of file Added: trunk/library/classes/Gems/Export/ExportModel.php =================================================================== --- trunk/library/classes/Gems/Export/ExportModel.php (rev 0) +++ trunk/library/classes/Gems/Export/ExportModel.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,80 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: ExportModel.php 138 2011-09-15 10:44:24Z 175780 $ + */ + +/** + * Short description for ExportModel + * + * Long description for class ExportModel (if any)... + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_Export_ExportModel extends MUtil_Model_ModelAbstract +{ + + public function __construct() + { + parent::__construct('export'); + } + + public function delete($filter = true) + { + return false; + } + + public function hasNew() + { + return false; + } + + public function load($filter = true, $sort = true) + { + $result = array(); + foreach ($this->getItemsOrdered() as $item) { + $result[0][$item] = $item; + } + return $result; + } + + public function save(array $newValues, array $filter = null) + { + return $newValues; + } +} \ No newline at end of file Added: trunk/library/classes/Gems/Export/Spss.php =================================================================== --- trunk/library/classes/Gems/Export/Spss.php (rev 0) +++ trunk/library/classes/Gems/Export/Spss.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,270 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: Spss.php 140 2011-09-15 14:18:14Z 175780 $ + */ + +/** + * Short description for Spss + * + * Long description for class Spss (if any)... + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_Export_Spss extends Gems_Export_ExportAbstract +{ + + public function getDefaults() + { + return array('file'=>'data'); + } + + public function getFormElements(&$form, &$data) + { + $element = new Zend_Form_Element_Radio('file'); + $element->setLabel($this->_('Which file')); + $element->setMultiOptions(array('syntax' => $this->_('syntax'), + 'data' => $this->_('data'))); + + $elements[] = $element; + + $element = new MUtil_Form_Element_Exhibitor('help'); + $element->setValue($this->_('Some help for this export')); + $elements[] = $element; + + return $elements; + } + + public function getName() + { + return 'spss'; + } + + /** + * This method handles the export with the given options + * + * The method takes care of rendering the right script by using $this->export->controller to + * access the controller object. + * + * @param array $data The formdata + * @param Gems_Tracker_Survey $survey The survey object we are exporting + * @param array $answers The array of answers + * @param MUtil_Model_ModelAbstract $answerModel The modified answermodel that includes info about extra attributes + * @param string $language The language used / to use for the export + */ + public function handleExport($data, $survey, $answers, $answerModel, $language) + { + if (isset($data[$this->getName()])) { + $options = $data[$this->getName()]; + } else { + $options = array(); + } + + if (isset($options['file'])) { + if ($options['file'] == 'syntax') { + $controller = $this->export->controller; + $controller->getHelper('layout')->disableLayout(); + $controller->getHelper('viewRenderer')->setNoRender(true); + $response = $controller->getResponse(); + $filename = $survey->getName() . '.sps'; + $filenameDat = $survey->getName() . '.dat'; + $response->clearHeaders(); + $response->setHeader('Content-Disposition', 'attachment; filename="' . $filename . '"') + ->setHeader('Content-type', 'text/comma-separated-values; charset=UTF-8') + ->setHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0') + ->setHeader('Pragma', 'public'); + + //first output our script + $response->appendBody( + "SET UNICODE=ON. +GET DATA + /TYPE=TXT + /FILE=\"" . $filenameDat . "\" + /DELCASE=LINE + /DELIMITERS=\",\" + /QUALIFIER=\"'\" + /ARRANGEMENT=DELIMITED + /FIRSTCASE=1 + /IMPORTCASE=ALL + /VARIABLES="); + $answerRow = reset($answers); + $labels = array(); + $types = array(); + $questions = $survey->getQuestionList($language); + foreach($answerRow as $key => $value) { + $options = array(); + $type = $answerModel->get($key,'type'); + switch ($type) { + case MUtil_Model::TYPE_DATE: + $type = 'SDATE10'; + break; + + case MUtil_Model::TYPE_DATETIME: + case MUtil_Model::TYPE_TIME: + $type = 'DATETIME23'; + break; + + case MUtil_Model::TYPE_NUMERIC: + $defaultSize = 5; + $type = 'F'; + break; + + //When no type set... assume string + case MUtil_Model::TYPE_STRING: + default: + $defaultSize = 64; + $type = 'A'; + break; + } + $types[$key] = $type; + if ($type == 'A' || $type == 'F') { + $size = $answerModel->get($key,'size'); + if (is_null($size)) { + $size = $defaultSize; + } + if ($type == 'A') { + $type = $type . $size; + } else { + $type = $type . $size . '.' . ($size-1); //decimal + } + } + if (isset($questions[$key])) { + $labels[$key] = $questions[$key]; + } + $response->appendBody("\n " . $key . ' '. $type); + } + $response->appendBody(".\nCACHE.\nEXECUTE.\n"); + $response->appendBody("\n*Define variable labels.\n"); + foreach($labels as $key => $label) { + $response->appendBody("VARIABLE LABELS " . $key . ' "' . $label . '".' . "\n"); + } + + $response->appendBody("\n*Define value labels.\n"); + foreach($answerRow as $key => $value) { + if($options = $answerModel->get($key, 'multiOptions')) { + $response->appendBody('VALUE LABELS ' . $key); + foreach($options as $option=>$label) { + if($types[$key]=='F') { + //Numeric + $response->appendBody("\n" . $option . ' ' . '"' . $label . '"'); + } else { + //String + $response->appendBody("\n" . '"' .$option . '" ' . '"' . $label . '"'); + } + } + $response->appendBody(".\n\n"); + } + } + } else { + $controller = $this->export->controller; + $controller->getHelper('layout')->disableLayout(); + $controller->getHelper('viewRenderer')->setNoRender(true); + $response = $controller->getResponse(); + $filename = $survey->getName() . '.dat'; + $response->clearHeaders(); + $response->setHeader('Content-Disposition', 'attachment; filename="' . $filename . '"') + ->setHeader('Content-type', 'text/comma-separated-values; charset=UTF-8') + ->setHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0') + ->setHeader('Pragma', 'public'); + + //We should create a model with the transformations we need + //think of date translations, numers and strings + $answerRow = reset($answers); + $spssModel = new Zsd_Export_ExportModel(); + foreach($answerRow as $key => $value) { + $options = array(); + $type = $answerModel->get($key,'type'); + switch ($type) { + case MUtil_Model::TYPE_DATE: + $options['storageFormat'] = 'yyyy-MM-dd'; + $options['dateFormat'] = 'yyyy-MM-dd'; + break; + + case MUtil_Model::TYPE_DATETIME: + $options['storageFormat'] = 'yyyy-MM-dd HH:mm:ss'; + $options['dateFormat'] = 'dd-MM-yyyy HH:mm:ss'; + break; + + case MUtil_Model::TYPE_TIME: + $options['storageFormat'] = 'HH:mm:ss'; + $options['dateFormat'] = 'HH:mm:ss'; + break; + + case MUtil_Model::TYPE_NUMERIC: + break; + + //When no type set... assume string + case MUtil_Model::TYPE_STRING: + default: + $type = MUtil_Model::TYPE_STRING; + $options['formatFunction'] = $this->formatString; + break; + } + $options['type'] = $type; + $spssModel->set($key, $options); + } + //Now apply the model to the answers + $answers = new Gems_FormattedData($answers, $spssModel); + + //And output the data + foreach($answers as $answerRow) { + $resultRow = implode(',', $answerRow); + $response->appendBody($resultRow ."\n"); + } + } + } + } + + /** + * Formatting of strings for SPSS export. Enclose in single quotes and escape single quotes + * with a single quote + * + * Example: + * This isn't hard to understand + * ==> + * 'This isn''t hard to understand' + * + * @param type $input + * @return string + */ + public function formatString($input) { + $output = str_replace("'", "''", $input); + $output = "'" . $output . "'"; + return $output; + } +} \ No newline at end of file Added: trunk/library/classes/Gems/Export.php =================================================================== --- trunk/library/classes/Gems/Export.php (rev 0) +++ trunk/library/classes/Gems/Export.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,140 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: Export.php 124 2011-08-09 11:56:35Z 175780 $ + */ + +/** + * Short description for Export + * + * Long description for class Export (if any)... + * + * @package Gems + * @subpackage Export + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_Export extends Gems_Loader_TargetLoaderAbstract +{ + /** + * Allows sub classes of Gems_Loader_LoaderAbstract to specify the subdirectory where to look for. + * + * @var string $cascade An optional subdirectory where this subclass always loads from. + */ + protected $cascade = 'Export'; + + /** + * Is set to the calling controller to allow rendering the view + * + * @var Gems_Controller_Action + */ + public $controller = null; + + /** + * This variable holds all registered export classes, may be changed in derived classes + * + * @var array Of classname => description + */ + protected $_exportClasses = array( + 'Excel' => 'Excel (xls)', + 'Spss' => 'SPSS', + ); + + /** + * The default values for the form. Defaults for a specific export-type should come + * from that class + * + * @var array + */ + protected $_defaults = array( + 'type' => 'excel' + ); + + /** + * + * @param type $container A container acting as source fro MUtil_Registry_Source + * @param array $dirs The directories where to look for requested classes + */ + public function __construct($container, array $dirs) + { + parent::__construct($container, $dirs); + + // Make sure the export is known + $this->addRegistryContainer(array('export' => $this)); + } + + /** + * Add one or more export classes + * + * @param array $stack classname / description array of sourceclasses + */ + public function addExportClasses($stack) + { + $this->_exportClasses = array_merge($this->_exportClasses, $stack); + } + + public function getDefaults() + { + return $this->_defaults; + } + + /** + * + * @return Gems_Export_ExportInterface + */ + public function getExport($type) + { + return $this->_getClass($type); + } + + /** + * Returns all registered export classes + * + * @return array Of classname => description + */ + public function getExportClasses() + { + return $this->_exportClasses; + } + + /** + * Set the default options for the form + * + * @param array $defaults + */ + public function setDefaults($defaults) + { + $this->_defaults = $defaults; + } +} \ No newline at end of file Modified: trunk/library/classes/Gems/Menu.php =================================================================== --- trunk/library/classes/Gems/Menu.php 2011-09-16 06:24:15 UTC (rev 28) +++ trunk/library/classes/Gems/Menu.php 2011-09-16 08:03:15 UTC (rev 29) @@ -588,6 +588,9 @@ // MAIL CONTAINER $this->addMailSetupPage($this->escort->_('Mail')); + + // EXPORT DATA + $this->addContainer('Export data', 'pr.export', array('controller'=>'export', 'action'=>'index')); // OTHER ITEMS $this->addLogonOffToken(); Added: trunk/library/controllers/ExportController.php =================================================================== --- trunk/library/controllers/ExportController.php (rev 0) +++ trunk/library/controllers/ExportController.php 2011-09-16 08:03:15 UTC (rev 29) @@ -0,0 +1,32 @@ +<?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 controllers + */ +class ExportController extends Gems_Default_ExportAction +{ +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-16 06:24:29
|
Revision: 28 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=28&view=rev Author: mennodekker Date: 2011-09-16 06:24:15 +0000 (Fri, 16 Sep 2011) Log Message: ----------- Setting the keywords again since they seem to be lost in migration Modified Paths: -------------- trunk/library/classes/Gems/AccessLog.php trunk/library/classes/Gems/Auth.php trunk/library/classes/Gems/Communication/Exception.php trunk/library/classes/Gems/Communication/RespondentContainer.php trunk/library/classes/Gems/Communication/RespondentModelWriter.php trunk/library/classes/Gems/Communication/RespondentReader.php trunk/library/classes/Gems/Communication/RespondentWriter.php trunk/library/classes/Gems/Controller/BrowseEditAction.php trunk/library/classes/Gems/Controller/ModelActionAbstract.php trunk/library/classes/Gems/Cookies.php trunk/library/classes/Gems/Default/AskAction.php trunk/library/classes/Gems/Default/DatabaseAction.php trunk/library/classes/Gems/Default/IndexAction.php trunk/library/classes/Gems/Default/MailAction.php trunk/library/classes/Gems/Default/MailServerAction.php trunk/library/classes/Gems/Default/OverviewPlanAction.php trunk/library/classes/Gems/Default/ProjectInformationAction.php trunk/library/classes/Gems/Default/ProjectSurveysAction.php trunk/library/classes/Gems/Default/ProjectTracksAction.php trunk/library/classes/Gems/Default/RespondentAction.php trunk/library/classes/Gems/Default/RespondentPlanAction.php trunk/library/classes/Gems/Default/RoleAction.php trunk/library/classes/Gems/Default/SourceAction.php trunk/library/classes/Gems/Default/StaffAction.php trunk/library/classes/Gems/Default/SurveyAction.php trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php trunk/library/classes/Gems/Default/TokenPlanAction.php trunk/library/classes/Gems/Default/TrackAction.php trunk/library/classes/Gems/Default/TrackActionAbstract.php trunk/library/classes/Gems/Default/TrackFieldsAction.php trunk/library/classes/Gems/Default/TrackMaintenanceAction.php trunk/library/classes/Gems/Default/TrackRoundAction.php trunk/library/classes/Gems/Default/TrackRoundsAction.php trunk/library/classes/Gems/Email/EmailFormAbstract.php trunk/library/classes/Gems/Email/MailTemplateForm.php trunk/library/classes/Gems/Email/MultiMailForm.php trunk/library/classes/Gems/Email/OneMailForm.php trunk/library/classes/Gems/Email/TemplateMailer.php trunk/library/classes/Gems/Event/EventCalculations.php trunk/library/classes/Gems/Event/EventInterface.php trunk/library/classes/Gems/Event/RoundChangedEventInterface.php trunk/library/classes/Gems/Event/SurveyBeforeAnsweringEventInterface.php trunk/library/classes/Gems/Event/SurveyCompletedEventInterface.php trunk/library/classes/Gems/Events.php trunk/library/classes/Gems/Filter/DutchZipcode.php trunk/library/classes/Gems/Form/Decorator/Form.php trunk/library/classes/Gems/Form/Decorator/TabErrors.php trunk/library/classes/Gems/Form/Decorator/Tooltip.php trunk/library/classes/Gems/Form/SubForm.php trunk/library/classes/Gems/Form/TabGroup.php trunk/library/classes/Gems/Form/TabSubForm.php trunk/library/classes/Gems/Form/TableForm.php trunk/library/classes/Gems/Form.php trunk/library/classes/Gems/FormattedData.php trunk/library/classes/Gems/JQuery/Form/Decorator/TabContainer.php trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php trunk/library/classes/Gems/JQuery/JQueryExtenderAbstract.php trunk/library/classes/Gems/JQuery/TableRowKeySelector.php trunk/library/classes/Gems/JQuery/View/Helper/TabContainer.php trunk/library/classes/Gems/JQuery/View/Helper/ToggleCheckboxes.php trunk/library/classes/Gems/Loader/LoaderAbstract.php trunk/library/classes/Gems/Loader.php trunk/library/classes/Gems/Log.php trunk/library/classes/Gems/Menu/MenuAbstract.php trunk/library/classes/Gems/Menu/MenuList.php trunk/library/classes/Gems/Menu/ParameterSource.php trunk/library/classes/Gems/Menu/ParameterSourceInterface.php trunk/library/classes/Gems/Menu/SubMenuItem.php trunk/library/classes/Gems/Menu.php trunk/library/classes/Gems/Model/DbaModel.php trunk/library/classes/Gems/Model/HiddenOrganizationModel.php trunk/library/classes/Gems/Model/JoinModel.php trunk/library/classes/Gems/Model/RespondentModel.php trunk/library/classes/Gems/Model/ThreeColumnTableBridge.php trunk/library/classes/Gems/Model.php trunk/library/classes/Gems/Roles.php trunk/library/classes/Gems/Selector/DateSelectorAbstract.php trunk/library/classes/Gems/Selector/TokenDateSelector.php trunk/library/classes/Gems/Selector.php trunk/library/classes/Gems/Snippets/MenuSnippetAbstract.php trunk/library/classes/Gems/Snippets/ModelFormSnippetAbstract.php trunk/library/classes/Gems/Snippets/ModelTableSnippetAbstract.php trunk/library/classes/Gems/Snippets/RespondentDetailSnippetAbstract.php trunk/library/classes/Gems/Snippets/TokenModelSnippetAbstract.php trunk/library/classes/Gems/TabForm.php trunk/library/classes/Gems/Tracker/Engine/AnyStepEngine.php trunk/library/classes/Gems/Tracker/Engine/NextStepEngine.php trunk/library/classes/Gems/Tracker/Engine/SingleSurveyEngine.php trunk/library/classes/Gems/Tracker/Engine/StepEngineAbstract.php trunk/library/classes/Gems/Tracker/Engine/TrackEngineAbstract.php trunk/library/classes/Gems/Tracker/Engine/TrackEngineInterface.php trunk/library/classes/Gems/Tracker/Model/RespondentTrackModel.php trunk/library/classes/Gems/Tracker/Model/StandardTokenModel.php trunk/library/classes/Gems/Tracker/Model/TrackModel.php trunk/library/classes/Gems/Tracker/RespondentTrack.php trunk/library/classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/EditSingleSurveyTokenSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/EditTokenSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/EditTrackSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/ShowRoundSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/ShowTokenSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/ShowTrackUsageAbstract.php trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m91Database.php trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9Database.php trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9FieldMap.php trunk/library/classes/Gems/Tracker/Source/SourceAbstract.php trunk/library/classes/Gems/Tracker/Source/SourceInterface.php trunk/library/classes/Gems/Tracker/Survey.php trunk/library/classes/Gems/Tracker/Token/TokenLibrary.php trunk/library/classes/Gems/Tracker/Token/TokenSelect.php trunk/library/classes/Gems/Tracker/Token.php trunk/library/classes/Gems/Tracker/TrackerInterface.php trunk/library/classes/Gems/Tracker.php trunk/library/classes/Gems/Util/DatabasePatcher.php trunk/library/classes/Gems/Util/DbLookup.php trunk/library/classes/Gems/Util/RequestCache.php trunk/library/classes/Gems/Util/TrackData.php trunk/library/classes/Gems/Util/Translated.php trunk/library/classes/Gems/Util.php trunk/library/classes/Gems/Validate/GemsPasswordUsername.php trunk/library/classes/Gems/Versions.php trunk/library/classes/Gems/View/Helper/Excel.php trunk/library/classes/GemsEscort.php trunk/library/classes/MUtil/Acl.php trunk/library/classes/MUtil/Application/Escort.php trunk/library/classes/MUtil/Application/EscortControllerHelper.php trunk/library/classes/MUtil/Application/EscortPlugin.php trunk/library/classes/MUtil/Controller/ModelActionAbstract.php trunk/library/classes/MUtil/Form/Element/Exhibitor.php trunk/library/classes/MUtil/Form/Element/FakeSubmit.php trunk/library/classes/MUtil/Form/Element/Html.php trunk/library/classes/MUtil/Form/Element/NoFocusInterface.php trunk/library/classes/MUtil/Form/Element/SubFocusInterface.php trunk/library/classes/MUtil/Form/Element/Tab.php trunk/library/classes/MUtil/Form/Element/Table.php trunk/library/classes/MUtil/Form.php trunk/library/classes/MUtil/Html/Marker.php trunk/library/classes/MUtil/Html/PageRangeRenderer.php trunk/library/classes/MUtil/Model/DatabaseModelAbstract.php trunk/library/classes/MUtil/Model/FormBridge.php trunk/library/classes/MUtil/Model/ModelAbstract.php trunk/library/classes/MUtil/Model/TableBridge.php trunk/library/classes/MUtil/Model/TableModel.php trunk/library/classes/MUtil/Ra/Filter/Contains.php trunk/library/classes/MUtil/Ra/FilterAbstract.php trunk/library/classes/MUtil/Ra/FilterInterface.php trunk/library/classes/MUtil/Ra/Nested.php trunk/library/classes/MUtil/Snippets/EmptySnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelFormSnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelSnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelTableSnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelVerticalTableSnippetAbstract.php trunk/library/classes/MUtil/Snippets/SnippetAbstract.php trunk/library/classes/MUtil/Snippets/SnippetInterface.php trunk/library/classes/MUtil/Snippets/SnippetLoader.php trunk/library/classes/MUtil/Snippets/Standard/ModelFormSnippet.php trunk/library/classes/MUtil/Snippets/Standard/ModelTableSnippet.php trunk/library/classes/MUtil/Snippets/Standard/ModelVerticalTableSnippet.php trunk/library/classes/MUtil/Snippets/Standard/SelectiveTableSnippet.php trunk/library/classes/MUtil/Snippets/Standard/TableSnippet.php trunk/library/classes/MUtil/Snippets/TabSnippetAbstract.php trunk/library/classes/MUtil/Snippets/TableSnippetAbstract.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Auth.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Cache.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Database.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Exception.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/File.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Html.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Interface.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Memory.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Registry.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Text.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Time.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Variables.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug.php trunk/library/controllers/MailServerController.php trunk/library/controllers/TrackRoundController.php trunk/library/docs/Sample.php trunk/library/snippets/AddTracksSnippet.php trunk/library/snippets/AnswerModelSnippet.php trunk/library/snippets/BrowseSingleSurveyTokenSnippet.php trunk/library/snippets/DeleteInSourceTrackSnippet.php trunk/library/snippets/DeleteSingleSurveyInSourceTokenSnippet.php trunk/library/snippets/DeleteSingleSurveyNotUsedTokenSnippet.php trunk/library/snippets/DeleteTrackTokenSnippet.php trunk/library/snippets/EditRoundSnippet.php trunk/library/snippets/EditRoundStepSnippet.php trunk/library/snippets/EditSingleSurveyTokenSnippet.php trunk/library/snippets/EditTrackEngineSnippet.php trunk/library/snippets/EditTrackSnippet.php trunk/library/snippets/EditTrackTokenSnippet.php trunk/library/snippets/RespondentDetailsSnippet.php trunk/library/snippets/RespondentDetailsWithAssignmentsSnippet.php trunk/library/snippets/RespondentTokenSnippet.php trunk/library/snippets/RespondentTokenTabsSnippet.php trunk/library/snippets/SelectedTokensTitleSnippet.php trunk/library/snippets/ShowRoundSnippet.php trunk/library/snippets/ShowRoundStepSnippet.php trunk/library/snippets/ShowSingleSurveyTokenSnippet.php trunk/library/snippets/ShowTrackTokenSnippet.php trunk/library/snippets/SurveyQuestionsSnippet.php trunk/library/snippets/TokenDateSelectorSnippet.php trunk/library/snippets/TokenNotFoundSnippet.php trunk/library/snippets/Track/AvailableTracksSnippets.php trunk/library/snippets/TrackAnswersModelSnippet.php trunk/library/snippets/TrackSurveyOverviewSnippet.php trunk/library/snippets/TrackTokenOverviewSnippet.php trunk/library/snippets/TrackUsageTextDetailsSnippet.php Property Changed: ---------------- trunk/library/classes/Gems/AccessLog.php trunk/library/classes/Gems/Auth.php trunk/library/classes/Gems/Communication/Exception.php trunk/library/classes/Gems/Communication/RespondentContainer.php trunk/library/classes/Gems/Communication/RespondentModelWriter.php trunk/library/classes/Gems/Communication/RespondentReader.php trunk/library/classes/Gems/Communication/RespondentWriter.php trunk/library/classes/Gems/Controller/Action.php trunk/library/classes/Gems/Controller/BrowseEditAction.php trunk/library/classes/Gems/Controller/ModelActionAbstract.php trunk/library/classes/Gems/Cookies.php trunk/library/classes/Gems/Default/AskAction.php trunk/library/classes/Gems/Default/ConsentAction.php trunk/library/classes/Gems/Default/ContactAction.php trunk/library/classes/Gems/Default/CountryAction.php trunk/library/classes/Gems/Default/DatabaseAction.php trunk/library/classes/Gems/Default/EmailAction.php trunk/library/classes/Gems/Default/ErrorAction.php trunk/library/classes/Gems/Default/GroupAction.php trunk/library/classes/Gems/Default/IndexAction.php trunk/library/classes/Gems/Default/InvitationAction.php trunk/library/classes/Gems/Default/LanguageAction.php trunk/library/classes/Gems/Default/LogAction.php trunk/library/classes/Gems/Default/LogMaintenanceAction.php trunk/library/classes/Gems/Default/MailAction.php trunk/library/classes/Gems/Default/MailServerAction.php trunk/library/classes/Gems/Default/OptionAction.php trunk/library/classes/Gems/Default/OrganizationAction.php trunk/library/classes/Gems/Default/OverviewPlanAction.php trunk/library/classes/Gems/Default/ProjectInformationAction.php trunk/library/classes/Gems/Default/ProjectSurveysAction.php trunk/library/classes/Gems/Default/ProjectTracksAction.php trunk/library/classes/Gems/Default/ReceptionAction.php trunk/library/classes/Gems/Default/RespondentAction.php trunk/library/classes/Gems/Default/RespondentPlanAction.php trunk/library/classes/Gems/Default/RoleAction.php trunk/library/classes/Gems/Default/SourceAction.php trunk/library/classes/Gems/Default/StaffAction.php trunk/library/classes/Gems/Default/SurveyAction.php trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php trunk/library/classes/Gems/Default/TokenPlanAction.php trunk/library/classes/Gems/Default/TrackAction.php trunk/library/classes/Gems/Default/TrackActionAbstract.php trunk/library/classes/Gems/Default/TrackFieldsAction.php trunk/library/classes/Gems/Default/TrackMaintenanceAction.php trunk/library/classes/Gems/Default/TrackRoundAction.php trunk/library/classes/Gems/Default/TrackRoundsAction.php trunk/library/classes/Gems/Email/EmailFormAbstract.php trunk/library/classes/Gems/Email/MailTemplateForm.php trunk/library/classes/Gems/Email/MultiMailForm.php trunk/library/classes/Gems/Email/OneMailForm.php trunk/library/classes/Gems/Email/TemplateMailer.php trunk/library/classes/Gems/Event/EventCalculations.php trunk/library/classes/Gems/Event/EventInterface.php trunk/library/classes/Gems/Event/RoundChangedEventInterface.php trunk/library/classes/Gems/Event/SurveyBeforeAnsweringEventInterface.php trunk/library/classes/Gems/Event/SurveyCompletedEventInterface.php trunk/library/classes/Gems/Events.php trunk/library/classes/Gems/Exception/Coding.php trunk/library/classes/Gems/Exception.php trunk/library/classes/Gems/Filter/DutchZipcode.php trunk/library/classes/Gems/Form/Decorator/Form.php trunk/library/classes/Gems/Form/Decorator/TabErrors.php trunk/library/classes/Gems/Form/Decorator/Tooltip.php trunk/library/classes/Gems/Form/SubForm.php trunk/library/classes/Gems/Form/TabGroup.php trunk/library/classes/Gems/Form/TabSubForm.php trunk/library/classes/Gems/Form/TableForm.php trunk/library/classes/Gems/Form.php trunk/library/classes/Gems/FormattedData.php trunk/library/classes/Gems/Html.php trunk/library/classes/Gems/JQuery/AutoSubmitForm.php trunk/library/classes/Gems/JQuery/Form/Decorator/TabContainer.php trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php trunk/library/classes/Gems/JQuery/JQueryExtenderAbstract.php trunk/library/classes/Gems/JQuery/TableRowKeySelector.php trunk/library/classes/Gems/JQuery/View/Helper/TabContainer.php trunk/library/classes/Gems/JQuery/View/Helper/ToggleCheckboxes.php trunk/library/classes/Gems/Loader/LoaderAbstract.php trunk/library/classes/Gems/Loader/TargetLoaderAbstract.php trunk/library/classes/Gems/Loader.php trunk/library/classes/Gems/Log.php trunk/library/classes/Gems/Menu/MenuAbstract.php trunk/library/classes/Gems/Menu/MenuList.php trunk/library/classes/Gems/Menu/ParameterSource.php trunk/library/classes/Gems/Menu/ParameterSourceInterface.php trunk/library/classes/Gems/Menu/SubMenuItem.php trunk/library/classes/Gems/Menu.php trunk/library/classes/Gems/Model/DbaModel.php trunk/library/classes/Gems/Model/HiddenOrganizationModel.php trunk/library/classes/Gems/Model/JoinModel.php trunk/library/classes/Gems/Model/RespondentModel.php trunk/library/classes/Gems/Model/ThreeColumnTableBridge.php trunk/library/classes/Gems/Model.php trunk/library/classes/Gems/Pdf.php trunk/library/classes/Gems/Project/Layout/MultiLayoutInterface.php trunk/library/classes/Gems/Project/Layout/SingleLayoutInterface.php trunk/library/classes/Gems/Project/Log/LogRespondentAccessInterface.php trunk/library/classes/Gems/Project/Organization/MultiOrganizationInterface.php trunk/library/classes/Gems/Project/Organization/SingleOrganizationInterface.php trunk/library/classes/Gems/Project/Tracks/FixedTracksInterface.php trunk/library/classes/Gems/Project/Tracks/MultiTracksInterface.php trunk/library/classes/Gems/Project/Tracks/SingleTrackInterface.php trunk/library/classes/Gems/Project/Tracks/StandAloneSurveysInterface.php trunk/library/classes/Gems/Project/Tracks/TracksOnlyInterface.php trunk/library/classes/Gems/Registry/TargetAbstract.php trunk/library/classes/Gems/Roles.php trunk/library/classes/Gems/Selector/DateSelectorAbstract.php trunk/library/classes/Gems/Selector/SelectorField.php trunk/library/classes/Gems/Selector/TokenByGroupDateSelector.php trunk/library/classes/Gems/Selector/TokenDateSelector.php trunk/library/classes/Gems/Selector.php trunk/library/classes/Gems/Snippets/MenuSnippetAbstract.php trunk/library/classes/Gems/Snippets/ModelFormSnippetAbstract.php trunk/library/classes/Gems/Snippets/ModelTableSnippetAbstract.php trunk/library/classes/Gems/Snippets/RespondentDetailSnippetAbstract.php trunk/library/classes/Gems/Snippets/TokenModelSnippetAbstract.php trunk/library/classes/Gems/TabForm.php trunk/library/classes/Gems/Tracker/ChangeTracker.php trunk/library/classes/Gems/Tracker/Engine/AnyStepEngine.php trunk/library/classes/Gems/Tracker/Engine/NextStepEngine.php trunk/library/classes/Gems/Tracker/Engine/SingleSurveyEngine.php trunk/library/classes/Gems/Tracker/Engine/StepEngineAbstract.php trunk/library/classes/Gems/Tracker/Engine/TrackEngineAbstract.php trunk/library/classes/Gems/Tracker/Engine/TrackEngineInterface.php trunk/library/classes/Gems/Tracker/Model/RespondentTrackModel.php trunk/library/classes/Gems/Tracker/Model/SingleSurveyTokenModel.php trunk/library/classes/Gems/Tracker/Model/StandardTokenModel.php trunk/library/classes/Gems/Tracker/Model/TrackModel.php trunk/library/classes/Gems/Tracker/RespondentTrack.php trunk/library/classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/EditSingleSurveyTokenSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/EditTokenSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/EditTrackSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/ShowRoundSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/ShowTokenSnippetAbstract.php trunk/library/classes/Gems/Tracker/Snippets/ShowTrackUsageAbstract.php trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m91Database.php trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9Database.php trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9FieldMap.php trunk/library/classes/Gems/Tracker/Source/SourceAbstract.php trunk/library/classes/Gems/Tracker/Source/SourceInterface.php trunk/library/classes/Gems/Tracker/Source/SurveyNotFoundException.php trunk/library/classes/Gems/Tracker/Survey.php trunk/library/classes/Gems/Tracker/SurveyModel.php trunk/library/classes/Gems/Tracker/Token/TokenFilter.php trunk/library/classes/Gems/Tracker/Token/TokenLibrary.php trunk/library/classes/Gems/Tracker/Token/TokenSelect.php trunk/library/classes/Gems/Tracker/Token/TokenValidator.php trunk/library/classes/Gems/Tracker/Token.php trunk/library/classes/Gems/Tracker/TrackerInterface.php trunk/library/classes/Gems/Tracker.php trunk/library/classes/Gems/Util/BasePath.php trunk/library/classes/Gems/Util/DatabasePatcher.php trunk/library/classes/Gems/Util/DbLookup.php trunk/library/classes/Gems/Util/Localized.php trunk/library/classes/Gems/Util/RequestCache.php trunk/library/classes/Gems/Util/TrackData.php trunk/library/classes/Gems/Util/Translated.php trunk/library/classes/Gems/Util.php trunk/library/classes/Gems/Validate/GemsPasswordUsername.php trunk/library/classes/Gems/Validate/LimeSurveySoapClient.php trunk/library/classes/Gems/Versions.php trunk/library/classes/Gems/View/Helper/Excel.php trunk/library/classes/GemsEscort.php trunk/library/classes/MUtil/Acl.php trunk/library/classes/MUtil/Application/Escort.php trunk/library/classes/MUtil/Application/EscortControllerHelper.php trunk/library/classes/MUtil/Application/EscortPlugin.php trunk/library/classes/MUtil/ArrayString.php trunk/library/classes/MUtil/Config/Php.php trunk/library/classes/MUtil/Controller/Action.php trunk/library/classes/MUtil/Controller/ModelActionAbstract.php trunk/library/classes/MUtil/Controller/html-view.phtml trunk/library/classes/MUtil/Date.php trunk/library/classes/MUtil/Dojo.php trunk/library/classes/MUtil/Echo.php trunk/library/classes/MUtil/Form/Decorator/AutoFocus.php trunk/library/classes/MUtil/Form/Decorator/Table.php trunk/library/classes/MUtil/Form/Element/Exhibitor.php trunk/library/classes/MUtil/Form/Element/FakeSubmit.php trunk/library/classes/MUtil/Form/Element/Html.php trunk/library/classes/MUtil/Form/Element/NoFocusInterface.php trunk/library/classes/MUtil/Form/Element/SubFocusInterface.php trunk/library/classes/MUtil/Form/Element/Tab.php trunk/library/classes/MUtil/Form/Element/Table.php trunk/library/classes/MUtil/Form.php trunk/library/classes/MUtil/Html/AElement.php trunk/library/classes/MUtil/Html/ArrayAttribute.php trunk/library/classes/MUtil/Html/Attribute.php trunk/library/classes/MUtil/Html/AttributeAbstract.php trunk/library/classes/MUtil/Html/AttributeInterface.php trunk/library/classes/MUtil/Html/ClassArrayAttribute.php trunk/library/classes/MUtil/Html/ColElement.php trunk/library/classes/MUtil/Html/ColGroupElement.php trunk/library/classes/MUtil/Html/ColumnInterface.php trunk/library/classes/MUtil/Html/Creator.php trunk/library/classes/MUtil/Html/DdElement.php trunk/library/classes/MUtil/Html/DlElement.php trunk/library/classes/MUtil/Html/Dojo/ContentPane.php trunk/library/classes/MUtil/Html/Dojo/DojoData.php trunk/library/classes/MUtil/Html/Dojo/DojoElementAbstract.php trunk/library/classes/MUtil/Html/Dojo/TabContainer.php trunk/library/classes/MUtil/Html/DtElement.php trunk/library/classes/MUtil/Html/ElementDecorator.php trunk/library/classes/MUtil/Html/ElementInterface.php trunk/library/classes/MUtil/Html/FormLayout.php trunk/library/classes/MUtil/Html/HrefArrayAttribute.php trunk/library/classes/MUtil/Html/HtmlElement.php trunk/library/classes/MUtil/Html/HtmlException.php trunk/library/classes/MUtil/Html/HtmlInterface.php trunk/library/classes/MUtil/Html/ImgElement.php trunk/library/classes/MUtil/Html/InputRenderer.php trunk/library/classes/MUtil/Html/LabelElement.php trunk/library/classes/MUtil/Html/ListElement.php trunk/library/classes/MUtil/Html/Marker.php trunk/library/classes/MUtil/Html/MultiWrapper.php trunk/library/classes/MUtil/Html/OnClickArrayAttribute.php trunk/library/classes/MUtil/Html/PagePanel.php trunk/library/classes/MUtil/Html/PageRangeRenderer.php trunk/library/classes/MUtil/Html/Raw.php trunk/library/classes/MUtil/Html/Renderer.php trunk/library/classes/MUtil/Html/RepeatRenderer.php trunk/library/classes/MUtil/Html/Sequence.php trunk/library/classes/MUtil/Html/StyleArrayAttribute.php trunk/library/classes/MUtil/Html/TBodyElement.php trunk/library/classes/MUtil/Html/TableElement.php trunk/library/classes/MUtil/Html/TrElement.php trunk/library/classes/MUtil/Html/UrlArrayAttribute.php trunk/library/classes/MUtil/Html.php trunk/library/classes/MUtil/Https.php trunk/library/classes/MUtil/JQuery/Form/Element/DatePicker.php trunk/library/classes/MUtil/JQuery.php trunk/library/classes/MUtil/Lazy/Alternate.php trunk/library/classes/MUtil/Lazy/ArrayAccessor.php trunk/library/classes/MUtil/Lazy/ArrayWrap.php trunk/library/classes/MUtil/Lazy/Call.php trunk/library/classes/MUtil/Lazy/LazyAbstract.php trunk/library/classes/MUtil/Lazy/LazyException.php trunk/library/classes/MUtil/Lazy/LazyGet.php trunk/library/classes/MUtil/Lazy/LazyInterface.php trunk/library/classes/MUtil/Lazy/ObjectWrap.php trunk/library/classes/MUtil/Lazy/ParallelRepeater.php trunk/library/classes/MUtil/Lazy/Procrastinator.php trunk/library/classes/MUtil/Lazy/Property.php trunk/library/classes/MUtil/Lazy/Repeatable.php trunk/library/classes/MUtil/Lazy/RepeatableByKeyValue.php trunk/library/classes/MUtil/Lazy/RepeatableFormElements.php trunk/library/classes/MUtil/Lazy/RepeatableInterface.php trunk/library/classes/MUtil/Lazy/RepeatableObjectProperties.php trunk/library/classes/MUtil/Lazy/Stack/EmptyStack.php trunk/library/classes/MUtil/Lazy/StackInterface.php trunk/library/classes/MUtil/Lazy/StaticCall.php trunk/library/classes/MUtil/Lazy.php trunk/library/classes/MUtil/Mail.php trunk/library/classes/MUtil/Markup/Renderer/Text/Url.php trunk/library/classes/MUtil/Markup/Renderer/Text.php trunk/library/classes/MUtil/Markup.php trunk/library/classes/MUtil/Model/DatabaseModelAbstract.php trunk/library/classes/MUtil/Model/FormBridge.php trunk/library/classes/MUtil/Model/JoinModel.php trunk/library/classes/MUtil/Model/ModelAbstract.php trunk/library/classes/MUtil/Model/ModelException.php trunk/library/classes/MUtil/Model/ModelTransformerAbstract.php trunk/library/classes/MUtil/Model/SelectModel.php trunk/library/classes/MUtil/Model/TableBridge.php trunk/library/classes/MUtil/Model/TableBridgeAbstract.php trunk/library/classes/MUtil/Model/TableModel.php trunk/library/classes/MUtil/Model/Transform/RequiredRowsTransformer.php trunk/library/classes/MUtil/Model/VerticalTableBridge.php trunk/library/classes/MUtil/Model.php trunk/library/classes/MUtil/MultiWrapper.php trunk/library/classes/MUtil/Parser/Sql/WordsParser.php trunk/library/classes/MUtil/Parser/Sql/WordsParserException.php trunk/library/classes/MUtil/Ra/Filter/Contains.php trunk/library/classes/MUtil/Ra/FilterAbstract.php trunk/library/classes/MUtil/Ra/FilterInterface.php trunk/library/classes/MUtil/Ra/Nested.php trunk/library/classes/MUtil/Ra.php trunk/library/classes/MUtil/Registry/Source.php trunk/library/classes/MUtil/Registry/SourceInterface.php trunk/library/classes/MUtil/Registry/TargetAbstract.php trunk/library/classes/MUtil/Registry/TargetInterface.php trunk/library/classes/MUtil/Snippets/EmptySnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelFormSnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelSnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelTableSnippetAbstract.php trunk/library/classes/MUtil/Snippets/ModelVerticalTableSnippetAbstract.php trunk/library/classes/MUtil/Snippets/SnippetAbstract.php trunk/library/classes/MUtil/Snippets/SnippetInterface.php trunk/library/classes/MUtil/Snippets/SnippetLoader.php trunk/library/classes/MUtil/Snippets/Standard/ModelFormSnippet.php trunk/library/classes/MUtil/Snippets/Standard/ModelTableSnippet.php trunk/library/classes/MUtil/Snippets/Standard/ModelVerticalTableSnippet.php trunk/library/classes/MUtil/Snippets/Standard/SelectiveTableSnippet.php trunk/library/classes/MUtil/Snippets/Standard/TableSnippet.php trunk/library/classes/MUtil/Snippets/TabSnippetAbstract.php trunk/library/classes/MUtil/Snippets/TableSnippetAbstract.php trunk/library/classes/MUtil/Translate/Adapter/Potemkin.php trunk/library/classes/MUtil/Util/ClassList.php trunk/library/classes/MUtil/Util/FunctionList.php trunk/library/classes/MUtil/Util/LookupList.php trunk/library/classes/MUtil/Validate/Date/DateAbstract.php trunk/library/classes/MUtil/Validate/Date/DateAfter.php trunk/library/classes/MUtil/Validate/Date/DateBefore.php trunk/library/classes/MUtil/Validate/Date/FormatInterface.php trunk/library/classes/MUtil/Validate/Date/IsDate.php trunk/library/classes/MUtil/Validate/Db/UniqueValue.php trunk/library/classes/MUtil/Validate/Dutch/BankAccount.php trunk/library/classes/MUtil/Validate/Dutch/Burgerservicenummer.php trunk/library/classes/MUtil/Validate/ElevenTest.php trunk/library/classes/MUtil/Validate/IsConfirmed.php trunk/library/classes/MUtil/Validate/Phone.php trunk/library/classes/MUtil/Validate/Require.php trunk/library/classes/MUtil/Validate/SimpleEmail.php trunk/library/classes/MUtil/Validate/SimpleEmails.php trunk/library/classes/MUtil/Validate/Url.php trunk/library/classes/MUtil/Version.php trunk/library/classes/MUtil/View/Helper/DatePicker.php trunk/library/classes/MUtil/View/Helper/Exhibitor.php trunk/library/classes/MUtil/View/Helper/FakeSubmit.php trunk/library/classes/MUtil/View/Helper/Html.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Auth.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Cache.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Database.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Exception.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/File.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Html.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Interface.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Memory.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Registry.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Text.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Time.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin/Variables.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug/Plugin.php trunk/library/classes/ZFDebug/Controller/Plugin/Debug.php trunk/library/controllers/AskController.php trunk/library/controllers/ConsentController.php trunk/library/controllers/ContactController.php trunk/library/controllers/CountryController.php trunk/library/controllers/DatabaseController.php trunk/library/controllers/EmailController.php trunk/library/controllers/ErrorController.php trunk/library/controllers/GroupController.php trunk/library/controllers/IndexController.php trunk/library/controllers/InvitationController.php trunk/library/controllers/LanguageController.php trunk/library/controllers/LogController.php trunk/library/controllers/LogMaintenanceController.php trunk/library/controllers/MailController.php trunk/library/controllers/MailServerController.php trunk/library/controllers/OptionController.php trunk/library/controllers/OrganizationController.php trunk/library/controllers/OverviewPlanController.php trunk/library/controllers/ProjectInformationController.php trunk/library/controllers/ProjectSurveysController.php trunk/library/controllers/ProjectTracksController.php trunk/library/controllers/ReceptionController.php trunk/library/controllers/RespondentController.php trunk/library/controllers/RespondentPlanController.php trunk/library/controllers/RoleController.php trunk/library/controllers/SourceController.php trunk/library/controllers/StaffController.php trunk/library/controllers/SurveyController.php trunk/library/controllers/SurveyMaintenanceController.php trunk/library/controllers/TokenPlanController.php trunk/library/controllers/TrackController.php trunk/library/controllers/TrackFieldsController.php trunk/library/controllers/TrackMaintenanceController.php trunk/library/controllers/TrackRoundController.php trunk/library/controllers/TrackRoundsController.php trunk/library/docs/Sample.php trunk/library/languages/FakeTranslations.php trunk/library/pre_bootstrap.php trunk/library/snippets/AddTracksSnippet.php trunk/library/snippets/AnswerModelSnippet.php trunk/library/snippets/BrowseSingleSurveyTokenSnippet.php trunk/library/snippets/DeleteInSourceTrackSnippet.php trunk/library/snippets/DeleteSingleSurveyInSourceTokenSnippet.php trunk/library/snippets/DeleteSingleSurveyNotUsedTokenSnippet.php trunk/library/snippets/DeleteTrackTokenSnippet.php trunk/library/snippets/EditRoundSnippet.php trunk/library/snippets/EditRoundStepSnippet.php trunk/library/snippets/EditSingleSurveyTokenSnippet.php trunk/library/snippets/EditTrackEngineSnippet.php trunk/library/snippets/EditTrackSnippet.php trunk/library/snippets/EditTrackTokenSnippet.php trunk/library/snippets/RespondentDetailsSnippet.php trunk/library/snippets/RespondentDetailsWithAssignmentsSnippet.php trunk/library/snippets/RespondentTokenSnippet.php trunk/library/snippets/RespondentTokenTabsSnippet.php trunk/library/snippets/SelectedTokensTitleSnippet.php trunk/library/snippets/ShowRoundSnippet.php trunk/library/snippets/ShowRoundStepSnippet.php trunk/library/snippets/ShowSingleSurveyTokenSnippet.php trunk/library/snippets/ShowTrackTokenSnippet.php trunk/library/snippets/ShowTrackUsageSnippet.php trunk/library/snippets/SurveyQuestionsSnippet.php trunk/library/snippets/TokenDateSelectorSnippet.php trunk/library/snippets/TokenNotFoundSnippet.php trunk/library/snippets/Track/AvailableTracksSnippets.php trunk/library/snippets/TrackAnswersModelSnippet.php trunk/library/snippets/TrackSurveyOverviewSnippet.php trunk/library/snippets/TrackTokenOverviewSnippet.php trunk/library/snippets/TrackUsageTextDetailsSnippet.php Modified: trunk/library/classes/Gems/AccessLog.php =================================================================== --- trunk/library/classes/Gems/AccessLog.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/AccessLog.php 2011-09-16 06:24:15 UTC (rev 28) @@ -27,7 +27,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * @version $Id: AccessLog.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ * @package Gems * @subpackage AccessLog * @copyright Copyright (c) 2011 Erasmus MC Property changes on: trunk/library/classes/Gems/AccessLog.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Auth.php =================================================================== --- trunk/library/classes/Gems/Auth.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Auth.php 2011-09-16 06:24:15 UTC (rev 28) @@ -26,7 +26,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * @version $Id: Auth.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Auth * @copyright Copyright (c) 2011 Erasmus MC Property changes on: trunk/library/classes/Gems/Auth.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Communication/Exception.php =================================================================== --- trunk/library/classes/Gems/Communication/Exception.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Communication/Exception.php 2011-09-16 06:24:15 UTC (rev 28) @@ -35,7 +35,7 @@ * @see Gems_Exception * * @author Michiel Rook <mi...@to...> - * @version $Id: Exception.php 448 2011-08-24 07:19:21Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Communication */ Property changes on: trunk/library/classes/Gems/Communication/Exception.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Communication/RespondentContainer.php =================================================================== --- trunk/library/classes/Gems/Communication/RespondentContainer.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Communication/RespondentContainer.php 2011-09-16 06:24:15 UTC (rev 28) @@ -34,7 +34,7 @@ * A simple value-object containing respondent information * * @author Michiel Rook <mi...@to...> - * @version $Id: RespondentContainer.php 448 2011-08-24 07:19:21Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Communication */ Property changes on: trunk/library/classes/Gems/Communication/RespondentContainer.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Communication/RespondentModelWriter.php =================================================================== --- trunk/library/classes/Gems/Communication/RespondentModelWriter.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Communication/RespondentModelWriter.php 2011-09-16 06:24:15 UTC (rev 28) @@ -34,7 +34,7 @@ * Writer implementation to save respondents to the database * * @author Michiel Rook <mi...@to...> - * @version $Id: RespondentModelWriter.php 448 2011-08-24 07:19:21Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Communication */ Property changes on: trunk/library/classes/Gems/Communication/RespondentModelWriter.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Communication/RespondentReader.php =================================================================== --- trunk/library/classes/Gems/Communication/RespondentReader.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Communication/RespondentReader.php 2011-09-16 06:24:15 UTC (rev 28) @@ -34,7 +34,7 @@ * Reads respondents from a data source * * @author Michiel Rook <mi...@to...> - * @version $Id: RespondentReader.php 448 2011-08-24 07:19:21Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Communication */ Property changes on: trunk/library/classes/Gems/Communication/RespondentReader.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Communication/RespondentWriter.php =================================================================== --- trunk/library/classes/Gems/Communication/RespondentWriter.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Communication/RespondentWriter.php 2011-09-16 06:24:15 UTC (rev 28) @@ -34,7 +34,7 @@ * Writes respondents to a data source * * @author Michiel Rook <mi...@to...> - * @version $Id: RespondentWriter.php 448 2011-08-24 07:19:21Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Communication */ Property changes on: trunk/library/classes/Gems/Communication/RespondentWriter.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Controller/Action.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Controller/BrowseEditAction.php =================================================================== --- trunk/library/classes/Gems/Controller/BrowseEditAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Controller/BrowseEditAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: BrowseEditAction.php 456 2011-08-31 12:03:57Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Controller/BrowseEditAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Controller/ModelActionAbstract.php =================================================================== --- trunk/library/classes/Gems/Controller/ModelActionAbstract.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Controller/ModelActionAbstract.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: ModelActionAbstract.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Controller/ModelActionAbstract.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Cookies.php =================================================================== --- trunk/library/classes/Gems/Cookies.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Cookies.php 2011-09-16 06:24:15 UTC (rev 28) @@ -28,7 +28,7 @@ * * @author Matijs de Jong * @since 1.0 - * @version $Id: Cookies.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ * @package Gems * @subpackage Cookies * @copyright Copyright (c) 2011 Erasmus MC Property changes on: trunk/library/classes/Gems/Cookies.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/AskAction.php =================================================================== --- trunk/library/classes/Gems/Default/AskAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/AskAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: AskAction.php 456 2011-08-31 12:03:57Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/AskAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/ConsentAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/ContactAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/CountryAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/DatabaseAction.php =================================================================== --- trunk/library/classes/Gems/Default/DatabaseAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/DatabaseAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: DatabaseAction.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/DatabaseAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/EmailAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/ErrorAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/GroupAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/IndexAction.php =================================================================== --- trunk/library/classes/Gems/Default/IndexAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/IndexAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: IndexAction.php 476 2011-09-06 16:26:13Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/IndexAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/InvitationAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/LanguageAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/LogAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/LogMaintenanceAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/MailAction.php =================================================================== --- trunk/library/classes/Gems/Default/MailAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/MailAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -31,7 +31,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: MailAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/MailAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/MailServerAction.php =================================================================== --- trunk/library/classes/Gems/Default/MailServerAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/MailServerAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -31,7 +31,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: MailServerAction.php 478 2011-09-07 11:20:36Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/MailServerAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/OptionAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/OrganizationAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/OverviewPlanAction.php =================================================================== --- trunk/library/classes/Gems/Default/OverviewPlanAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/OverviewPlanAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: OverviewPlanAction.php 430 2011-08-18 10:40:21Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/OverviewPlanAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/ProjectInformationAction.php =================================================================== --- trunk/library/classes/Gems/Default/ProjectInformationAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/ProjectInformationAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: StaffAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/ProjectInformationAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/ProjectSurveysAction.php =================================================================== --- trunk/library/classes/Gems/Default/ProjectSurveysAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/ProjectSurveysAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -31,7 +31,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: ProjectSurveysAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/ProjectSurveysAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/ProjectTracksAction.php =================================================================== --- trunk/library/classes/Gems/Default/ProjectTracksAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/ProjectTracksAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -31,7 +31,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: ProjectTracksAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/ProjectTracksAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Property changes on: trunk/library/classes/Gems/Default/ReceptionAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/RespondentAction.php =================================================================== --- trunk/library/classes/Gems/Default/RespondentAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/RespondentAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: RespondentAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/RespondentAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/RespondentPlanAction.php =================================================================== --- trunk/library/classes/Gems/Default/RespondentPlanAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/RespondentPlanAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: RespondentPlanAction.php 430 2011-08-18 10:40:21Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/RespondentPlanAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/RoleAction.php =================================================================== --- trunk/library/classes/Gems/Default/RoleAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/RoleAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Michiel Rook * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: StaffAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/RoleAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/SourceAction.php =================================================================== --- trunk/library/classes/Gems/Default/SourceAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/SourceAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: SourceAction.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/SourceAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/StaffAction.php =================================================================== --- trunk/library/classes/Gems/Default/StaffAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/StaffAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -31,7 +31,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: StaffAction.php 460 2011-08-31 16:17:26Z mjong $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/StaffAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/SurveyAction.php =================================================================== --- trunk/library/classes/Gems/Default/SurveyAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/SurveyAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: SurveyAction.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/SurveyAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php =================================================================== --- trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: SurveyMaintenanceAction.php 345 2011-07-28 08:39:24Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/TokenPlanAction.php =================================================================== --- trunk/library/classes/Gems/Default/TokenPlanAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/TokenPlanAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de Jong <mj...@ma...> * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - * @version $Id: TokenPlanAction.php 430 2011-08-18 10:40:21Z 175780 $ + * @version $Id$ */ /** Property changes on: trunk/library/classes/Gems/Default/TokenPlanAction.php ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date Author Modified: trunk/library/classes/Gems/Default/TrackAction.php =================================================================== --- trunk/library/classes/Gems/Default/TrackAction.php 2011-09-15 16:15:28 UTC (rev 27) +++ trunk/library/classes/Gems/Default/TrackAction.php 2011-09-16 06:24:15 UTC (rev 28) @@ -32,7 +32,7 @@ * @author Matijs de... [truncated message content] |
From: <gem...@li...> - 2011-09-15 16:15:36
|
Revision: 27 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=27&view=rev Author: matijsdejong Date: 2011-09-15 16:15:28 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - continued implementation of #5 Reorganize menu Modified Paths: -------------- trunk/library/classes/Gems/Menu/MenuAbstract.php trunk/library/classes/Gems/Menu.php Modified: trunk/library/classes/Gems/Menu/MenuAbstract.php =================================================================== --- trunk/library/classes/Gems/Menu/MenuAbstract.php 2011-09-15 16:00:09 UTC (rev 26) +++ trunk/library/classes/Gems/Menu/MenuAbstract.php 2011-09-15 16:15:28 UTC (rev 27) @@ -198,6 +198,20 @@ return $this->addPage($label, $privilege, $controller, $action, $other); } + public function addMailSetupPage($label) + { + $setup = $this->addContainer($label); + + // MAIL Server CONTROLLER + $page = $setup->addBrowsePage($this->_('Servers'), 'pr.mail.server', 'mail-server'); + // $page->addAction($this->_('Test'), 'pr.mail.server.test', 'test')->addParameters(MUtil_Model::REQUEST_ID); + + // MAIL CONTROLLER + $setup->addBrowsePage($this->_('Templates'), 'pr.mail', 'mail'); + + return $setup; + } + /** * Add a page to the menu * Modified: trunk/library/classes/Gems/Menu.php =================================================================== --- trunk/library/classes/Gems/Menu.php 2011-09-15 16:00:09 UTC (rev 26) +++ trunk/library/classes/Gems/Menu.php 2011-09-15 16:15:28 UTC (rev 27) @@ -214,13 +214,6 @@ // RECEPTION CODE CONTROLLER $setup->addBrowsePage($this->_('Reception codes'), 'pr.reception', 'reception'); - // MAIL Server CONTROLLER - $page = $setup->addBrowsePage($this->_('Email servers'), 'pr.mail.server', 'mail-server'); - // $page->addAction($this->_('Test'), 'pr.mail.server.test', 'test')->addParameters(MUtil_Model::REQUEST_ID); - - // MAIL CONTROLLER - $setup->addBrowsePage($this->_('Email'), 'pr.mail', 'mail'); - // SURVEY SOURCES CONTROLLER $page = $setup->addBrowsePage($this->_('Survey Sources'), 'pr.source', 'source'); $page->addDeleteAction(); @@ -593,6 +586,9 @@ // SETUP CONTAINER $this->addGemsSetupContainer($this->escort->_('Setup')); + // MAIL CONTAINER + $this->addMailSetupPage($this->escort->_('Mail')); + // OTHER ITEMS $this->addLogonOffToken(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 16:00:21
|
Revision: 26 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=26&view=rev Author: matijsdejong Date: 2011-09-15 16:00:09 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - moved privilege based views to Roles instead of project for #5 Reorganize menu - added default templates to mail tempplates Modified Paths: -------------- trunk/library/classes/Gems/Default/ProjectInformationAction.php trunk/library/classes/Gems/Default/RoleAction.php trunk/library/classes/Gems/Default/StaffAction.php trunk/library/classes/Gems/Menu.php trunk/library/configs/db/tables/gems__mail_templates.200.sql Modified: trunk/library/classes/Gems/Default/ProjectInformationAction.php =================================================================== --- trunk/library/classes/Gems/Default/ProjectInformationAction.php 2011-09-15 15:08:23 UTC (rev 25) +++ trunk/library/classes/Gems/Default/ProjectInformationAction.php 2011-09-15 16:00:09 UTC (rev 26) @@ -1,47 +1,47 @@ <?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. - */ - /** - * - * @author Matijs de Jong - * @since 1.0 - * @version 1.1 - * @package Gems + * 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 Gems * @subpackage Default + * @author Matijs de Jong <mj...@ma...> + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: StaffAction.php 460 2011-08-31 16:17:26Z mjong $ */ /** - * - * @author Matijs de Jong - * @package Gems + * + * @package Gems * @subpackage Default + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.0 */ class Gems_Default_ProjectInformationAction extends Gems_Controller_Action { @@ -54,12 +54,6 @@ $this->html[] = $table; } - public function aclAction() - { - $this->html->h2($this->_('Access Control Lists')); - $this->_showTable($this->_('ACL\'s'), $this->acl->getRoles()); - } - public function changelogAction() { $this->html->h2($this->_('Changelog')); @@ -107,7 +101,7 @@ $this->html->h2($this->_('Project information')); $versions = $this->loader->getVersions(); - + $data[$this->_('Project name')] = $this->project->name; $data[$this->_('Project version')] = $versions->getProjectVersion(); $data[$this->_('Gems version')] = $versions->getGemsVersion(); @@ -139,23 +133,6 @@ $this->html->raw($php->getInfo()); } - public function privilegeAction() - { - $privileges = array(); - - foreach ($this->acl->getPrivilegeRoles() as $privilege => $roles) { - $privileges[$privilege][$this->_('Privilege')] = $privilege; - $privileges[$privilege][$this->_('Allowed')] = $roles[Zend_Acl::TYPE_ALLOW] ? implode(', ', $roles[Zend_Acl::TYPE_ALLOW]) : null; - $privileges[$privilege][$this->_('Denied')] = $roles[Zend_Acl::TYPE_DENY] ? implode(', ', $roles[Zend_Acl::TYPE_DENY]) : null; - } - ksort($privileges); - - $this->html->h2($this->_('Project privileges')); - $this->_showTable($this->_('Privileges'), $privileges, true); - - // $this->acl->echoRules(); - } - public function projectAction() { $project = $this->project; @@ -166,24 +143,6 @@ } - public function roleAction() - { - $roles = array(); - - foreach ($this->acl->getRolePrivileges() as $role => $privileges) { - $roles[$role][$this->_('Role')] = $role; - $roles[$role][$this->_('Parents')] = $privileges[MUtil_Acl::PARENTS] ? implode(', ', $privileges[MUtil_Acl::PARENTS]) : null; - $roles[$role][$this->_('Allowed')] = $privileges[Zend_Acl::TYPE_ALLOW] ? implode(', ', $privileges[Zend_Acl::TYPE_ALLOW]) : null; - $roles[$role][$this->_('Denied')] = $privileges[Zend_Acl::TYPE_DENY] ? implode(', ', $privileges[Zend_Acl::TYPE_DENY]) : null; - } - ksort($roles); - - $this->html->h2($this->_('Project roles')); - $this->_showTable($this->_('Roles'), $roles, true); - - // $this->acl->echoRules(); - } - public function sessionAction() { $this->html->h2($this->_('Session content')); Modified: trunk/library/classes/Gems/Default/RoleAction.php =================================================================== --- trunk/library/classes/Gems/Default/RoleAction.php 2011-09-15 15:08:23 UTC (rev 25) +++ trunk/library/classes/Gems/Default/RoleAction.php 2011-09-15 16:00:09 UTC (rev 26) @@ -1,10 +1,9 @@ <?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 @@ -15,7 +14,7 @@ * * 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 @@ -26,78 +25,38 @@ * 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. - */ - -/** - * - * @author Michiel Rook - * @since 1.0 - * @version 1.3 - * @package Gems + * + * + * @package Gems * @subpackage Default + * @author Michiel Rook + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: StaffAction.php 460 2011-08-31 16:17:26Z mjong $ */ /** - * + * * @author Michiel Rook - * @package Gems + * @package Gems * @subpackage Default + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.3 */ class Gems_Default_RoleAction extends Gems_Controller_BrowseEditAction { - - /** - * Check the disabled (=inherited) privileges - * - * @param Gems_Form $form - * @param boolean $isNew - * @return Gems_Form - */ - public function beforeFormDisplay($form, $isNew) { - $form = parent::beforeFormDisplay($form, $isNew); - $checkbox = $form->getElement('grl_privileges'); - $values = $checkbox->getValue(); - $disabled = $checkbox->getAttrib('disable'); - - $values = array_merge($values, $disabled); - $checkbox->setValue($values); - return $form; + protected function _showTable($caption, $data, $nested = false) + { + $table = MUtil_Html_TableElement::createArray($data, $caption, $nested); + $table->class = 'browser'; + $this->html[] = $table; } - - /** - * - * @param array $data The data that will be saved. - * @param boolean $isNew - * $param Zend_Form $form - * @return array|null Returns null if save was already handled, the data otherwise. - */ - public function beforeSave(array &$data, $isNew, Zend_Form $form = null) - { - if (isset($data['grl_parents'])) { - $data['grl_parents'] = implode(',', $data['grl_parents']); - } - if (isset($data['grl_privileges'])) { - $data['grl_privileges'] = implode(',', $data['grl_privileges']); - } - - return true; - } - - /** - * @param array $data - * @param bool $isNew - * @return array - */ - public function afterFormLoad(array &$data, $isNew) + public function aclAction() { - if (isset($data['grl_parents']) && (! is_array($data['grl_parents']))) { - $data['grl_parents'] = explode(',', $data['grl_parents']); - } - - if (isset($data['grl_privileges']) && (! is_array($data['grl_privileges']))) { - $data['grl_privileges'] = explode(',', $data['grl_privileges']); - } + $this->html->h2($this->_('Access Control Lists')); + $this->_showTable($this->_('ACL\'s'), $this->acl->getRoles()); } /** @@ -128,14 +87,68 @@ $disable = array(); foreach($result[$data['grl_name']][MUtil_Acl::INHERITED][Zend_Acl::TYPE_ALLOW] as $key=>$value) { $disable[] = $value; - } + } $checkbox->setAttrib('disable', $disable); //Don't use escaping, so the line breaks work $checkbox->setAttrib('escape', false); } - + /** + * @param array $data + * @param bool $isNew + * @return array + */ + public function afterFormLoad(array &$data, $isNew) + { + if (isset($data['grl_parents']) && (! is_array($data['grl_parents']))) { + $data['grl_parents'] = explode(',', $data['grl_parents']); + } + + if (isset($data['grl_privileges']) && (! is_array($data['grl_privileges']))) { + $data['grl_privileges'] = explode(',', $data['grl_privileges']); + } + } + + /** + * Check the disabled (=inherited) privileges + * + * @param Gems_Form $form + * @param boolean $isNew + * @return Gems_Form + */ + public function beforeFormDisplay($form, $isNew) { + $form = parent::beforeFormDisplay($form, $isNew); + $checkbox = $form->getElement('grl_privileges'); + $values = $checkbox->getValue(); + $disabled = $checkbox->getAttrib('disable'); + + $values = array_merge($values, $disabled); + $checkbox->setValue($values); + return $form; + } + + /** + * + * @param array $data The data that will be saved. + * @param boolean $isNew + * $param Zend_Form $form + * @return array|null Returns null if save was already handled, the data otherwise. + */ + public function beforeSave(array &$data, $isNew, Zend_Form $form = null) + { + if (isset($data['grl_parents'])) { + $data['grl_parents'] = implode(',', $data['grl_parents']); + } + + if (isset($data['grl_privileges'])) { + $data['grl_privileges'] = implode(',', $data['grl_privileges']); + } + + return true; + } + + /** * Creates a model for getModel(). Called only for each new $action. * * The parameters allow you to easily adapt the model to the current action. The $detailed @@ -156,14 +169,14 @@ $model->set('grl_privileges', 'label', $this->_('Privileges'), 'formatFunction', array($this, 'formatLongLine')); Gems_Model::setChangeFieldsByPrefix($model, 'grl'); - + return $model; } - + public function formatLongLine($line) { if (strlen($line) > 50) { - return substr($line, 0, 50) . '...'; + return substr($line, 0, 50) . '...'; } else { return $line; } @@ -178,12 +191,46 @@ { return $this->_('Administrative roles'); } - + protected function getUsedPrivileges() { $privileges = $this->menu->getUsedPrivileges(); asort($privileges); return $privileges; - } + } + + public function overviewAction() + { + $roles = array(); + + foreach ($this->acl->getRolePrivileges() as $role => $privileges) { + $roles[$role][$this->_('Role')] = $role; + $roles[$role][$this->_('Parents')] = $privileges[MUtil_Acl::PARENTS] ? implode(', ', $privileges[MUtil_Acl::PARENTS]) : null; + $roles[$role][$this->_('Allowed')] = $privileges[Zend_Acl::TYPE_ALLOW] ? implode(', ', $privileges[Zend_Acl::TYPE_ALLOW]) : null; + $roles[$role][$this->_('Denied')] = $privileges[Zend_Acl::TYPE_DENY] ? implode(', ', $privileges[Zend_Acl::TYPE_DENY]) : null; + } + ksort($roles); + + $this->html->h2($this->_('Project role overview')); + + $this->_showTable($this->_('Roles'), $roles, true); + } + + public function privilegeAction() + { + $privileges = array(); + + foreach ($this->acl->getPrivilegeRoles() as $privilege => $roles) { + $privileges[$privilege][$this->_('Privilege')] = $privilege; + $privileges[$privilege][$this->_('Allowed')] = $roles[Zend_Acl::TYPE_ALLOW] ? implode(', ', $roles[Zend_Acl::TYPE_ALLOW]) : null; + $privileges[$privilege][$this->_('Denied')] = $roles[Zend_Acl::TYPE_DENY] ? implode(', ', $roles[Zend_Acl::TYPE_DENY]) : null; + } + ksort($privileges); + + $this->html->h2($this->_('Project privileges')); + $this->_showTable($this->_('Privileges'), $privileges, true); + + // $this->acl->echoRules(); + } } Modified: trunk/library/classes/Gems/Default/StaffAction.php =================================================================== --- trunk/library/classes/Gems/Default/StaffAction.php 2011-09-15 15:08:23 UTC (rev 25) +++ trunk/library/classes/Gems/Default/StaffAction.php 2011-09-15 16:00:09 UTC (rev 26) @@ -36,7 +36,7 @@ /** * - * @package Gems + * @package Gems * @subpackage Default * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License @@ -184,7 +184,7 @@ 'multiOptions', $this->util->getDbLookup()->getOrganizations(), 'default', $this->escort->getCurrentOrganization()); } - + $model->set('gsf_id_primary_group', 'label', $this->_('Primary function'), 'multiOptions', MUtil_Lazy::call($this->util->getDbLookup()->getStaffGroups)); $model->set('gsf_gender', 'label', $this->_('Gender'), 'multiOptions', $this->util->getTranslated()->getGenders()); Modified: trunk/library/classes/Gems/Menu.php =================================================================== --- trunk/library/classes/Gems/Menu.php 2011-09-15 15:08:23 UTC (rev 25) +++ trunk/library/classes/Gems/Menu.php 2011-09-15 16:00:09 UTC (rev 26) @@ -185,12 +185,9 @@ // PROJECT $page = $setup->addPage($this->_('Project setup'), 'pr.project-information', 'project-information'); - $page->addAction($this->_('ACL'), null, 'acl'); $page->addAction($this->_('Errors'), null, 'errors'); $page->addAction($this->_('PHP'), null, 'php'); - $page->addAction($this->_('Privileges'), null, 'privilege'); $page->addAction($this->_('Project'), null, 'project'); - $page->addAction($this->_('Roles'), null, 'role'); $page->addAction($this->_('Session'), null, 'session'); // COUNTRIES CONTROLLER @@ -209,9 +206,11 @@ $setup->addBrowsePage($this->_('Groups'), 'pr.group', 'group'); // ROLES CONTROLLER - $setup->addBrowsePage($this->_('Roles'), 'pr.role', 'role'); + $page = $setup->addBrowsePage($this->_('Roles'), 'pr.role', 'role'); + $page->addAction($this->_('ACL'), null, 'acl'); + $page->addAction($this->_('Assigned'), null, 'overview'); + $page->addAction($this->_('Privileges'), null, 'privilege'); - // RECEPTION CODE CONTROLLER $setup->addBrowsePage($this->_('Reception codes'), 'pr.reception', 'reception'); Modified: trunk/library/configs/db/tables/gems__mail_templates.200.sql =================================================================== --- trunk/library/configs/db/tables/gems__mail_templates.200.sql 2011-09-15 15:08:23 UTC (rev 25) +++ trunk/library/configs/db/tables/gems__mail_templates.200.sql 2011-09-15 16:00:09 UTC (rev 26) @@ -20,3 +20,19 @@ AUTO_INCREMENT = 20 CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'; +INSERT INTO gems__mail_templates (gmt_subject, gmt_body, gmt_changed, gmt_changed_by, gmt_created, gmt_created_by) + VALUES + ('Questions for your treatement at {organization}', 'Dear {greeting}, + +Recently you visited [b]{organization}[/b] for treatment. For your proper treatment you are required to answer some questions. + +Click on [url={token_url}]this link[/url] to start or go to [url]{site_ask_url}[/url] and enter your token "{token}". + +{organization_signature}', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1), + ('Reminder: your treatement at {organization}', 'Dear {greeting}, + +We remind you that for your proper treatment at [b]{organization}[/b] you are required to answer some questions. + +Click on [url={token_url}]this link[/url] to start or go to [url]{site_ask_url}[/url] and enter your token "{token}". + +{organization_signature}', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 15:08:29
|
Revision: 25 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=25&view=rev Author: matijsdejong Date: 2011-09-15 15:08:23 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - #4 seeing staff from other organizations is now a separate privilege - minor bug: autoupdate right was not set for project view in SingleTrack projects Modified Paths: -------------- trunk/library/classes/Gems/Default/StaffAction.php trunk/library/classes/Gems/Menu/MenuAbstract.php trunk/library/classes/Gems/Menu.php trunk/library/configs/db/tables/gems__roles.20.sql Modified: trunk/library/classes/Gems/Default/StaffAction.php =================================================================== --- trunk/library/classes/Gems/Default/StaffAction.php 2011-09-15 14:54:38 UTC (rev 24) +++ trunk/library/classes/Gems/Default/StaffAction.php 2011-09-15 15:08:23 UTC (rev 25) @@ -150,7 +150,7 @@ $groups = $this->db->fetchPairs($sql); if (($this->session->user_role == 'admin' && isset($groups) && $groups[$data['gsf_id_primary_group']] == 'super') - || (!$this->escort->hasPrivilege('pr.staff.edit.all') && + || (! $this->escort->hasPrivilege('pr.staff.edit.all') && $data['gsf_id_organization'] != $this->escort->getCurrentOrganization())) { throw new Zend_Exception($this->_('You are not allowed to edit this staff member.')); } @@ -179,10 +179,12 @@ 'column_expression', "CONCAT(COALESCE(CONCAT(gsf_last_name, ', '), '-, '), COALESCE(CONCAT(gsf_first_name, ' '), ''), COALESCE(gsf_surname_prefix, ''))"); $model->set('gsf_email', 'label', $this->_('E-Mail'), 'itemDisplay', 'MUtil_Html_AElement::ifmail'); - $model->set('gsf_id_organization', 'label', $this->_('Organization'), - 'multiOptions', $this->util->getDbLookup()->getOrganizations(), - 'default', $this->escort->getCurrentOrganization()); - + if ($this->escort->hasPrivilege('pr.staff.see.all')) { + $model->set('gsf_id_organization', 'label', $this->_('Organization'), + 'multiOptions', $this->util->getDbLookup()->getOrganizations(), + 'default', $this->escort->getCurrentOrganization()); + } + $model->set('gsf_id_primary_group', 'label', $this->_('Primary function'), 'multiOptions', MUtil_Lazy::call($this->util->getDbLookup()->getStaffGroups)); $model->set('gsf_gender', 'label', $this->_('Gender'), 'multiOptions', $this->util->getTranslated()->getGenders()); @@ -202,9 +204,14 @@ { $elements = parent::getAutoSearchElements($model, $data); - // Select organization - $options = array('' => $this->_('(all organizations)')) + $this->getModel()->get('gsf_id_organization', 'multiOptions'); - $select = new Zend_Form_Element_Select('gsf_id_organization', array('multiOptions' => $options)); + if ($this->escort->hasPrivilege('pr.staff.see.all')) { + // Select organization + $options = array('' => $this->_('(all organizations)')) + $this->getModel()->get('gsf_id_organization', 'multiOptions'); + $select = new Zend_Form_Element_Select('gsf_id_organization', array('multiOptions' => $options)); + } else { + $select = new Zend_Form_Element_Hidden('gsf_id_organization', + array('value' => $this->escort->getCurrentOrganization())); + } // Position as second element $search = array_shift($elements); Modified: trunk/library/classes/Gems/Menu/MenuAbstract.php =================================================================== --- trunk/library/classes/Gems/Menu/MenuAbstract.php 2011-09-15 14:54:38 UTC (rev 24) +++ trunk/library/classes/Gems/Menu/MenuAbstract.php 2011-09-15 15:08:23 UTC (rev 25) @@ -253,6 +253,8 @@ $trackSurveys->addAction($this->_('Preview'), 'pr.project.questions', 'questions') ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gro_id_track', Gems_Model::SURVEY_ID, 'gsu_id_survey'); + $infoPage->addAutofilterAction(); + // MUtil_Echo::track($infoPage->_toNavigationArray(array($this->escort->request))); } else { if ($this->escort instanceof Gems_Project_Tracks_StandAloneSurveysInterface) { Modified: trunk/library/classes/Gems/Menu.php =================================================================== --- trunk/library/classes/Gems/Menu.php 2011-09-15 14:54:38 UTC (rev 24) +++ trunk/library/classes/Gems/Menu.php 2011-09-15 15:08:23 UTC (rev 25) @@ -606,6 +606,7 @@ $this->addHiddenPrivilige('pr.respondent.result'); $this->addHiddenPrivilige('pr.respondent.who'); $this->addHiddenPrivilige('pr.staff.edit.all'); + $this->addHiddenPrivilige('pr.staff.see.all'); $this->addHiddenPrivilige('pr.token.mail.freetext'); Modified: trunk/library/configs/db/tables/gems__roles.20.sql =================================================================== --- trunk/library/configs/db/tables/gems__roles.20.sql 2011-09-15 14:54:38 UTC (rev 24) +++ trunk/library/configs/db/tables/gems__roles.20.sql 2011-09-15 15:08:23 UTC (rev 25) @@ -32,5 +32,5 @@ ('staff','staff','pr.option.edit,pr.option.password,pr.plan,pr.plan.overview,pr.plan.token,pr.project,pr.project.questions,pr.respondent.create,pr.respondent.edit,pr.respondent.who,pr.setup,pr.staff,pr.survey,pr.survey.create,pr.token,pr.token.answers,pr.token.delete,pr.token.edit,pr.token.mail,pr.token.print,pr.track,pr.track.create,pr.track.delete,pr.track.edit,pr.respondent.reportdeath','guest', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1), ('physician','physician','','staff', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1), ('researcher','researcher','pr.invitation,pr.result,pr.islogin','', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1), - ('admin','admin','pr.consent,pr.consent.create,pr.consent.edit,pr.group,pr.role,pr.mail,pr.mail.create,pr.mail.delete,pr.mail.edit,pr.organization,pr.organization-switch,pr.plan.overview.excel,pr.plan.respondent,pr.plan.respondent.excel,pr.plan.token.excel,pr.project-information,pr.reception,pr.reception.create,pr.reception.edit,pr.respondent.choose-org,pr.respondent.delete,pr.respondent.result,pr.source,pr.staff.create,pr.staff.delete,pr.staff.edit,pr.survey-maintenance,pr.track-maintenance,pr.token.mail.freetext','staff,researcher,security', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1), + ('admin','admin','pr.consent,pr.consent.create,pr.consent.edit,pr.group,pr.role,pr.mail,pr.mail.create,pr.mail.delete,pr.mail.edit,pr.organization,pr.organization-switch,pr.plan.overview.excel,pr.plan.respondent,pr.plan.respondent.excel,pr.plan.token.excel,pr.project-information,pr.reception,pr.reception.create,pr.reception.edit,pr.respondent.choose-org,pr.respondent.delete,pr.respondent.result,pr.source,pr.staff.create,pr.staff.delete,pr.staff.edit,pr.staff.see.all,pr.survey-maintenance,pr.track-maintenance,pr.token.mail.freetext','staff,researcher,security', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1), ('super','super','pr.consent.delete,pr.country,pr.country.create,pr.country.delete,pr.country.edit,pr.database,pr.database.create,pr.database.delete,pr.database.edit,pr.database.execute,pr.database.patches,pr.group.create,pr.group.edit,pr.role.create,pr.role.edit,pr.language,pr.organization.create,pr.organization.edit,pr.plan.choose-org,pr.plan.mail-as-application,pr.reception.delete,pr.source.create,pr.source.edit,pr.source.synchronize,pr.source.synchronize-all,pr.staff.edit.all,pr.survey-maintenance.edit,pr.track-maintenance.create,pr.track-maintenance.edit','admin', CURRENT_TIMESTAMP, 1, CURRENT_TIMESTAMP, 1); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 14:54:44
|
Revision: 24 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=24&view=rev Author: matijsdejong Date: 2011-09-15 14:54:38 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - fix for missing jQuery Modified Paths: -------------- trunk/library/classes/Gems/Form.php Modified: trunk/library/classes/Gems/Form.php =================================================================== --- trunk/library/classes/Gems/Form.php 2011-09-15 14:27:28 UTC (rev 23) +++ trunk/library/classes/Gems/Form.php 2011-09-15 14:54:38 UTC (rev 24) @@ -152,5 +152,6 @@ $args['targetId'] = '#' . $args['targetId']; } $this->_autosubmit = $args; + $this->activateJQuery(); } } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 14:27:41
|
Revision: 23 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=23&view=rev Author: matijsdejong Date: 2011-09-15 14:27:28 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - translations updated Modified Paths: -------------- trunk/library/languages/default-en.mo trunk/library/languages/default-en.po trunk/library/languages/default-nl.mo trunk/library/languages/default-nl.po Modified: trunk/library/languages/default-en.mo =================================================================== (Binary files differ) Modified: trunk/library/languages/default-en.po =================================================================== --- trunk/library/languages/default-en.po 2011-09-15 14:19:01 UTC (rev 22) +++ trunk/library/languages/default-en.po 2011-09-15 14:27:28 UTC (rev 23) @@ -2,9 +2,9 @@ msgstr "" "Project-Id-Version: Pulse EN\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-09-06 12:40+0100\n" +"POT-Creation-Date: 2011-09-15 16:26+0100\n" "PO-Revision-Date: \n" -"Last-Translator: Menno Dekker <men...@er...>\n" +"Last-Translator: Matijs de Jong <mj...@ma...>\n" "Language-Team: Erasmus MGZ <mat...@ma...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -23,43 +23,43 @@ msgid "Path %s not writable" msgstr "Path %s not writable" -#: classes/GemsEscort.php:823 +#: classes/GemsEscort.php:841 #, php-format msgid "User: %s" msgstr "User: %s" -#: classes/GemsEscort.php:847 +#: classes/GemsEscort.php:865 msgid "version" msgstr "version" -#: classes/GemsEscort.php:1383 +#: classes/GemsEscort.php:1401 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:1505 +#: classes/GemsEscort.php:1523 msgid "No access to site." msgstr "No access to site." -#: classes/GemsEscort.php:1507 -#: classes/GemsEscort.php:1543 +#: classes/GemsEscort.php:1525 +#: classes/GemsEscort.php:1561 msgid "You have no access to this site." msgstr "You have no access to this site." -#: classes/GemsEscort.php:1523 +#: classes/GemsEscort.php:1541 msgid "No access to page" msgstr "No access to page" -#: classes/GemsEscort.php:1525 +#: classes/GemsEscort.php:1543 #, 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:1530 -#: classes/GemsEscort.php:1541 +#: classes/GemsEscort.php:1548 +#: classes/GemsEscort.php:1559 msgid "You are no longer logged in." msgstr "You are no longer logged in." -#: classes/GemsEscort.php:1531 +#: classes/GemsEscort.php:1549 msgid "You must login to access this page." msgstr "You must login to access this page." @@ -169,7 +169,7 @@ msgstr "Privileges" #: classes/Gems/Menu.php:192 -#: classes/Gems/Menu.php:575 +#: classes/Gems/Menu.php:589 msgid "Project" msgstr "Project" @@ -199,182 +199,188 @@ msgstr "Reception codes" #: classes/Gems/Menu.php:219 +msgid "Email servers" +msgstr "Email servers" + +#: classes/Gems/Menu.php:223 msgid "Email" msgstr "Email" -#: classes/Gems/Menu.php:222 +#: classes/Gems/Menu.php:226 msgid "Survey Sources" msgstr "Survey Sources" -#: classes/Gems/Menu.php:224 +#: classes/Gems/Menu.php:228 msgid "Check status" msgstr "Check status" -#: classes/Gems/Menu.php:225 +#: classes/Gems/Menu.php:229 msgid "Synchronize surveys" msgstr "Synchronize surveys" -#: classes/Gems/Menu.php:226 -#: classes/Gems/Menu.php:237 +#: classes/Gems/Menu.php:230 +#: classes/Gems/Menu.php:241 msgid "Check answers" msgstr "Check answers" -#: classes/Gems/Menu.php:227 +#: classes/Gems/Menu.php:231 msgid "Synchronize all surveys" msgstr "Synchronize all surveys" -#: classes/Gems/Menu.php:228 -#: classes/Gems/Menu.php:238 +#: classes/Gems/Menu.php:232 +#: classes/Gems/Menu.php:242 msgid "Check all answers" msgstr "Check all answers" -#: classes/Gems/Menu.php:231 -#: classes/Gems/Menu.php:382 +#: classes/Gems/Menu.php:235 +#: classes/Gems/Menu.php:396 msgid "Surveys" msgstr "Surveys" -#: classes/Gems/Menu.php:234 +#: classes/Gems/Menu.php:238 msgid "PDF" msgstr "PDF" -#: classes/Gems/Menu.php:243 -#: classes/Gems/Menu.php:348 +#: classes/Gems/Menu.php:247 +#: classes/Gems/Menu.php:362 msgid "Tracks" msgstr "Tracks" -#: classes/Gems/Menu.php:246 +#: classes/Gems/Menu.php:250 msgid "Fields" msgstr "Fields" -#: classes/Gems/Menu.php:253 +#: classes/Gems/Menu.php:257 msgid "Rounds" msgstr "Rounds" -#: classes/Gems/Menu.php:262 +#: classes/Gems/Menu.php:266 msgid "Round" msgstr "Round" -#: classes/Gems/Menu.php:268 +#: classes/Gems/Menu.php:272 msgid "Check assignments" msgstr "Check assignments" -#: classes/Gems/Menu.php:271 +#: classes/Gems/Menu.php:275 msgid "Check all assignments" msgstr "Check all assignments" -#: classes/Gems/Menu.php:274 +#: classes/Gems/Menu.php:278 msgid "Logging" msgstr "Logging" -#: classes/Gems/Menu.php:278 +#: classes/Gems/Menu.php:282 msgid "Maintenance" msgstr "Maintenance" -#: classes/Gems/Menu.php:292 +#: classes/Gems/Menu.php:296 #, php-format msgid "Stand-alone privilige: %s" msgstr "Stand-alone privilige: %s" -#: classes/Gems/Menu.php:299 +#: classes/Gems/Menu.php:303 msgid "Logon" msgstr "Logon" -#: classes/Gems/Menu.php:300 +#: classes/Gems/Menu.php:304 msgid "Lost password" msgstr "Lost password" -#: classes/Gems/Menu.php:301 +#: classes/Gems/Menu.php:305 msgid "Your account" msgstr "Your account" -#: classes/Gems/Menu.php:302 +#: classes/Gems/Menu.php:306 msgid "Activity overview" msgstr "Activity overview" -#: classes/Gems/Menu.php:303 +#: classes/Gems/Menu.php:307 msgid "Change password" msgstr "Change password" -#: classes/Gems/Menu.php:304 -#: classes/Gems/Menu.php:343 -#: classes/Gems/Menu.php:369 +#: classes/Gems/Menu.php:308 +#: classes/Gems/Menu.php:348 +#: classes/Gems/Menu.php:383 msgid "Token" msgstr "Token" -#: classes/Gems/Menu.php:305 +#: classes/Gems/Menu.php:309 msgid "Logoff" msgstr "Logoff" -#: classes/Gems/Menu.php:339 +#: classes/Gems/Menu.php:344 msgid "Track" msgstr "Track" -#: classes/Gems/Menu.php:357 -#: classes/Gems/Menu.php:388 +#: classes/Gems/Menu.php:351 +#: classes/Gems/Menu.php:371 +#: classes/Gems/Menu.php:402 msgid "Add" msgstr "Add" -#: classes/Gems/Menu.php:361 +#: classes/Gems/Menu.php:355 +#: classes/Gems/Menu.php:438 +msgid "Preview" +msgstr "Preview" + +#: classes/Gems/Menu.php:375 msgid "Assignments" msgstr "Assignments" -#: classes/Gems/Menu.php:365 +#: classes/Gems/Menu.php:379 msgid "Show" msgstr "Show" -#: classes/Gems/Menu.php:373 +#: classes/Gems/Menu.php:387 msgid "Edit" msgstr "Edit" -#: classes/Gems/Menu.php:377 +#: classes/Gems/Menu.php:391 msgid "Delete" msgstr "Delete" -#: classes/Gems/Menu.php:392 +#: classes/Gems/Menu.php:406 msgid "Assigned" msgstr "Assigned" -#: classes/Gems/Menu.php:414 +#: classes/Gems/Menu.php:428 msgid "Fill in" msgstr "Fill in" -#: classes/Gems/Menu.php:418 +#: classes/Gems/Menu.php:432 msgid "Print PDF" msgstr "Print PDF" -#: classes/Gems/Menu.php:421 +#: classes/Gems/Menu.php:435 msgid "E-Mail now!" msgstr "E-Mail now!" -#: classes/Gems/Menu.php:424 -msgid "Preview" -msgstr "Preview" - -#: classes/Gems/Menu.php:427 +#: classes/Gems/Menu.php:441 msgid "Answers" msgstr "Answers" -#: classes/Gems/Menu.php:565 +#: classes/Gems/Menu.php:579 msgid "Respondents" msgstr "Patients" -#: classes/Gems/Menu.php:568 +#: classes/Gems/Menu.php:582 msgid "Overview" msgstr "Overview" -#: classes/Gems/Menu.php:578 +#: classes/Gems/Menu.php:592 msgid "Staff" msgstr "Staff" -#: classes/Gems/Menu.php:581 +#: classes/Gems/Menu.php:595 msgid "Setup" msgstr "Setup" -#: classes/Gems/Menu.php:587 +#: classes/Gems/Menu.php:601 msgid "Contact" msgstr "Contact" -#: classes/Gems/Menu.php:599 +#: classes/Gems/Menu.php:613 msgid "Changelog" msgstr "Changelog" @@ -462,65 +468,65 @@ msgid "Free search text" msgstr "Free search text" -#: classes/Gems/Controller/BrowseEditAction.php:559 +#: classes/Gems/Controller/BrowseEditAction.php:560 msgid "Search" msgstr "Search" -#: classes/Gems/Controller/BrowseEditAction.php:575 +#: classes/Gems/Controller/BrowseEditAction.php:576 #, php-format msgid "No %s found" msgstr "No %s found" -#: classes/Gems/Controller/BrowseEditAction.php:633 +#: classes/Gems/Controller/BrowseEditAction.php:634 #, php-format msgid "No %s found." msgstr "No %s found." -#: classes/Gems/Controller/BrowseEditAction.php:748 +#: classes/Gems/Controller/BrowseEditAction.php:749 msgid "Are you sure?" msgstr "Are you sure?" -#: classes/Gems/Controller/BrowseEditAction.php:764 +#: classes/Gems/Controller/BrowseEditAction.php:765 msgid "Yes" msgstr "Yes" -#: classes/Gems/Controller/BrowseEditAction.php:765 +#: classes/Gems/Controller/BrowseEditAction.php:766 msgid "No" msgstr "No" -#: classes/Gems/Controller/BrowseEditAction.php:818 +#: classes/Gems/Controller/BrowseEditAction.php:819 #, php-format msgid "Unknown %s requested" msgstr "Unknown %s requested" -#: classes/Gems/Controller/BrowseEditAction.php:841 +#: classes/Gems/Controller/BrowseEditAction.php:842 #, php-format msgid "New %1$s..." msgstr "New %1$s..." -#: classes/Gems/Controller/BrowseEditAction.php:849 +#: classes/Gems/Controller/BrowseEditAction.php:850 msgid "Save" msgstr "Save" -#: classes/Gems/Controller/BrowseEditAction.php:885 +#: classes/Gems/Controller/BrowseEditAction.php:886 #, php-format msgid "%2$u %1$s saved" msgstr "%2$u %1$s saved" -#: classes/Gems/Controller/BrowseEditAction.php:888 +#: classes/Gems/Controller/BrowseEditAction.php:889 msgid "No changes to save." msgstr "No changes to save." -#: classes/Gems/Controller/BrowseEditAction.php:897 +#: classes/Gems/Controller/BrowseEditAction.php:898 msgid "Input error! No changes saved!" msgstr "Input error! No changes saved!" -#: classes/Gems/Controller/BrowseEditAction.php:925 +#: classes/Gems/Controller/BrowseEditAction.php:926 #, php-format msgid "Show %s" msgstr "Show %s" -#: classes/Gems/Controller/BrowseEditAction.php:932 +#: classes/Gems/Controller/BrowseEditAction.php:933 #, php-format msgid "Unknown %s." msgstr "Unknown %s." @@ -627,7 +633,6 @@ msgstr "The number zero and the letter O are treated as the same; the same goes for the number one and the letter L." #: classes/Gems/Default/ConsentAction.php:66 -#: classes/Gems/Default/CountryAction.php:67 msgid "Description" msgstr "Description" @@ -844,167 +849,171 @@ msgstr "Database object overview" #: classes/Gems/Default/DatabaseAction.php:302 -#: classes/Gems/Default/DatabaseAction.php:347 +#: classes/Gems/Default/DatabaseAction.php:348 msgid "Level" msgstr "Level" #: classes/Gems/Default/DatabaseAction.php:303 -#: classes/Gems/Default/DatabaseAction.php:348 +#: classes/Gems/Default/DatabaseAction.php:349 msgid "Subtype" msgstr "Subtype" #: classes/Gems/Default/DatabaseAction.php:305 -#: classes/Gems/Default/DatabaseAction.php:351 +msgid "To be executed" +msgstr "To be executed" + +#: classes/Gems/Default/DatabaseAction.php:306 +#: classes/Gems/Default/DatabaseAction.php:352 msgid "Executed" msgstr "Executed" -#: classes/Gems/Default/DatabaseAction.php:306 -#: classes/Gems/Default/DatabaseAction.php:352 +#: classes/Gems/Default/DatabaseAction.php:307 +#: classes/Gems/Default/DatabaseAction.php:353 msgid "Finished" msgstr "Finished" -#: classes/Gems/Default/DatabaseAction.php:309 +#: classes/Gems/Default/DatabaseAction.php:310 msgid "Create the patch table!" msgstr "Create the patch table!" -#: classes/Gems/Default/DatabaseAction.php:311 +#: classes/Gems/Default/DatabaseAction.php:312 #, php-format msgid "%d new or changed patch(es)." msgstr "%d new or changed patch(es)." -#: classes/Gems/Default/DatabaseAction.php:316 +#: classes/Gems/Default/DatabaseAction.php:317 #: classes/Gems/Default/ProjectInformationAction.php:114 msgid "Gems build" msgstr "Gems build" -#: classes/Gems/Default/DatabaseAction.php:317 +#: classes/Gems/Default/DatabaseAction.php:318 msgid "Database build" msgstr "Database build" -#: classes/Gems/Default/DatabaseAction.php:319 +#: classes/Gems/Default/DatabaseAction.php:320 msgid "Execute level" msgstr "Execute level" -#: classes/Gems/Default/DatabaseAction.php:323 +#: classes/Gems/Default/DatabaseAction.php:324 msgid "Ignore finished" msgstr "Ignore finished" -#: classes/Gems/Default/DatabaseAction.php:324 +#: classes/Gems/Default/DatabaseAction.php:325 msgid "Ignore executed" msgstr "Ignore executed" -#: classes/Gems/Default/DatabaseAction.php:325 +#: classes/Gems/Default/DatabaseAction.php:326 msgid "Show patches" msgstr "Show patches" -#: classes/Gems/Default/DatabaseAction.php:341 +#: classes/Gems/Default/DatabaseAction.php:342 #, php-format msgid "%d patch(es) executed." msgstr "%d patch(es) executed." -#: classes/Gems/Default/DatabaseAction.php:346 +#: classes/Gems/Default/DatabaseAction.php:347 msgid "Patch" msgstr "Patch" -#: classes/Gems/Default/DatabaseAction.php:350 +#: classes/Gems/Default/DatabaseAction.php:351 msgid "Query" msgstr "Query" -#: classes/Gems/Default/DatabaseAction.php:353 +#: classes/Gems/Default/DatabaseAction.php:354 msgid "Result" msgstr "Result" -#: classes/Gems/Default/DatabaseAction.php:377 +#: classes/Gems/Default/DatabaseAction.php:378 msgid "Patch maintenance" msgstr "Patch maintenance" -#: classes/Gems/Default/DatabaseAction.php:381 +#: classes/Gems/Default/DatabaseAction.php:382 msgid "Patch overview" msgstr "Patch overview" -#: classes/Gems/Default/DatabaseAction.php:441 +#: classes/Gems/Default/DatabaseAction.php:442 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:447 +#: classes/Gems/Default/DatabaseAction.php:448 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:458 +#: classes/Gems/Default/DatabaseAction.php:459 #, php-format msgid "Run %s" msgstr "Run %s" -#: classes/Gems/Default/DatabaseAction.php:477 +#: classes/Gems/Default/DatabaseAction.php:478 #, php-format msgid "Starting %d object creation scripts." msgstr "Starting %d object creation scripts." -#: classes/Gems/Default/DatabaseAction.php:482 +#: classes/Gems/Default/DatabaseAction.php:483 #, 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:486 +#: classes/Gems/Default/DatabaseAction.php:487 msgid "All objects exist. Nothing was executed." msgstr "All objects exist. Nothing was executed." -#: classes/Gems/Default/DatabaseAction.php:492 +#: classes/Gems/Default/DatabaseAction.php:493 msgid "Create not-existing database objects" msgstr "Create not-existing database objects" -#: classes/Gems/Default/DatabaseAction.php:494 +#: classes/Gems/Default/DatabaseAction.php:495 #, 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:495 +#: classes/Gems/Default/DatabaseAction.php:496 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:508 +#: classes/Gems/Default/DatabaseAction.php:509 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:521 +#: classes/Gems/Default/DatabaseAction.php:522 msgid "Separate multiple commands with semicolons (;)." msgstr "Separate multiple commands with semicolons (;)." -#: classes/Gems/Default/DatabaseAction.php:528 +#: classes/Gems/Default/DatabaseAction.php:529 msgid "Run" msgstr "Run" -#: classes/Gems/Default/DatabaseAction.php:537 +#: classes/Gems/Default/DatabaseAction.php:538 msgid "raw" msgstr "raw" -#: classes/Gems/Default/DatabaseAction.php:546 +#: classes/Gems/Default/DatabaseAction.php:547 #, php-format msgid "Result set %s." msgstr "Result set %s." -#: classes/Gems/Default/DatabaseAction.php:569 +#: classes/Gems/Default/DatabaseAction.php:570 msgid "Execute raw SQL" msgstr "Execute raw SQL" -#: classes/Gems/Default/DatabaseAction.php:572 +#: classes/Gems/Default/DatabaseAction.php:573 msgid "Result sets" msgstr "Result sets" -#: classes/Gems/Default/DatabaseAction.php:595 +#: classes/Gems/Default/DatabaseAction.php:596 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:600 +#: classes/Gems/Default/DatabaseAction.php:601 #, php-format msgid "The data in table %s" msgstr "The data in table %s" -#: classes/Gems/Default/DatabaseAction.php:601 +#: classes/Gems/Default/DatabaseAction.php:602 #, php-format msgid "Contents of %s %s" msgstr "Contents of %s %s" @@ -1040,6 +1049,7 @@ msgstr "Username" #: classes/Gems/Default/IndexAction.php:105 +#: classes/Gems/Default/MailServerAction.php:88 msgid "Password" msgstr "Password" @@ -1212,6 +1222,62 @@ msgid "Email templates" msgstr "Email templates" +#: classes/Gems/Default/MailServerAction.php:68 +msgid "From address [part]" +msgstr "" + +#: classes/Gems/Default/MailServerAction.php:70 +msgid "E.g.: '%', '%.org' or '%@gemstracker.org' or 'ro...@ge...'." +msgstr "E.g.: '%', '%.org' or '%@gemstracker.org' or 'ro...@ge...'." + +#: classes/Gems/Default/MailServerAction.php:71 +msgid "Server" +msgstr "Server" + +#: classes/Gems/Default/MailServerAction.php:73 +msgid "Encryption" +msgstr "Encryption" + +#: classes/Gems/Default/MailServerAction.php:76 +msgid "None" +msgstr "None" + +#: classes/Gems/Default/MailServerAction.php:77 +msgid "SSL" +msgstr "SSL" + +#: classes/Gems/Default/MailServerAction.php:78 +msgid "TLS" +msgstr "TLS" + +#: classes/Gems/Default/MailServerAction.php:80 +msgid "Port" +msgstr "Port" + +#: classes/Gems/Default/MailServerAction.php:82 +msgid "Normal values: 25 for TLS and no encryption, 465 for SSL" +msgstr "Normal values: 25 for TLS and no encryption, 465 for SSL" + +#: classes/Gems/Default/MailServerAction.php:84 +msgid "User ID" +msgstr "User ID" + +#: classes/Gems/Default/MailServerAction.php:90 +#: classes/Gems/Default/OptionAction.php:107 +#: classes/Gems/Default/OptionAction.php:112 +msgid "Repeat password" +msgstr "Repeat password" + +#: classes/Gems/Default/MailServerAction.php:91 +msgid "Enter only when changing" +msgstr "Enter only when changing the password" + +#: classes/Gems/Default/MailServerAction.php:100 +msgid "email server" +msgid_plural "email servers" +msgstr[0] "email server" +msgstr[1] "email servers" + #: classes/Gems/Default/OptionAction.php:73 #: classes/Gems/Default/OrganizationAction.php:128 msgid "Language" @@ -1234,11 +1300,6 @@ msgid "New password" msgstr "New password" -#: classes/Gems/Default/OptionAction.php:107 -#: classes/Gems/Default/OptionAction.php:112 -msgid "Repeat password" -msgstr "Repeat password" - #: classes/Gems/Default/OptionAction.php:141 msgid "New password is active." msgstr "New password is active." @@ -1330,7 +1391,6 @@ msgstr "Participating organizations" #: classes/Gems/Default/OverviewPlanAction.php:115 -#: classes/Gems/Default/ProjectSurveysAction.php:88 msgid "survey" msgid_plural "surveys" msgstr[0] "survey" @@ -1477,20 +1537,26 @@ msgstr "Session content" #: classes/Gems/Default/ProjectSurveysAction.php:67 +#: classes/Gems/Default/SurveyAction.php:191 msgid "Survey" msgstr "Survey" #: classes/Gems/Default/ProjectSurveysAction.php:68 +#: classes/Gems/Default/SurveyAction.php:192 msgid "By" msgstr "By" #: 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" @@ -1499,10 +1565,13 @@ 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 +#: classes/Gems/Default/TrackMaintenanceAction.php:242 msgid "track" msgid_plural "tracks" msgstr[0] "track" @@ -1518,6 +1587,7 @@ msgstr "Questions in survey %s" #: classes/Gems/Default/ProjectTracksAction.php:106 +#: classes/Gems/Default/SurveyAction.php:85 #, php-format msgid "Survey %s does not exist." msgstr "Survey %s does not exist." @@ -1527,6 +1597,7 @@ msgstr "Survey not specified." #: classes/Gems/Default/ProjectTracksAction.php:120 +#: classes/Gems/Default/TrackActionAbstract.php:479 #, php-format msgid "Track %s does not exist." msgstr "Track %s does not exist." @@ -1597,32 +1668,92 @@ msgstr[0] "reception code" msgstr[1] "reception codes" -#: classes/Gems/Default/RespondentAction.php:124 +#: classes/Gems/Default/RespondentAction.php:113 +msgid "Enter a 9-digit BSN number." +msgstr "Enter a 9-digit BSN number." + +#: classes/Gems/Default/RespondentAction.php:122 +msgid "Identification" +msgstr "Identification" + +#: classes/Gems/Default/RespondentAction.php:123 +msgid "BSN" +msgstr "BSN" + +#: classes/Gems/Default/RespondentAction.php:127 +msgid "Patient number" +msgstr "Patient number" + +#: classes/Gems/Default/RespondentAction.php:136 +msgid "Medical data" +msgstr "Medical data" + +#: classes/Gems/Default/RespondentAction.php:143 +msgid "DBC's, etc..." +msgstr "DBC's, etc..." + +#: classes/Gems/Default/RespondentAction.php:146 +msgid "Contact information" +msgstr "Contact information" + +#: classes/Gems/Default/RespondentAction.php:151 +msgid "Respondent has no e-mail" +msgstr "Patient has no e-mail" + +#: classes/Gems/Default/RespondentAction.php:152 +msgid "With housenumber" +msgstr "With housenumber" + +#: classes/Gems/Default/RespondentAction.php:159 +msgid "Country" +msgstr "Country" + +#: classes/Gems/Default/RespondentAction.php:163 +msgid "Settings" +msgstr "Settings" + +#: classes/Gems/Default/RespondentAction.php:165 +msgid "Has the respondent signed the informed consent letter?" +msgstr "Has the patient signed the informed consent letter?" + +#: classes/Gems/Default/RespondentAction.php:190 +msgid "Comments" +msgstr "Comments" + +#: classes/Gems/Default/RespondentAction.php:191 +msgid "Physician" +msgstr "Physician" + +#: classes/Gems/Default/RespondentAction.php:192 +msgid "Treatment" +msgstr "Treatment" + +#: classes/Gems/Default/RespondentAction.php:221 #: classes/Gems/Default/TrackAction.php:131 -#: classes/Gems/Default/TrackAction.php:473 +#: classes/Gems/Default/TrackAction.php:475 msgid "Rejection code" msgstr "Rejection code" -#: classes/Gems/Default/RespondentAction.php:131 +#: classes/Gems/Default/RespondentAction.php:228 msgid "Delete respondent" msgstr "Delete patient" -#: classes/Gems/Default/RespondentAction.php:182 +#: classes/Gems/Default/RespondentAction.php:279 msgid "Respondent deleted." msgstr "Patient deleted" -#: classes/Gems/Default/RespondentAction.php:185 +#: classes/Gems/Default/RespondentAction.php:282 #: 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:229 +#: classes/Gems/Default/RespondentAction.php:346 msgid "respondent" msgid_plural "respondents" msgstr[0] "patient" msgstr[1] "patients" -#: classes/Gems/Default/RespondentAction.php:269 +#: classes/Gems/Default/RespondentAction.php:386 msgid "Please settle the informed consent form for this respondent." msgstr "Please settle the informed consent form for this patient." @@ -1666,11 +1797,6 @@ msgid "Leave empty for the Gems database." msgstr "Leave empty for the Gems database." -#: classes/Gems/Default/SourceAction.php:74 -#: classes/Gems/Default/StaffAction.php:99 -msgid "Enter only when changing" -msgstr "Enter only when changing the password" - #: classes/Gems/Default/SourceAction.php:88 msgid "Do not forget the underscores." msgstr "Do not forget the underscores." @@ -2064,57 +2190,65 @@ msgid "Assigned tracks" msgstr "Assigned tracks" -#: classes/Gems/Default/TrackAction.php:480 +#: classes/Gems/Default/TrackAction.php:482 #, php-format msgid "%s track for respondent nr %s" msgstr "%s track for patient nr %s" -#: classes/Gems/Default/TrackActionAbstract.php:101 +#: classes/Gems/Default/TrackAction.php:538 +msgid "Add track" +msgstr "Add track" + +#: classes/Gems/Default/TrackAction.php:539 +msgid "This respondent does not yet have an active track. Add one here." +msgstr "This paitent does not yet have an active track. Add one here." + +#: classes/Gems/Default/TrackActionAbstract.php:102 msgid "No tracks found" msgstr "No tracks found" -#: classes/Gems/Default/TrackActionAbstract.php:121 +#: classes/Gems/Default/TrackActionAbstract.php:122 msgid "Available tracks" msgstr "Available tracks" -#: classes/Gems/Default/TrackActionAbstract.php:170 +#: classes/Gems/Default/TrackActionAbstract.php:171 #, php-format msgid "Token answers: %s" msgstr "Token answers: %s" -#: classes/Gems/Default/TrackActionAbstract.php:196 +#: classes/Gems/Default/TrackActionAbstract.php:197 #, php-format msgid "Adding the %s track to respondent %s" msgstr "Adding the %s track to patient %s" -#: classes/Gems/Default/TrackActionAbstract.php:207 +#: classes/Gems/Default/TrackActionAbstract.php:208 msgid "Enter the particulars concerning the assignment to this respondent." msgstr "Enter the particulars concerning the assignment to this patient." -#: classes/Gems/Default/TrackActionAbstract.php:208 +#: classes/Gems/Default/TrackActionAbstract.php:209 msgid "Assigned by" msgstr "Assigned by" -#: classes/Gems/Default/TrackActionAbstract.php:209 +#: classes/Gems/Default/TrackActionAbstract.php:210 msgid "Start" msgstr "Start" -#: classes/Gems/Default/TrackActionAbstract.php:299 +#: classes/Gems/Default/TrackActionAbstract.php:300 #, php-format msgid "Email %s %s" msgstr "Email %s %s" -#: classes/Gems/Default/TrackActionAbstract.php:305 +#: classes/Gems/Default/TrackActionAbstract.php:306 #, php-format msgid "%s %s not found." msgstr "%s %s not found." -#: classes/Gems/Default/TrackActionAbstract.php:467 +#: classes/Gems/Default/TrackActionAbstract.php:468 #, php-format msgid "Overview of %s track for respondent %s" msgstr "Overview of %s track for patient %s" -#: classes/Gems/Default/TrackActionAbstract.php:471 +#: classes/Gems/Default/TrackActionAbstract.php:472 msgid "This track is currently not assigned to this respondent." msgstr "This track is currently not assigned to this patient." @@ -2180,10 +2314,6 @@ msgstr "%s in track" #: classes/Gems/Default/TrackRoundAction.php:89 -#: classes/Gems/Default/TrackRoundsAction.php:82 -#: classes/Gems/Default/TrackRoundsAction.php:109 -#: classes/Gems/Default/TrackRoundsAction.php:144 -#: classes/Gems/Default/TrackRoundsAction.php:173 msgid "Missing track identifier." msgstr "Missing track identifier." @@ -2261,7 +2391,7 @@ msgid "To (test)" msgstr "To (test)" -#: classes/Gems/Email/MailTemplateForm.php:162 +#: classes/Gems/Email/MailTemplateForm.php:168 msgid "Test mail send, changes not saved!" msgstr "Test mail send, changes not saved!" @@ -2312,12 +2442,12 @@ msgstr "Last contact" #: classes/Gems/Email/OneMailForm.php:131 -#: classes/Gems/Email/TemplateMailer.php:205 +#: classes/Gems/Email/TemplateMailer.php:256 msgid "The sending of emails was blocked for this installation." msgstr "The sending of emails was blocked for this installation." #: classes/Gems/Email/OneMailForm.php:139 -#: classes/Gems/Email/TemplateMailer.php:235 +#: classes/Gems/Email/TemplateMailer.php:286 msgid "Mail failed to send." msgstr "Mail failed to send." @@ -2326,7 +2456,7 @@ msgid "Sent email to %s." msgstr "Sent email to %s." -#: classes/Gems/Email/TemplateMailer.php:251 +#: classes/Gems/Email/TemplateMailer.php:302 #, php-format msgid "Sent %d e-mails, updated %d tokens." msgstr "Sent %d e-mails, updated %d tokens." @@ -2425,12 +2555,12 @@ msgstr "week %s" #: classes/Gems/Selector/TokenByGroupDateSelector.php:83 -#: classes/Gems/Selector/TokenDateSelector.php:83 +#: classes/Gems/Selector/TokenDateSelector.php:82 msgid "for respondents" msgstr "for patients" #: classes/Gems/Selector/TokenByGroupDateSelector.php:84 -#: classes/Gems/Selector/TokenDateSelector.php:84 +#: classes/Gems/Selector/TokenDateSelector.php:83 msgid "for staff" msgstr "for staff" @@ -2443,7 +2573,7 @@ msgstr "Todo" #: classes/Gems/Selector/TokenByGroupDateSelector.php:109 -#: classes/Gems/Selector/TokenDateSelector.php:95 +#: classes/Gems/Selector/TokenDateSelector.php:94 msgid "Partially completed" msgstr "Partially completed" @@ -2471,19 +2601,19 @@ msgid "slowest answer" msgstr "slowest answer" -#: classes/Gems/Selector/TokenDateSelector.php:87 +#: classes/Gems/Selector/TokenDateSelector.php:86 msgid "Activated surveys" msgstr "Activated surveys" -#: classes/Gems/Selector/TokenDateSelector.php:91 +#: classes/Gems/Selector/TokenDateSelector.php:90 msgid "Unanswered surveys" msgstr "Unanswered surveys" -#: classes/Gems/Selector/TokenDateSelector.php:104 +#: classes/Gems/Selector/TokenDateSelector.php:103 msgid "Expired surveys" msgstr "Expired surveys" -#: classes/Gems/Selector/TokenDateSelector.php:108 +#: classes/Gems/Selector/TokenDateSelector.php:107 msgid "Answered surveys" msgstr "Answered surveys" @@ -2657,28 +2787,28 @@ msgid "Use a track level date." msgstr "Use a track level date." -#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:367 +#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:414 #, php-format msgid "%s track engines cannot be converted to %s track engines." msgstr "%s track engines cannot be converted to %s track engines." -#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:578 +#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:625 #, php-format msgid "%d: %s - %s" msgstr "%d: %s - %s" -#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:581 -#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:584 +#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:628 +#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:631 #, php-format msgid "%d: %s" msgstr "%d: %s" -#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:587 +#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:634 #, php-format msgid "%s - %s" msgstr "%s - %s" -#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:629 +#: classes/Gems/Tracker/Engine/TrackEngineAbstract.php:676 msgid "After change" msgstr "After change" @@ -2698,10 +2828,6 @@ msgid "Score" msgstr "Score" -#: classes/Gems/Tracker/Model/StandardTokenModel.php:215 -msgid "Comments" -msgstr "Comments" - #: classes/Gems/Tracker/Model/StandardTokenModel.php:223 msgid "Assigned to" msgstr "Assigned to" @@ -2714,26 +2840,19 @@ msgid "Use until" msgstr "Use until" -#: classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php:123 +#: classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php:129 msgid "Add new round" msgstr "Add new round" #: classes/Gems/Tracker/Snippets/EditTokenSnippetAbstract.php:124 -#: classes/Gems/Tracker/Snippets/ShowTokenSnippetAbstract.php:164 #, php-format msgid "Token %s not found." msgstr "Token %s not found." #: classes/Gems/Tracker/Snippets/EditTokenSnippetAbstract.php:128 -#: classes/Gems/Tracker/Snippets/ShowTokenSnippetAbstract.php:168 msgid "No token specified." msgstr "No token specified." -#: classes/Gems/Tracker/Snippets/EditTrackSnippetAbstract.php:179 -#: classes/Gems/Tracker/Snippets/EditTrackSnippetAbstract.php:229 -msgid "Add track" -msgstr "Add track" - #: classes/Gems/Tracker/Snippets/ShowRoundSnippetAbstract.php:132 #, php-format msgid "%s round" @@ -2755,49 +2874,49 @@ msgid "Submitdate" msgstr "Submitdate" -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:837 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:848 #, php-format msgid "Updated %d Gems tokens to new token definition." msgstr "Updated %d Gems tokens to new token definition." -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:857 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:868 #, php-format msgid "The '%s' survey is no longer active. The survey was removed from LimeSurvey!" msgstr "The '%s' survey is no longer active. The survey was removed from LimeSurvey!" -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:974 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:985 #, php-format msgid "Updated %d token to new token definition in survey '%s'." msgid_plural "Updated %d tokens to new token definition in survey '%s'." msgstr[0] "Updated %d token to new token definition in survey '%s'." msgstr[1] "Updated %d tokens to new token definition in survey '%s'." -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:992 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1003 #, php-format msgid "The status of the '%s' survey has changed." msgstr "The status of the '%s' survey has changed." -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:998 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1009 #, php-format msgid "Survey '%s' IS NO LONGER ACTIVE!!!" msgstr "Survey '%s' IS NO LONGER ACTIVE!!!" -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1004 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1015 #, php-format msgid "The status of the '%s' survey has changed to '%s'." msgstr "The status of the '%s' survey has changed to '%s'." -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1007 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1018 #, php-format msgid "The status warning for the '%s' survey was removed." msgstr "The status warning for the '%s' survey was removed." -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1013 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1024 #, php-format msgid "The name of the '%s' survey has changed to '%s'." msgstr "The name of the '%s' survey has changed to '%s'." -#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1023 +#: classes/Gems/Tracker/Source/LimeSurvey1m9Database.php:1034 #, php-format msgid "Imported the '%s' survey." msgstr "Imported the '%s' survey." @@ -2819,12 +2938,10 @@ msgstr "Decrease" #: classes/Gems/Tracker/Source/LimeSurvey1m9FieldMap.php:151 -#: classes/Gems/Util/Translated.php:183 msgid "Female" msgstr "Female" #: classes/Gems/Tracker/Source/LimeSurvey1m9FieldMap.php:152 -#: classes/Gems/Util/Translated.php:183 msgid "Male" msgstr "Male" @@ -3021,62 +3138,6 @@ msgid "Input error! Changes to %s not saved!" msgstr "Input error! Changes to %s not saved!" -#: controllers/RespondentController.php:65 -msgid "Enter a 9-digit BSN number." -msgstr "Enter a 9-digit BSN number." - -#: controllers/RespondentController.php:74 -msgid "Identification" -msgstr "Identification" - -#: controllers/RespondentController.php:75 -msgid "BSN" -msgstr "BSN" - -#: controllers/RespondentController.php:79 -msgid "Patient number" -msgstr "Patient number" - -#: controllers/RespondentController.php:88 -msgid "Medical data" -msgstr "Medical data" - -#: controllers/RespondentController.php:95 -msgid "DBC's, etc..." -msgstr "DBC's, etc..." - -#: controllers/RespondentController.php:98 -msgid "Contact information" -msgstr "Contact information" - -#: controllers/RespondentController.php:103 -msgid "Respondent has no e-mail" -msgstr "Patient has no e-mail" - -#: controllers/RespondentController.php:104 -msgid "With housenumber" -msgstr "With housenumber" - -#: controllers/RespondentController.php:111 -msgid "Country" -msgstr "Country" - -#: controllers/RespondentController.php:115 -msgid "Settings" -msgstr "Settings" - -#: controllers/RespondentController.php:117 -msgid "Has the respondent signed the informed consent letter?" -msgstr "Has the patient signed the informed consent letter?" - -#: controllers/RespondentController.php:143 -msgid "Physician" -msgstr "Physician" - -#: controllers/RespondentController.php:144 -msgid "Treatment" -msgstr "Treatment" - #: languages/FakeTranslations.php:40 msgid "Value is required and can't be empty" msgstr "Value is required and can't be empty" @@ -3173,6 +3234,18 @@ msgid "'%value%' is not a series of email addresses (e.g. na...@so..., no...@no...)." msgstr "'%value%' is not a series of email addresses (e.g. na...@so..., no...@no...)." +#: languages/FakeTranslations.php:91 +msgid "'%value%' must contain only digits" +msgstr "'%value%' must contain only digits" + +#: languages/FakeTranslations.php:92 +msgid "'%value%' is an empty string" +msgstr "'%value%' is an empty string" + +#: languages/FakeTranslations.php:93 +msgid "Invalid type given. String, integer or float expected" +msgstr "Invalid type given. String, integer or float expected" + #: snippets/AddTracksSnippet.php:92 msgid "by Respondents" msgstr "by Patients" @@ -3252,7 +3325,6 @@ msgstr "Deleted token %s for survey %s." #: snippets/DeleteTrackTokenSnippet.php:269 -#: snippets/EditTrackTokenSnippet.php:174 #, php-format msgid "%d token changed by recalculation." msgid_plural "%d tokens changed by recalculation." @@ -3370,9 +3442,8 @@ msgid "This track can be assigned since %s." msgstr "This track can be assigned since %s." -#: views/scripts/index/login.phtml:12 -msgid "The Pulse software was made possible thanks to support from " -msgstr "The Pulse software was made possible thanks to support from " +#~ msgid "The Pulse software was made possible thanks to support from " +#~ msgstr "The Pulse software was made possible thanks to support from " #~ msgid "Filling in by" #~ msgstr "Filling in by" Modified: trunk/library/languages/default-nl.mo =================================================================== (Binary files differ) Modified: trunk/library/languages/default-nl.po =================================================================== --- trunk/library/languages/default-nl.po 2011-09-15 14:19:01 UTC (rev 22) +++ trunk/library/languages/default-nl.po 2011-09-15 14:27:28 UTC (rev 23) @@ -2,9 +2,9 @@ msgstr "" "Project-Id-Version: Pulse NL\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-09-06 12:20+0100\n" +"POT-Creation-Date: 2011-09-15 16:22+0100\n" "PO-Revision-Date: \n" -"Last-Translator: Menno Dekker <men...@er...>\n" +"Last-Translator: Matijs de Jong <mj...@ma...>\n" "Language-Team: Erasmus MGZ <mat...@ma...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -18,48 +18,48 @@ "X-Poedit-KeywordsList: plural:1,2\n" "X-Poedit-SearchPath-0: .\n" -#: classes/GemsEscort.php:159 +#: classes/GemsEscort.php:160 #, php-format msgid "Path %s not writable" msgstr "Path %s niet schrijfbaar" -#: classes/GemsEscort.php:822 +#: classes/GemsEscort.php:841 #, php-format msgid "User: %s" msgstr "Login: %s" -#: classes/GemsEscort.php:846 +#: classes/GemsEscort.php:865 msgid "version" msgstr "versie" -#: classes/GemsEscort.php:1382 +#: classes/GemsEscort.php:1401 msgid "Take note: your session has expired, your inputs where not saved. Please check the input data and try again" msgstr "Let op: uw sessie is verlopen, uw invoer is niet opgeslagen. Controleer de gegevens en probeer a.u.b. opnieuw." -#: classes/GemsEscort.php:1504 +#: classes/GemsEscort.php:1523 msgid "No access to site." msgstr "Geen toegang tot website." -#: classes/GemsEscort.php:1506 -#: classes/GemsEscort.php:1542 +#: classes/GemsEscort.php:1525 +#: classes/GemsEscort.php:1561 msgid "You have no access to this site." msgstr "U heeft geen toegang tot deze website." -#: classes/GemsEscort.php:1522 +#: classes/GemsEscort.php:1541 msgid "No access to page" msgstr "Geen toegang tot pagina" -#: classes/GemsEscort.php:1524 +#: classes/GemsEscort.php:1543 #, php-format msgid "Access to this page is not allowed for current role: %s." msgstr "U heeft geen toegang tot deze pagina. Uw huidige rol is: %s." -#: classes/GemsEscort.php:1529 -#: classes/GemsEscort.php:1540 +#: classes/GemsEscort.php:1548 +#: classes/GemsEscort.php:1559 msgid "You are no longer logged in." msgstr "U bent niet meer ingelogd." -#: classes/GemsEscort.php:1530 +#: classes/GemsEscort.php:1549 msgid "You must login to access this page." msgstr "U moet ingelogd zijn voor toegang tot deze pagina." @@ -169,7 +169,7 @@ msgstr "Priviléges" #: classes/Gems/Menu.php:192 -#: classes/Gems/Menu.php:575 +#: classes/Gems/Menu.php:589 msgid "Project" msgstr "Project" @@ -199,182 +199,188 @@ msgstr "Ontvangst codes" #: classes/Gems/Menu.php:219 +msgid "Email servers" +msgstr "Email servers" + +#: classes/Gems/Menu.php:223 msgid "Email" msgstr "Email" -#: classes/Gems/Menu.php:222 +#: classes/Gems/Menu.php:226 msgid "Survey Sources" msgstr "Bronnen" -#: classes/Gems/Menu.php:224 +#: classes/Gems/Menu.php:228 msgid "Check status" msgstr "Status controle" -#: classes/Gems/Menu.php:225 +#: classes/Gems/Menu.php:229 msgid "Synchronize surveys" msgstr "Synchroniseer vragenlijsten" -#: classes/Gems/Menu.php:226 -#: classes/Gems/Menu.php:237 +#: classes/Gems/Menu.php:230 +#: classes/Gems/Menu.php:241 msgid "Check answers" msgstr "Antwoord controle" -#: classes/Gems/Menu.php:227 +#: classes/Gems/Menu.php:231 msgid "Synchronize all surveys" msgstr "Synchroniseer alle vragenlijsten" -#: classes/Gems/Menu.php:228 -#: classes/Gems/Menu.php:238 +#: classes/Gems/Menu.php:232 +#: classes/Gems/Menu.php:242 msgid "Check all answers" msgstr "Controleer alle antwoorden" -#: classes/Gems/Menu.php:231 -#: classes/Gems/Menu.php:382 +#: classes/Gems/Menu.php:235 +#: classes/Gems/Menu.php:396 msgid "Surveys" msgstr "Vragenlijsten" -#: classes/Gems/Menu.php:234 +#: classes/Gems/Menu.php:238 msgid "PDF" msgstr "PDF" -#: classes/Gems/Menu.php:243 -#: classes/Gems/Menu.php:348 +#: classes/Gems/Menu.php:247 +#: classes/Gems/Menu.php:362 msgid "Tracks" msgstr "Trajecten" -#: classes/Gems/Menu.php:246 +#: classes/Gems/Menu.php:250 msgid "Fields" msgstr "Velden" -#: classes/Gems/Menu.php:253 +#: classes/Gems/Menu.php:257 msgid "Rounds" msgstr "Rondes" -#: classes/Gems/Menu.php:262 +#: classes/Gems/Menu.php:266 msgid "Round" msgstr "Ronde" -#: classes/Gems/Menu.php:268 +#: classes/Gems/Menu.php:272 msgid "Check assignments" msgstr "Controleer toewijzingen" -#: classes/Gems/Menu.php:271 +#: classes/Gems/Menu.php:275 msgid "Check all assignments" msgstr "Controleer alle toewijzingen" -#: classes/Gems/Menu.php:274 +#: classes/Gems/Menu.php:278 msgid "Logging" msgstr "Logboek" -#: classes/Gems/Menu.php:278 +#: classes/Gems/Menu.php:282 msgid "Maintenance" msgstr "Onderhoud" -#: classes/Gems/Menu.php:292 +#: classes/Gems/Menu.php:296 #, php-format msgid "Stand-alone privilige: %s" msgstr "Zelfstandig privilege: %s" -#: classes/Gems/Menu.php:299 +#: classes/Gems/Menu.php:303 msgid "Logon" msgstr "Login" -#: classes/Gems/Menu.php:300 +#: classes/Gems/Menu.php:304 msgid "Lost password" msgstr "Wachtwoord zoek" -#: classes/Gems/Menu.php:301 +#: classes/Gems/Menu.php:305 msgid "Your account" msgstr "Uw account" -#: classes/Gems/Menu.php:302 +#: classes/Gems/Menu.php:306 msgid "Activity overview" msgstr "Activiteiten overzicht" -#: classes/Gems/Menu.php:303 +#: classes/Gems/Menu.php:307 msgid "Change password" msgstr "Uw wachtwoord" -#: classes/Gems/Menu.php:304 -#: classes/Gems/Menu.php:343 -#: classes/Gems/Menu.php:369 +#: classes/Gems/Menu.php:308 +#: classes/Gems/Menu.php:348 +#: classes/Gems/Menu.php:383 msgid "Token" msgstr "Kenmerk" -#: classes/Gems/Menu.php:305 +#: classes/Gems/Menu.php:309 msgid "Logoff" msgstr "Uitloggen" -#: classes/Gems/Menu.php:339 +#: classes/Gems/Menu.php:344 msgid "Track" msgstr "Traject" -#: classes/Gems/Menu.php:357 -#: classes/Gems/Menu.php:388 +#: classes/Gems/Menu.php:351 +#: classes/Gems/Menu.php:371 +#: classes/Gems/Menu.php:402 msgid "Add" msgstr "Voeg toe" -#: classes/Gems/Menu.php:361 +#: classes/Gems/Menu.php:355 +#: classes/Gems/Menu.php:438 +msgid "Preview" +msgstr "Preview" + +#: classes/Gems/Menu.php:375 msgid "Assignments" msgstr "Toewijzingen" -#: classes/Gems/Menu.php:365 +#: classes/Gems/Menu.php:379 msgid "Show" msgstr "Toon" -#: classes/Gems/Menu.php:373 +#: classes/Gems/Menu.php:387 msgid "Edit" msgstr "Wijzig" -#: classes/Gems/Menu.php:377 +#: classes/Gems/Menu.php:391 msgid "Delete" msgstr "Verwijder" -#: classes/Gems/Menu.php:392 +#: classes/Gems/Menu.php:406 msgid "Assigned" msgstr "Toegewezen" -#: classes/Gems/Menu.php:414 +#: classes/Gems/Menu.php:428 msgid "Fill in" msgstr "Vul in" -#: classes/Gems/Menu.php:418 +#: classes/Gems/Menu.php:432 msgid "Print PDF" msgstr "Print PDF" -#: classes/Gems/Menu.php:421 +#: classes/Gems/Menu.php:435 msgid "E-Mail now!" msgstr "Email nu!" -#: classes/Gems/Menu.php:424 -msgid "Preview" -msgstr "Preview" - -#: classes/Gems/Menu.php:427 +#: classes/Gems/Menu.php:441 msgid "Answers" msgstr "Antwoorden" -#: classes/Gems/Menu.php:565 +#: classes/Gems/Menu.php:579 msgid "Respondents" msgstr "Patiënten" -#: classes/Gems/Menu.php:568 +#: classes/Gems/Menu.php:582 msgid "Overview" msgstr "Overzicht" -#: classes/Gems/Menu.php:578 +#: classes/Gems/Menu.php:592 msgid "Staff" msgstr "Medewerkers" -#: classes/Gems/Menu.php:581 +#: classes/Gems/Menu.php:595 msgid "Setup" msgstr "Beheer" -#: classes/Gems/Menu.php:587 +#: classes/Gems/Menu.php:601 msgid "Contact" msgstr "Contact" -#: classes/Gems/Menu.php:599 +#: classes/Gems/Menu.php:613 msgid "Changelog" msgstr "Logboek" @@ -462,65 +468,65 @@ msgid "Free search text" msgstr "Vrije zoek tekst" -#: classes/Gems/Controller/BrowseEditAction.php:559 +#: classes/Gems/Controller/BrowseEditAction.php:560 msgid "Search" msgstr "Zoeken" -#: classes/Gems/Controller/BrowseEditAction.php:575 +#: classes/Gems/Controller/BrowseEditAction.php:576 #, php-format msgid "No %s found" msgstr "Geen %s gevonden" -#: classes/Gems/Controller/BrowseEditAction.php:633 +#: classes/Gems/Controller/BrowseEditAction.php:634 #, php-format msgid "No %s found." msgstr "Geen %s gevonden." -#: classes/Gems/Controller/BrowseEditAction.php:748 +#: classes/Gems/Controller/BrowseEditAction.php:749 msgid "Are you sure?" msgstr "Weet u het zeker?" -#: classes/Gems/Controller/BrowseEditAction.php:764 +#: classes/Gems/Controller/BrowseEditAction.php:765 msgid "Yes" msgstr "Ja" -#: classes/Gems/Controller/BrowseEditAction.php:765 +#: classes/Gems/Controller/BrowseEditAction.php:766 msgid "No" msgstr "Nee" -#: classes/Gems/Controller/BrowseEditAction.php:818 +#: classes/Gems/Controller/BrowseEditAction.php:819 #, php-format msgid "Unknown %s requested" msgstr "Onjuist %s verzoek" -#: classes/Gems/Controller/BrowseEditAction.php:841 +#: classes/Gems/Controller/BrowseEditAction.php:842 #, php-format msgid "New %1$s..." msgstr "Nieuwe %1$s..." -#: classes/Gems/Controller/BrowseEditAction.php:849 +#: classes/Gems/Controller/BrowseEditAction.php:850 msgid "Save" msgstr "Opslaan" -#: classes/Gems/Controller/BrowseEditAction.php:885 +#: classes/Gems/Controller/BrowseEditAction.php:886 #, php-format msgid "%2$u %1$s saved" msgstr "%2$u %1$s opgeslagen" -#: classes/Gems/Controller/BrowseEditAction.php:888 +#: classes/Gems/Controller/BrowseEditAction.php:889 msgid "No changes to save." msgstr "Geen verandering om op te slaan." -#: classes/Gems/Controller/BrowseEditAction.php:897 +#: classes/Gems/Controller/BrowseEditAction.php:898 msgid "Input error! No changes saved!" msgstr "Invoer fout! Veranderingen niet opgeslagen!" -#: classes/Gems/Controller/BrowseEditAction.php:925 +#: classes/Gems/Controller/BrowseEditAction.php:926 #, php-format msgid "Show %s" msgstr "Toon %s" -#: classes/Gems/Controller/BrowseEditAction.php:932 +#: classes/Gems/Controller/BrowseEditAction.php:933 #, php-format msgid "Unknown %s." msgstr "%s is onbekend." @@ -627,7 +633,6 @@ msgstr "Er wordt geen verschil gemaakt tussen het getal nul en de letter O en ook niet tussen het getal één en de letter L." #: classes/Gems/Default/ConsentAction.php:66 -#: classes/Gems/Default/CountryAction.php:67 msgid "Description" msgstr "Omschrijving" @@ -844,167 +849,171 @@ msgstr "Database object overzicht" #: classes/Gems/Default/DatabaseAction.php:302 -#: classes/Gems/Default/DatabaseAction.php:347 +#: classes/Gems/Default/DatabaseAction.php:348 msgid "Level" msgstr "Niveau" #: classes/Gems/Default/DatabaseAction.php:303 -#: classes/Gems/Default/DatabaseAction.php:348 +#: classes/Gems/Default/DatabaseAction.php:349 msgid "Subtype" msgstr "Subtype" #: classes/Gems/Default/DatabaseAction.php:305 -#: classes/Gems/Default/DatabaseAction.php:351 +msgid "To be executed" +msgstr "Uit te voeren" + +#: classes/Gems/Default/DatabaseAction.php:306 +#: classes/Gems/Default/DatabaseAction.php:352 msgid "Executed" msgstr "Uitgevoerd" -#: classes/Gems/Default/DatabaseAction.php:306 -#: classes/Gems/Default/DatabaseAction.php:352 +#: classes/Gems/Default/DatabaseAction.php:307 +#: classes/Gems/Default/DatabaseAction.php:353 msgid "Finished" msgstr "Afgerond" -#: classes/Gems/Default/DatabaseAction.php:309 +#: classes/Gems/Default/DatabaseAction.php:310 msgid "Create the patch table!" msgstr "De patch tabel bestaat nog niet!" -#: classes/Gems/Default/DatabaseAction.php:311 +#: classes/Gems/Default/DatabaseAction.php:312 #, php-format msgid "%d new or changed patch(es)." msgstr "%d nieuwe of veranderde patch(es)." -#: classes/Gems/Default/DatabaseAction.php:316 +#: classes/Gems/Default/DatabaseAction.php:317 #: classes/Gems/Default/ProjectInformationAction.php:114 msgid "Gems build" msgstr "Gems bouwnummer" -#: classes/Gems/Default/DatabaseAction.php:317 +#: classes/Gems/Default/DatabaseAction.php:318 msgid "Database build" msgstr "Database versie" -#: classes/Gems/Default/DatabaseAction.php:319 +#: classes/Gems/Default/DatabaseAction.php:320 msgid "Execute level" msgstr "Uit te voeren versie" -#: classes/Gems/Default/DatabaseAction.php:323 +#: classes/Gems/Default/DatabaseAction.php:324 msgid "Ignore finished" msgstr "Afgeronde patches overslaan" -#: classes/Gems/Default/DatabaseAction.php:324 +#: classes/Gems/Default/DatabaseAction.php:325 msgid "Ignore executed" msgstr "Uitgevoerde patches overslaan" -#: classes/Gems/Default/DatabaseAction.php:325 +#: classes/Gems/Default/DatabaseAction.php:326 msgid "Show patches" msgstr "Toon patches" -#: classes/Gems/Default/DatabaseAction.php:341 +#: classes/Gems/Default/DatabaseAction.php:342 #, php-format msgid "%d patch(es) executed." msgstr "%d patch(es) uitgevoerd." -#: classes/Gems/Default/DatabaseAction.php:346 +#: classes/Gems/Default/DatabaseAction.php:347 msgid "Patch" msgstr "Patch" -#: classes/Gems/Default/DatabaseAction.php:350 +#: classes/Gems/Default/DatabaseAction.php:351 msgid "Query" msgstr "Query" -#: classes/Gems/Default/DatabaseAction.php:353 +#: classes/Gems/Default/DatabaseAction.php:354 msgid "Result" msgstr "Resultaat" -#: classes/Gems/Default/DatabaseAction.php:377 +#: classes/Gems/Default/DatabaseAction.php:378 msgid "Patch maintenance" msgstr "Patch onderhoud" -#: classes/Gems/Default/DatabaseAction.php:381 +#: classes/Gems/Default/DatabaseAction.php:382 msgid "Patch overview" msgstr "Patch overzicht" -#: classes/Gems/Default/DatabaseAction.php:441 +#: classes/Gems/Default/DatabaseAction.php:442 msgid "This database object does not exist. You cannot create it." msgstr "Dit database object bestaat niet en kan ook niet aangemaakt worden." -#: classes/Gems/Default/DatabaseAction.php:447 +#: classes/Gems/Default/DatabaseAction.php:448 msgid "This database object has no script. You cannot execute it." msgstr "Dit database object heeft geen script. Het kan dus ook niet uitgevoerd worden." -#: classes/Gems/Default/DatabaseAction.php:458 +#: classes/Gems/Default/DatabaseAction.php:459 #, php-format msgid "Run %s" msgstr "Voer %s script uit" -#: classes/Gems/Default/DatabaseAction.php:477 +#: classes/Gems/Default/DatabaseAction.php:478 #, php-format msgid "Starting %d object creation scripts." msgstr "Aanvang %d object aanmaak scripts." -#: classes/Gems/Default/DatabaseAction.php:482 +#: classes/Gems/Default/DatabaseAction.php:483 #, php-format msgid "Finished %s creation script for object %d of %d" msgstr "Klaar %s met aanmaak script voor object %d van %d" -#: classes/Gems/Default/DatabaseAction.php:486 +#: classes/Gems/Default/DatabaseAction.php:487 msgid "All objects exist. Nothing was executed." msgstr "Alle objects bestaan. Niets was uitgevoerd." -#: classes/Gems/Default/DatabaseAction.php:492 +#: classes/Gems/Default/DatabaseAction.php:493 msgid "Create not-existing database objects" msgstr "Aanmaak van database objecten die nog niet bestaan" -#: classes/Gems/Default/DatabaseAction.php:494 +#: classes/Gems/Default/DatabaseAction.php:495 #, php-format msgid "One database object does not exist." msgid_plural "These %d database objects do not exist." msgstr[0] "Één object bestaat nog niet in de database." msgstr[1] "%d objecten bestaan nog niet in de database." -#: classes/Gems/Default/DatabaseAction.php:495 +#: classes/Gems/Default/DatabaseAction.php:496 msgid "Are you sure you want to create it?" msgid_plural "Are you sure you want to create them all?" msgstr[0] "Weet je zeker dat je dat object wil aanmaken?" msgstr[1] "Weet je zeker dat je ze allemaal wil aanmaken?" -#: classes/Gems/Default/DatabaseAction.php:508 +#: classes/Gems/Default/DatabaseAction.php:509 msgid "All database objects exist. There is nothing to create." msgstr "Alle database objecten bestaan. Er valt niets te maken." -#: classes/Gems/Default/DatabaseAction.php:521 +#: classes/Gems/Default/DatabaseAction.php:522 msgid "Separate multiple commands with semicolons (;)." msgstr "Scheidt meerdere commando's met punt-comma's (;)." -#: classes/Gems/Default/DatabaseAction.php:528 +#: classes/Gems/Default/DatabaseAction.php:529 msgid "Run" msgstr "Uitvoeren" -#: classes/Gems/Default/DatabaseAction.php:537 +#: classes/Gems/Default/DatabaseAction.php:538 msgid "raw" msgstr "rauw" -#: classes/Gems/Default/DatabaseAction.php:546 +#: classes/Gems/Default/DatabaseAction.php:547 #, php-format msgid "Result set %s." msgstr "Resultaat %s." -#: classes/Gems/Default/DatabaseAction.php:569 +#: classes/Gems/Default/DatabaseAction.php:570 msgid "Execute raw SQL" msgstr "SQL direct uitvoeren" -#: classes/Gems/Default/DatabaseAction.php:572 +#: classes/Gems/Default/DatabaseAction.php:573 msgid "Result sets" msgstr "Resultaten" -#: classes/Gems/Default/DatabaseAction.php:595 +#: classes/Gems/Default/DatabaseAction.php:596 msgid "This database object does not exist. You cannot view it." msgstr "Dit database object bestaat. Het kan dus ook niet bekeken worden." -#: classes/Gems/Default/DatabaseAction.php:600 +#: classes/Gems/Default/DatabaseAction.php:601 #, php-format msgid "The data in table %s" msgstr "De gegevens in tabel %s" -#: classes/Gems/Default/DatabaseAction.php:601 +#: classes/Gems/Default/DatabaseAction.php:602 #, php-format msgid "Contents of %s %s" msgstr "De inhoud van %s %s" @@ -1040,6 +1049,7 @@ msgstr "Gebruikersnaam" #: classes/Gems/Default/IndexAction.php:105 +#: classes/Gems/Default/MailServerAction.php:88 msgid "Password" msgstr "Wachtwoord" @@ -1212,6 +1222,62 @@ msgid "Email templates" msgstr "Email sjabloon" +#: classes/Gems/Default/MailServerAction.php:68 +msgid "From address [part]" +msgstr "Vanaf adres [gedeelte]" + +#: classes/Gems/Default/MailServerAction.php:70 +msgid "E.g.: '%', '%.org' or '%@gemstracker.org' or 'ro...@ge...'." +msgstr "Bijvoorbeeld: '%', '%.nl' of '%@gemstracker.nl' of 'ro...@ge...'." + +#: classes/Gems/Default/MailServerAction.php:71 +msgid "Server" +msgstr "Server" + +#: classes/Gems/Default/MailServerAction.php:73 +msgid "Encryption" +msgstr "Encryptie" + +#: classes/Gems/Default/MailServerAction.php:76 +msgid "None" +msgstr "Geen" + +#: classes/Gems/Default/MailServerAction.php:77 +msgid "SSL" +msgstr "SSL" + +#: classes/Gems/Default/MailServerAction.php:78 +msgid "TLS" +msgstr "TLS" + +#: classes/Gems/Default/MailServerAction.php:80 +msgid "Port" +msgstr "PoortAfdrukken" + +#: classes/Gems/Default/MailServerAction.php:82 +msgid "Normal values: 25 for TLS and no encryption, 465 for SSL" +msgstr "Standaard waardes: 25 voor TLS en voor geen encryptie, 465 voor SSL" + +#: classes/Gems/Default/MailServerAction.php:84 +msgid "User ID" +msgstr "Gebruikers ID" + +#: classes/Gems/Default/MailServerAction.php:90 +#: classes/Gems/Default/OptionAction.php:107 +#: classes/Gems/Default/OptionAction.php:112 +msgid "Repeat password" +msgstr "Herhaal wachtwoord" + +#: classes/Gems/Default/MailServerAction.php:91 +msgid "Enter only when changing" +msgstr "Alleen invoeren om het wachtwoord te wijzigen" + +#: classes/Gems/Default/MailServerAction.php:100 +msgid "email server" +msgid_plural "email servers" +msgstr[0] "email server" +msgstr[1] "email servers" + #: classes/Gems/Default/OptionAction.php:73 #: classes/Gems/Default/OrganizationAction.php:128 msgid "Language" @@ -1234,11 +1300,6 @@ msgid "New password" msgstr "Nieuw wachtwoord" -#: classes/Gems/Default/OptionAction.php:107 -#: classes/Gems/Default/OptionAction.php:112 -msgid "Repeat password" -msgstr "Herhaal wachtwoord" - #: classes/Gems/Default/OptionAction.php:141 msgid "New password is active." msgstr "Nieuwe wachtwoord geactiveerd." @@ -1330,7 +1391,6 @@ msgstr "Deelnemende organisaties" #: classes/Gems/Default/OverviewPlanAction.php:115 -#: classes/Gems/Default/ProjectSurveysAction.php:88 msgid "survey" msgid_plural "surveys" msgstr[0] "vragenlijst" @@ -1477,20 +1537,26 @@ msgstr "Sessie inhoud" #: classes/Gems/Default/ProjectSurveysAction.php:67 +#: classes/Gems/Default/SurveyAction.php:191 msgid "Survey" msgstr "Vragenlijst" #: classes/Gems/Default/ProjectSurveysAction.php:68 +#: classes/Gems/Default/SurveyAction.php:192 msgid "By" msgstr "Door" #: 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 "Van" #: 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 "Tot" @@ -1499,10 +1565,13 @@ msgstr "Beschikbare vragenlijsten" #: classes/Gems/Default/ProjectTracksAction.php:65 +#: classes/Gems/Default/TrackAction.php:328 msgid "Survey #" msgstr "Vragenlijsten" #: classes/Gems/Default/ProjectTracksAction.php:85 +#: classes/Gems/Default/TrackAction.php:451 +#: classes/Gems/Default/TrackMaintenanceAction.php:242 msgid "track" msgid_plural "tracks" msgstr[0] "traject" @@ -1518,6 +1587,7 @@ msgstr "Vragen in vragenlijsten %s" #: classes/Gems/Default/ProjectTracksAction.php:106 +#: classes/Gems/Default/SurveyAction.php:85 #, php-format msgid "Survey %s does not exist." msgstr "Vragenlijst %s bestaat niet." @@ -1527,6 +1597,7 @@ msgstr "Vragenlijst niet opgegeven." #: classes/Gems/Default/ProjectTracksAction.php:120 +#: classes/Gems/Default/TrackActionAbstract.php:479 #, php-format msgid "Track %s does not exist." msgstr "Trajectnummer %s bestaat niet." @@ -1597,32 +... [truncated message content] |
From: <gem...@li...> - 2011-09-15 14:19:10
|
Revision: 22 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=22&view=rev Author: matijsdejong Date: 2011-09-15 14:19:01 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - added organization code field without using it - fixed #413 overzicht weekview - added extra overview column to patches Modified Paths: -------------- trunk/library/classes/Gems/Default/DatabaseAction.php trunk/library/classes/Gems/Selector/DateSelectorAbstract.php trunk/library/classes/Gems/Selector/TokenDateSelector.php trunk/library/configs/db/patches.sql trunk/library/configs/db/tables/gems__organizations.20.sql trunk/library/configs/db_multi_layout/tables/gems__organizations.20.sql Modified: trunk/library/classes/Gems/Default/DatabaseAction.php =================================================================== --- trunk/library/classes/Gems/Default/DatabaseAction.php 2011-09-15 14:18:48 UTC (rev 21) +++ trunk/library/classes/Gems/Default/DatabaseAction.php 2011-09-15 14:19:01 UTC (rev 22) @@ -298,10 +298,11 @@ $patcher = new Gems_Util_DatabasePatcher($this->db, 'patches.sql', $this->escort->getDatabasePaths()); $changed = $patcher->uploadPatches($this->loader->getVersions()->getBuild()); $tableSql = sprintf( - 'SELECT gpa_level AS `%s`, gpa_location AS `%s`, COUNT(*) AS `%s`, SUM(gpa_executed) AS `%s`, SUM(gpa_completed) AS `%s` FROM gems__patches GROUP BY gpa_level, gpa_location ORDER BY gpa_level DESC, gpa_location', + 'SELECT gpa_level AS `%s`, gpa_location AS `%s`, COUNT(*) AS `%s`, COUNT(*) - SUM(gpa_executed) AS `%s`, SUM(gpa_executed) AS `%s`, SUM(gpa_completed) AS `%s` FROM gems__patches GROUP BY gpa_level, gpa_location ORDER BY gpa_level DESC, gpa_location', $this->_('Level'), $this->_('Subtype'), $this->_('Patches'), + $this->_('To be executed'), $this->_('Executed'), $this->_('Finished')); Modified: trunk/library/classes/Gems/Selector/DateSelectorAbstract.php =================================================================== --- trunk/library/classes/Gems/Selector/DateSelectorAbstract.php 2011-09-15 14:18:48 UTC (rev 21) +++ trunk/library/classes/Gems/Selector/DateSelectorAbstract.php 2011-09-15 14:19:01 UTC (rev 22) @@ -26,24 +26,24 @@ * 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. - */ - -/** - * File description of DateSelectorAbstract * - * @author Matijs de Jong <mj...@ma...> - * @since 1.1 - * @version 1.1 + * + * * @package Gems * @subpackage Selector + * @author Matijs de Jong <mj...@ma...> + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: OverviewPlanAction.php 430 2011-08-18 10:40:21Z 175780 $ */ /** - * Class description of DateSelectorAbstract * - * @author Matijs de Jong <mj...@ma...> * @package Gems * @subpackage Selector + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.2 */ abstract class Gems_Selector_DateSelectorAbstract extends Gems_Registry_TargetAbstract { @@ -190,7 +190,7 @@ switch ($this->dateType) { case 'D': $keyCount = 1; - $groupby['period_1'] = $this->dateFrom; + $groupby['period_1'] = new Zend_Db_Expr("CONVERT($this->dateFrom, DATE)"); $date->setTime(0); $date->addDay($this->dateFactor - $this->dateRange); @@ -630,7 +630,7 @@ case 'W': $header = array($repeater->period_1, MUtil_Html::create()->br(), - sprintf($this->_('week %s'), $repeater->period_2)); + MUtil_Lazy::call('sprintf', $this->_('week %s'), $repeater->period_2)); break; case 'M': Modified: trunk/library/classes/Gems/Selector/TokenDateSelector.php =================================================================== --- trunk/library/classes/Gems/Selector/TokenDateSelector.php 2011-09-15 14:18:48 UTC (rev 21) +++ trunk/library/classes/Gems/Selector/TokenDateSelector.php 2011-09-15 14:19:01 UTC (rev 22) @@ -4,7 +4,7 @@ /** * 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 @@ -15,7 +15,7 @@ * * 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 @@ -26,24 +26,23 @@ * 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. - */ - -/** - * File description of TokenDateSelector * - * @author Matijs de Jong <mj...@ma...> - * @since 1.1 - * @version 1.1 + * * @package Gems * @subpackage Selector + * @author Matijs de Jong <mj...@ma...> + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: OverviewPlanAction.php 430 2011-08-18 10:40:21Z 175780 $ */ /** - * Class description of TokenDateSelector * - * @author Matijs de Jong <mj...@ma...> * @package Gems * @subpackage Selector + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.2 */ class Gems_Selector_TokenDateSelector extends Gems_Selector_DateSelectorAbstract { Modified: trunk/library/configs/db/patches.sql =================================================================== --- trunk/library/configs/db/patches.sql 2011-09-15 14:18:48 UTC (rev 21) +++ trunk/library/configs/db/patches.sql 2011-09-15 14:19:01 UTC (rev 22) @@ -185,3 +185,8 @@ -- PATCH: Mail templates per organization ALTER TABLE `gems__mail_templates` ADD `gmt_organizations` VARCHAR( 250 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `gmt_body`; UPDATE gems__mail_templates SET gmt_organizations = (SELECT CONCAT('|', GROUP_CONCAT(gor_id_organization SEPARATOR '|'), '|') FROM gems__organizations); + +-- GEMS VERSION: 40 +-- PATCH: Organization codes +ALTER TABLE `gems__organizations` ADD gor_code varchar(20) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' AFTER gor_name; + Modified: trunk/library/configs/db/tables/gems__organizations.20.sql =================================================================== --- trunk/library/configs/db/tables/gems__organizations.20.sql 2011-09-15 14:18:48 UTC (rev 21) +++ trunk/library/configs/db/tables/gems__organizations.20.sql 2011-09-15 14:19:01 UTC (rev 22) @@ -3,6 +3,7 @@ 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', Modified: trunk/library/configs/db_multi_layout/tables/gems__organizations.20.sql =================================================================== --- trunk/library/configs/db_multi_layout/tables/gems__organizations.20.sql 2011-09-15 14:18:48 UTC (rev 21) +++ trunk/library/configs/db_multi_layout/tables/gems__organizations.20.sql 2011-09-15 14:19:01 UTC (rev 22) @@ -4,6 +4,7 @@ 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', This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 14:19:02
|
Revision: 21 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=21&view=rev Author: mennodekker Date: 2011-09-15 14:18:48 +0000 (Thu, 15 Sep 2011) Log Message: ----------- Introducing the FormattedData class Added Paths: ----------- trunk/library/classes/Gems/FormattedData.php Added: trunk/library/classes/Gems/FormattedData.php =================================================================== --- trunk/library/classes/Gems/FormattedData.php (rev 0) +++ trunk/library/classes/Gems/FormattedData.php 2011-09-15 14:18:48 UTC (rev 21) @@ -0,0 +1,150 @@ +<?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 Gems + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: Export.php 124 2011-08-09 11:56:35Z 175780 $ + */ + +/** + * Format and araay of data according to a provided model + * + * @package Gems + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_FormattedData extends IteratorIterator +{ + /** + * @var MUtil_Model_ModelAbstract + */ + private $model; + + /** + * @var ArrayObject + */ + private $data; + + private $formatted; + + public function __construct($data, MUtil_Model_ModelAbstract $model, $formatted = true) { + $this->data = parent::__construct(new ArrayObject($data)); + $this->model = $model; + $this->setFormatted($formatted); + return $this; + } + + public function current() { + //Here we get the actual record to transform! + $row = parent::current(); + if ($this->formatted) { + $row = $this->format($row, $this->model); + } + return $row; + } + + /** + * Formats a row of data using the given model + * + * Static method only available for single rows, for a convenient way of using on a + * rowset, use the class and iterate + * + * @param array $row + * @param MUtil_Model_ModelAbstract $model + * @return array The formatted array + */ + static function format($row, $model) { + foreach ($row as $fieldname=>$value) { + $row[$fieldname] = self::_format($fieldname, $row[$fieldname], $model); + } + return $row; + } + + /** + * This is the actual format function, copied from the Exhibitor for field + * + * @param type $name + * @param type $result + * @return type + */ + private static function _format($name, $result, $model) + { + if ($default = $model->get($name,'default')) { + if (null === $result) { + $result = $default; + } + } + + if ($multiOptions = $model->get($name, 'multiOptions')) { + if (is_array($multiOptions)) { + if (array_key_exists($result, $multiOptions)) { + $result = $multiOptions[$result]; + } + } + } + + if ($dateFormat = $model->get($name, 'dateFormat')) { + $storageFormat = $model->get($name, 'storageFormat'); + $result = MUtil_Date::format($result, $dateFormat, $storageFormat); + } + + if ($callback = $model->get($name, 'formatFunction')) { + $result = call_user_func($callback, $result); + } + + if ($function = $model->get($name, 'itemDisplay')) { + if (is_callable($function)) { + $result = call_user_func($function, $result); + } elseif (is_object($function)) { + if (($function instanceof MUtil_Html_ElementInterface) + || method_exists($function, 'append')) { + $object = clone $function; + $result = $object->append($result); + } + } elseif (is_string($function)) { + // Assume it is a html tag when a string + $result = MUtil_Html::create($function, $result); + } + } + + if ($result instanceof MUtil_Html_HtmlInterface) { + $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); + if (null === $viewRenderer->view) { + $viewRenderer->initView(); + } + $view = $viewRenderer->view; + $result = $result->render($view); + } + return $result; + } + + public function setFormatted($bool) { + $this->formatted = $bool; + } +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 13:52:51
|
Revision: 20 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=20&view=rev Author: matijsdejong Date: 2011-09-15 13:52:41 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - track is only available when grt_active = 1 Modified Paths: -------------- trunk/library/snippets/Track/AvailableTracksSnippets.php Modified: trunk/library/snippets/Track/AvailableTracksSnippets.php =================================================================== --- trunk/library/snippets/Track/AvailableTracksSnippets.php 2011-09-15 13:45:13 UTC (rev 19) +++ trunk/library/snippets/Track/AvailableTracksSnippets.php 2011-09-15 13:52:41 UTC (rev 20) @@ -50,7 +50,16 @@ class Track_AvailableTracksSnippets extends Gems_Snippets_ModelTableSnippetAbstract { /** + * Set a fixed model filter. * + * Leading _ means not overwritten by sources. + * + * @var array + */ + protected $_fixedFilter = array('gtr_active' => 1); + + /** + * * @var MUtil_Model_ModelAbstract */ protected $model; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 13:45:19
|
Revision: 19 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=19&view=rev Author: mennodekker Date: 2011-09-15 13:45:13 +0000 (Thu, 15 Sep 2011) Log Message: ----------- Removed debug code :) Modified Paths: -------------- trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php Modified: trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php =================================================================== --- trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php 2011-09-15 13:43:29 UTC (rev 18) +++ trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php 2011-09-15 13:45:13 UTC (rev 19) @@ -88,7 +88,5 @@ } } return parent::setView($view); - $z = new ZendX_JQuery_Form_Element_AutoComplete(); - $z = new ZendX_JQuery_Form_Decorator_UiWidgetElement(); } } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 13:43:39
|
Revision: 18 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=18&view=rev Author: mennodekker Date: 2011-09-15 13:43:29 +0000 (Thu, 15 Sep 2011) Log Message: ----------- New way of handling autosubmit forms, instead of adding new Gems_JQuery_AutoSubmitForm($href, $targetId, $form); to the output, just use $form->setAutoSubmit($href, $targetId) Modified Paths: -------------- trunk/library/classes/Gems/Controller/BrowseEditAction.php trunk/library/classes/Gems/Form/Decorator/Form.php trunk/library/classes/Gems/Form.php Modified: trunk/library/classes/Gems/Controller/BrowseEditAction.php =================================================================== --- trunk/library/classes/Gems/Controller/BrowseEditAction.php 2011-09-15 10:58:07 UTC (rev 17) +++ trunk/library/classes/Gems/Controller/BrowseEditAction.php 2011-09-15 13:43:29 UTC (rev 18) @@ -542,7 +542,8 @@ } $href = $this->getAutoSearchHref(); - $div[] = new Gems_JQuery_AutoSubmitForm($href, $targetId, $form); + $form->setAutoSubmit($href, $targetId); + //$div[] = new Gems_JQuery_AutoSubmitForm($href, $targetId, $form); return $form; } Modified: trunk/library/classes/Gems/Form/Decorator/Form.php =================================================================== --- trunk/library/classes/Gems/Form/Decorator/Form.php 2011-09-15 10:58:07 UTC (rev 17) +++ trunk/library/classes/Gems/Form/Decorator/Form.php 2011-09-15 13:43:29 UTC (rev 18) @@ -2,7 +2,7 @@ /** * 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 @@ -13,7 +13,7 @@ * * 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 @@ -24,7 +24,7 @@ * 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 Gems * @subpackage Form * @copyright Copyright (c) 2011 Erasmus MC @@ -42,10 +42,37 @@ */ class Gems_Form_Decorator_Form extends Zend_Form_Decorator_Form { + protected $localScriptFiles = '/gems/js/autoSubmitForm.js'; + protected $localScriptName = 'autoSubmitForm'; + public function render($content) { $form = $this->getElement(); $view = $form->getView(); - $scripts = $form->getScripts(); + + /* + * Check if this is a form that should autosubmit. If so, add script to head and onload + */ + if ($form->isAutoSubmit()) { + $form->addScript($this->localScriptFiles); + //ZendX_JQuery::enableForm($form); + $jquery = $view->jQuery(); + $jquery->enable(); //Just to make sure + + $params = $form->getAutoSubmit(); + if (($view instanceof Zend_View_Abstract) && ($params['submitUrl'] instanceof MUtil_Html_HtmlInterface)) { + $params['submitUrl'] = $params['submitUrl']->render($view); + } + + $js = sprintf('%s("#%s").%s(%s);', + ZendX_JQuery_View_Helper_JQuery::getJQueryHandler(), + $form->getId(), + $this->localScriptName, + ZendX_JQuery::encodeJson($params) + ); + $jquery->addOnLoad($js); + } + + $scripts = $form->getScripts(); $css = $form->getCss(); if (!is_null($scripts) && is_array($scripts)) { Modified: trunk/library/classes/Gems/Form.php =================================================================== --- trunk/library/classes/Gems/Form.php 2011-09-15 10:58:07 UTC (rev 17) +++ trunk/library/classes/Gems/Form.php 2011-09-15 13:43:29 UTC (rev 18) @@ -1,31 +1,30 @@ <?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. - * +/** + * 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. + * * @version $Id: Form.php 345 2011-07-28 08:39:24Z 175780 $ * @package Gems * @subpackage Form @@ -35,12 +34,12 @@ /** * Base form class - * + * * @package Gems * @subpackage Form * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License - */ + */ class Gems_Form extends MUtil_Form { /** @@ -58,6 +57,13 @@ protected $_scripts = null; /** + * If set this holds the url and targetid for the autosubmit + * + * @var array + */ + protected $_autosubmit = null; + + /** * Constructor * * Registers form view helper as decorator @@ -100,7 +106,7 @@ /** * Attach a css file to the form with form-specific css - * + * * Optional media parameter can be used to determine media-type (print, screen etc) * * @param string $file @@ -113,4 +119,38 @@ public function getCss() { return $this->_css; } + + public function getAutoSubmit() { + return $this->_autosubmit; + } + + /** + * Is this a form that autosubmits? + * + * @return boolean + */ + public function isAutoSubmit() { + return isset($this->_autosubmit); + } + + /** + * + * @param type $submitUrl + * @param type $targetId + */ + public function setAutoSubmit($submitUrl, $targetId) { + // Filter out elements passed by type + $args = MUtil_Ra::args(func_get_args(), + array( + 'submitUrl' => array('MUtil_Html_UrlArrayAttribute', 'is_array', 'is_string'), + 'targetId' => array('MUtil_Html_ElementInterface', 'is_string'), + ), null, MUtil_Ra::STRICT); + + if ($args['targetId'] instanceof MUtil_Html_ElementInterface) { + $args['targetId'] = isset($args['targetId']->id) ? '#' . $args['targetId']->id : (isset($args['targetId']->class) ? '.' . $args['targetId']->class: $args['targetId']->getTagName()); + } else { + $args['targetId'] = '#' . $args['targetId']; + } + $this->_autosubmit = $args; + } } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 10:58:14
|
Revision: 17 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=17&view=rev Author: matijsdejong Date: 2011-09-15 10:58:07 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - fixed SingleTrack bug where the more than one track is in the project Modified Paths: -------------- trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php Modified: trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php =================================================================== --- trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php 2011-09-15 10:47:16 UTC (rev 16) +++ trunk/library/classes/Gems/Default/SurveyMaintenanceAction.php 2011-09-15 10:58:07 UTC (rev 17) @@ -391,12 +391,12 @@ public function getTrackCount($currentId) { - $singleTrack = $this->escort instanceof Gems_Project_Tracks_SingleTrackInterface; + $singleTrack = ($this->escort instanceof Gems_Project_Tracks_SingleTrackInterface) ? $this->escort->getTrackId() : null; $select = new Zend_Db_Select($this->db); $select->from('gems__rounds', array('useCnt' => 'COUNT(*)', 'trackCnt' => 'COUNT(DISTINCT gro_id_track)')); if ($singleTrack) { - $select->where("gro_id_track = ?", $this->escort->getTrackId()); + $select->where("gro_id_track = ?", $singleTrack); } else { $select->joinLeft('gems__tracks', 'gtr_id_track = gro_id_track', array()) ->group('gems__tracks.gtr_id_track') This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 10:47:23
|
Revision: 16 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=16&view=rev Author: mennodekker Date: 2011-09-15 10:47:16 +0000 (Thu, 15 Sep 2011) Log Message: ----------- fixed #1: Create a toggle element in forms Added Paths: ----------- trunk/library/classes/Gems/JQuery/Form/Element/ trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php trunk/library/classes/Gems/JQuery/View/Helper/ToggleCheckboxes.php Added: trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php =================================================================== --- trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php (rev 0) +++ trunk/library/classes/Gems/JQuery/Form/Element/ToggleCheckboxes.php 2011-09-15 10:47:16 UTC (rev 16) @@ -0,0 +1,94 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage JQuery + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: Sample.php 215 2011-07-12 08:52:54Z michiel $ + */ + +/** + * Short description for ToggleCheckboxes + * + * Long description for class ToggleCheckboxes (if any)... + * + * @package Gems + * @subpackage JQuery + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_JQuery_Form_Element_ToggleCheckboxes extends Zend_Form_Element_Button +{ + /** + * Use toggleCheckboxes view helper by default + * @var string + */ + public $helper = 'toggleCheckboxes'; + + /** + * Create a button to toggle all cyhackboxes found by a given jQuery selector + * + * Specify the 'selector' in the options http://api.jquery.com/category/selectors/ + * + * Usage: + * $element = new Gems_JQuery_Form_Element_ToggleCheckboxes('name', array('selector'=>'input[name^=oid]') + * + * @param type $spec + * @param type $options + */ + public function __construct($spec, $options = null) + { + parent::__construct($spec, $options); + } + + /** + * Set the view object + * + * Ensures that the view object has the Gems_jQuery view helper path set. + * + * @param Zend_View_Interface $view + * @return Gems_JQuery_Form_Element_ToggleCheckboxes + */ + public function setView(Zend_View_Interface $view = null) + { + if (null !== $view) { + if (false === $view->getPluginLoader('helper')->getPaths('Gems_JQuery_View_Helper')) { + $view->addHelperPath('Gems/JQuery/View/Helper', 'Gems_JQuery_View_Helper'); + } + if (false === $view->getPluginLoader('helper')->getPaths('ZendX_JQuery_View_Helper')) { + $view->addHelperPath('ZendX/JQuery/View/Helper', 'ZendX_JQuery_View_Helper'); + } + } + return parent::setView($view); + $z = new ZendX_JQuery_Form_Element_AutoComplete(); + $z = new ZendX_JQuery_Form_Decorator_UiWidgetElement(); + } +} \ No newline at end of file Added: trunk/library/classes/Gems/JQuery/View/Helper/ToggleCheckboxes.php =================================================================== --- trunk/library/classes/Gems/JQuery/View/Helper/ToggleCheckboxes.php (rev 0) +++ trunk/library/classes/Gems/JQuery/View/Helper/ToggleCheckboxes.php 2011-09-15 10:47:16 UTC (rev 16) @@ -0,0 +1,68 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage JQuery + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @version $Id: Sample.php 215 2011-07-12 08:52:54Z michiel $ + */ + +/** + * Short description for ToggleCheckboxes + * + * Long description for class ToggleCheckboxes (if any)... + * + * @package Gems + * @subpackage JQuery + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.5 + */ +class Gems_JQuery_View_Helper_ToggleCheckboxes extends ZendX_JQuery_View_Helper_UiWidget +{ + //put your code here + public function toggleCheckboxes($id, $value = null, array $params = array()) + { + + $js = sprintf('%1$s("#%2$s").click(function(){ + $("%3$s").attr("checked", !$("%3$s").attr("checked")); +});', + ZendX_JQuery_View_Helper_JQuery::getJQueryHandler(), + $id, + $params['selector'] + ); + unset($params['selector']); + + $this->jquery->addOnLoad($js); + + //Now do something to add the jquery stuff + return $this->view->formButton($id, $value, $params); + } +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 10:46:10
|
Revision: 15 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=15&view=rev Author: matijsdejong Date: 2011-09-15 10:46:03 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - system no longer gives error when token table does not exist - bug #422, initial patch level of database set to 40 Modified Paths: -------------- trunk/library/classes/Gems/Default/TrackRoundsAction.php trunk/library/classes/Gems/Tracker/Engine/TrackEngineAbstract.php trunk/library/classes/Gems/Tracker/Engine/TrackEngineInterface.php trunk/library/classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php trunk/library/configs/db/tables/gems__patch_levels.10.sql trunk/library/snippets/EditTrackEngineSnippet.php Modified: trunk/library/classes/Gems/Default/TrackRoundsAction.php =================================================================== --- trunk/library/classes/Gems/Default/TrackRoundsAction.php 2011-09-15 09:47:09 UTC (rev 14) +++ trunk/library/classes/Gems/Default/TrackRoundsAction.php 2011-09-15 10:46:03 UTC (rev 15) @@ -87,7 +87,7 @@ $trackEngine->applyToMenuSource($menuSource); $menuSource->setRequestId($trackId); // Tell the menu we're using track id as request id - $this->addSnippets($trackEngine->getRoundEditSnippetNames(), 'trackEngine', $trackEngine, 'trackId', $trackId); + $this->addSnippets($trackEngine->getRoundEditSnippetNames(), 'trackEngine', $trackEngine, 'trackId', $trackId, 'userId', $this->session->user_id); } /** @@ -149,7 +149,7 @@ $trackEngine->applyToMenuSource($menuSource); $menuSource->setRequestId($trackId); // Tell the menu we're using track id as request id - $this->addSnippets($trackEngine->getRoundEditSnippetNames(), 'roundId', $this->_getParam(Gems_Model::ROUND_ID), 'trackEngine', $trackEngine, 'trackId', $trackId); + $this->addSnippets($trackEngine->getRoundEditSnippetNames(), 'roundId', $this->_getParam(Gems_Model::ROUND_ID), 'trackEngine', $trackEngine, 'trackId', $trackId, 'userId', $this->session->user_id); } public function getTopic($count = 1) Modified: trunk/library/classes/Gems/Tracker/Engine/TrackEngineAbstract.php =================================================================== --- trunk/library/classes/Gems/Tracker/Engine/TrackEngineAbstract.php 2011-09-15 09:47:09 UTC (rev 14) +++ trunk/library/classes/Gems/Tracker/Engine/TrackEngineAbstract.php 2011-09-15 10:46:03 UTC (rev 15) @@ -191,6 +191,43 @@ } /** + * Update the track, both in the database and in memory. + * + * @param array $values The values that this token should be set to + * @param int $userId The current user + * @return int 1 if data changed, 0 otherwise + */ + private function _update(array $values, $userId) + { + if ($this->tracker->filterChangesOnly($this->_trackData, $values)) { + + if (Gems_Tracker::$verbose) { + $echo = ''; + foreach ($values as $key => $val) { + $echo .= $key . ': ' . $this->_trackData[$key] . ' => ' . $val . "\n"; + } + MUtil_Echo::r($echo, 'Updated values for ' . $this->_trackId); + } + + if (! isset($values['gto_changed'])) { + $values['gtr_changed'] = new Zend_Db_Expr('CURRENT_TIMESTAMP'); + } + if (! isset($values['gtr_changed_by'])) { + $values['gtr_changed_by'] = $userId; + } + + // Update values in this object + $this->_trackData = $values + $this->_trackData; + + // return 1; + return $this->db->update('gems__tracks', $values, array('gtr_id_track = ?' => $this->_trackId)); + + } else { + return 0; + } + } + + /** * Creates all tokens that should exist, but do not exist * * NOTE: When overruling this function you should not create tokens because they @@ -266,6 +303,16 @@ } /** + * Calculate the number of active rounds in this track from the database. + * + * @return int The number of rounds in this track. + */ + public function calculateRoundCount() + { + return $this->db->fetchOne("SELECT COUNT(*) FROM gems__rounds WHERE gro_active = 1 AND gro_id_track = ?", $this->_trackId); + } + + /** * Checks all existing tokens and updates any changes to the original rounds (when necessary) * * @param Gems_Tracker_RespondentTrack $respTrack The respondent track to check @@ -715,4 +762,17 @@ return 0; } + + /** + * Updates the number of rounds in this track. + * + * @param int $userId The current user + * @return int 1 if data changed, 0 otherwise + */ + public function updateRoundCount($userId) + { + $values['gtr_survey_rounds'] = $this->calculateRoundCount(); + + return $this->_update($values, $userId); + } } Modified: trunk/library/classes/Gems/Tracker/Engine/TrackEngineInterface.php =================================================================== --- trunk/library/classes/Gems/Tracker/Engine/TrackEngineInterface.php 2011-09-15 09:47:09 UTC (rev 14) +++ trunk/library/classes/Gems/Tracker/Engine/TrackEngineInterface.php 2011-09-15 10:46:03 UTC (rev 15) @@ -68,6 +68,13 @@ public function calculateFieldsInfo($respTrackId, array $data); /** + * Calculate the number of active rounds in this track from the database. + * + * @return int The number of rounds in this track. + */ + public function calculateRoundCount(); + + /** * Check for the existence of all tokens and create them otherwise * * @param Gems_Tracker_RespondentTrack $respTrack The respondent track to check @@ -303,4 +310,12 @@ * @return int The number of changed fields */ public function setFieldsData($respTrackId, array $data); + + /** + * Updates the number of rounds in this track. + * + * @param int $userId The current user + * @return int 1 if data changed, 0 otherwise + */ + public function updateRoundCount($userId); } Modified: trunk/library/classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php =================================================================== --- trunk/library/classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php 2011-09-15 09:47:09 UTC (rev 14) +++ trunk/library/classes/Gems/Tracker/Snippets/EditRoundSnippetAbstract.php 2011-09-15 10:46:03 UTC (rev 15) @@ -77,6 +77,12 @@ protected $trackId; /** + * + * @var int $userId The current user + */ + protected $userId = 0; + + /** * @var Gems_Util */ protected $util; @@ -199,6 +205,7 @@ if ($this->createData && (! $this->roundId)) { $this->roundId = $this->formData['gro_id_round']; } + $this->trackEngine->updateRoundCount($this->userId); } /** Modified: trunk/library/configs/db/tables/gems__patch_levels.10.sql =================================================================== --- trunk/library/configs/db/tables/gems__patch_levels.10.sql 2011-09-15 09:47:09 UTC (rev 14) +++ trunk/library/configs/db/tables/gems__patch_levels.10.sql 2011-09-15 10:46:03 UTC (rev 15) @@ -3,7 +3,7 @@ gpl_level int unsigned not null unique, gpl_created timestamp not null default current_timestamp, - + PRIMARY KEY (gpl_level) ) ENGINE=InnoDB @@ -11,5 +11,5 @@ INSERT INTO gems__patch_levels (gpl_level, gpl_created) VALUES - (26, CURRENT_TIMESTAMP); + (40, CURRENT_TIMESTAMP); Modified: trunk/library/snippets/EditTrackEngineSnippet.php =================================================================== --- trunk/library/snippets/EditTrackEngineSnippet.php 2011-09-15 09:47:09 UTC (rev 14) +++ trunk/library/snippets/EditTrackEngineSnippet.php 2011-09-15 10:46:03 UTC (rev 15) @@ -265,10 +265,10 @@ if (isset($this->formData['gtr_organisations']) && is_array($this->formData['gtr_organisations'])) { $this->formData['gtr_organisations'] = '|' . implode('|', $this->formData['gtr_organisations']) . '|'; } - if ($this->createData) { + if ($this->trackEngine) { + $this->formData['gtr_survey_rounds'] = $this->trackEngine->calculateRoundCount(); + } else { $this->formData['gtr_survey_rounds'] = 0; - } else { - $this->formData['gtr_survey_rounds'] = $this->db->fetchOne("SELECT COUNT(*) FROM gems__rounds WHERE gro_active = 1 AND gro_id_track = ?", $this->trackId); } parent::saveData(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-15 09:47:15
|
Revision: 14 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=14&view=rev Author: matijsdejong Date: 2011-09-15 09:47:09 +0000 (Thu, 15 Sep 2011) Log Message: ----------- - try catch statements to prevent hanging errors when a survey is no longer active. Modified Paths: -------------- trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9Database.php Modified: trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9Database.php =================================================================== --- trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9Database.php 2011-09-14 17:45:40 UTC (rev 13) +++ trunk/library/classes/Gems/Tracker/Source/LimeSurvey1m9Database.php 2011-09-15 09:47:09 UTC (rev 14) @@ -540,7 +540,12 @@ $lsTab = $this->_getSurveyTableName($sourceSurveyId); $token = $this->_getToken($tokenId); - $values = $lsDb->fetchRow("SELECT * FROM $lsTab WHERE token = ?", $token); + try { + $values = $lsDb->fetchRow("SELECT * FROM $lsTab WHERE token = ?", $token); + } catch (Zend_Db_Statement_Exception $exception) { + $this->logger->logError($exception, $this->request); + $values = false; + } if ($values) { return $this->_getFieldMap($sourceSurveyId)->mapKeysToTitles($values); @@ -708,8 +713,14 @@ $sql = 'SELECT * FROM ' . $lsTokens . ' WHERE token = ? LIMIT 1'; - $result = $this->getSourceDatabase()->fetchRow($sql, $tokenId); + try { + $result = $this->getSourceDatabase()->fetchRow($sql, $tokenId); + } catch (Zend_Db_Statement_Exception $exception) { + $this->logger->logError($exception, $this->request); + $result = false; + } + $token->cacheSet(self::CACHE_TOKEN_INFO, $result); } else { $result = $token->cacheGet(self::CACHE_TOKEN_INFO); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-14 17:45:46
|
Revision: 13 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=13&view=rev Author: matijsdejong Date: 2011-09-14 17:45:40 +0000 (Wed, 14 Sep 2011) Log Message: ----------- - variable order update (not change in code) Modified Paths: -------------- trunk/library/snippets/TrackTokenOverviewSnippet.php Modified: trunk/library/snippets/TrackTokenOverviewSnippet.php =================================================================== --- trunk/library/snippets/TrackTokenOverviewSnippet.php 2011-09-13 17:44:45 UTC (rev 12) +++ trunk/library/snippets/TrackTokenOverviewSnippet.php 2011-09-14 17:45:40 UTC (rev 13) @@ -51,11 +51,16 @@ class TrackTokenOverviewSnippet extends Gems_Snippets_TokenModelSnippetAbstract { /** - * Optional: the display data of the track shown + * Set a fixed model sort. * + * Leading _ means not overwritten by sources. + * * @var array */ - protected $trackData; + protected $_fixedSort = array( + 'gto_round_order' => SORT_ASC, + 'gto_created' => SORT_ASC + ); /** * The respondent2track ID @@ -65,16 +70,11 @@ protected $respondentTrackId; /** - * Set a fixed model sort. + * Optional: the display data of the track shown * - * Leading _ means not overwritten by sources. - * * @var array */ - protected $_fixedSort = array( - 'gto_round_order' => SORT_ASC, - 'gto_created' => SORT_ASC - ); + protected $trackData; /** * Adds columns from the model to the bridge that creates the browse table. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-13 18:27:35
|
Revision: 12 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=12&view=rev Author: matijsdejong Date: 2011-09-13 17:44:45 +0000 (Tue, 13 Sep 2011) Log Message: ----------- - SingleTrack projects will now allow the addition of one track to the patient when none exist - hidden parameters in menu items are now added to parameter source instead of request, in order to allow filtering - started cleanup of _createTable in TrackActionAbstract - created new minimal snippet implementation Modified Paths: -------------- trunk/library/classes/Gems/Default/TrackAction.php trunk/library/classes/Gems/Default/TrackActionAbstract.php trunk/library/classes/Gems/Menu/SubMenuItem.php trunk/library/classes/Gems/Menu.php trunk/library/classes/GemsEscort.php trunk/library/classes/MUtil/Model/ModelAbstract.php trunk/library/classes/MUtil/Snippets/SnippetInterface.php Added Paths: ----------- trunk/library/classes/MUtil/Snippets/EmptySnippetAbstract.php trunk/library/snippets/Track/ trunk/library/snippets/Track/AvailableTracksSnippets.php Modified: trunk/library/classes/Gems/Default/TrackAction.php =================================================================== --- trunk/library/classes/Gems/Default/TrackAction.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/Gems/Default/TrackAction.php 2011-09-13 17:44:45 UTC (rev 12) @@ -466,6 +466,8 @@ $request = $this->getRequest(); $model = $this->getModel(); + // Gems_Menu::$verbose = true; + if ($data = $model->applyRequest($request)->loadFirst()) { $this->setMenuParameters($data); @@ -522,6 +524,21 @@ $this->html->buttonDiv($links); } + } elseif ($this->escort instanceof Gems_Project_Tracks_SingleTrackInterface) { + + $data['gr2o_patient_nr'] = $this->_getIdParam(); + $data['gr2o_id_organization'] = $this->escort->getCurrentOrganization(); + $data['track_can_be_created'] = 1; + $this->setMenuParameters($data); + + $model = $this->createTrackModel(false, 'index'); + + // MUtil_Model::$verbose = true; + + $this->html->h3($this->_('Add track')); + $this->html->pInfo($this->_('This respondent does not yet have an active track. Add one here.')); + $this->addSnippet('Track_AvailableTracksSnippets', 'model', $model, 'trackType', $this->trackType); + } else { $this->addMessage(sprintf($this->_('Unknown %s requested'), $this->getTopic())); } Modified: trunk/library/classes/Gems/Default/TrackActionAbstract.php =================================================================== --- trunk/library/classes/Gems/Default/TrackActionAbstract.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/Gems/Default/TrackActionAbstract.php 2011-09-13 17:44:45 UTC (rev 12) @@ -74,10 +74,13 @@ $model = $this->createTrackModel(false, 'index'); $request = $this->getRequest(); + $organisation_id = $this->escort->getCurrentOrganization(); + $searchText = $this->_getParam($model->getTextFilter()); + $model->applyPostRequest($request); // $model->trackUsage(); DO NOT USE AS all is label here. - if ($searchText = $this->_getParam($model->getTextFilter())) { + if ($searchText) { $marker = new MUtil_Html_Marker($model->getTextSearches($searchText), 'strong', 'UTF-8'); foreach ($model->getItemNames() as $name) { if ($model->get($name, 'label')) { @@ -86,15 +89,13 @@ } } - $organisation_id = $this->escort->getCurrentOrganization(); - $filterText = $this->_getParam(MUtil_Model::TEXT_FILTER); - $filter = $model->getTextSearchFilter($filterText); + $filter = $model->getTextSearchFilter($searchText); $filter['gtr_track_type'] = $this->trackType; $filter['gtr_active'] = 1; $filter[] = '(gtr_date_until IS NULL OR gtr_date_until >= CURRENT_DATE) AND gtr_date_start <= CURRENT_DATE'; $filter[] = "gtr_organisations LIKE '%|$organisation_id|%'"; - $baseurl = array('action' => 'index', 'gr2o_patient_nr' => $id, MUtil_Model::TEXT_FILTER => $filterText); + $baseurl = array('action' => 'index', 'gr2o_patient_nr' => $id, MUtil_Model::TEXT_FILTER => $searchText); $bridge = new MUtil_Model_TableBridge($model, array('class' => 'browser')); $bridge->setBaseUrl($baseurl); Modified: trunk/library/classes/Gems/Menu/SubMenuItem.php =================================================================== --- trunk/library/classes/Gems/Menu/SubMenuItem.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/Gems/Menu/SubMenuItem.php 2011-09-13 17:44:45 UTC (rev 12) @@ -444,6 +444,16 @@ return $this->addActionButton($this->_('Excel export'), $this->get('privilege') . '.excel', 'excel', $options); } + /** + * Add parameter values that should not show in the url but that + * must be added to the request when this menu item is current. + * + * @see applyHiddenParameters + * + * @param string $name Name of parameter + * @param mixed $value + * @return Gems_Menu_SubMenuItem (continuation pattern + */ public function addHiddenParameter($name, $value = null) { if (null === $value) { @@ -531,11 +541,11 @@ return $menu; } - public function applyHiddenParameters(Zend_Controller_Request_Abstract $request) + public function applyHiddenParameters(Gems_Menu_ParameterSource $source) { if ($this->_hiddenParameters) { foreach ($this->_hiddenParameters as $key => $name) { - $request->setParam($key, $name); + $source[$key] = $name; } } Modified: trunk/library/classes/Gems/Menu.php =================================================================== --- trunk/library/classes/Gems/Menu.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/Gems/Menu.php 2011-09-13 17:44:45 UTC (rev 12) @@ -340,12 +340,22 @@ if ($this->escort instanceof Gems_Project_Tracks_SingleTrackInterface) { + $trType = 'T'; $subPage = $page->addPage($this->_('Track'), 'pr.track', 'track', 'show-track') ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gr2o_patient_nr') ->addHiddenParameter(Gems_Model::TRACK_ID, $this->escort->getTrackId(), 'gtr_track_type', 'T'); - $tkPages['T'] = $subPage->addAction($this->_('Token'), 'pr.token', 'show') - ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gto_id_token'); + $tkPages[$trType] = $subPage->addAction($this->_('Token'), 'pr.token', 'show') + ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gto_id_token') + ->setParameterFilter('gtr_track_type', $trType, Gems_Model::ID_TYPE, 'token'); + $subPage->addAction($this->_('Add'), 'pr.track.create', 'create') + ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gr2o_patient_nr', Gems_Model::TRACK_ID, 'gtr_id_track') + ->setParameterFilter('gtr_track_type', $trType, 'track_can_be_created', 1) + ->addHiddenParameter('track_can_be_created', 1); + $subPage->addAction($this->_('Preview'), 'pr.track', 'view') + ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gr2o_patient_nr', Gems_Model::TRACK_ID, 'gtr_id_track') + ->setParameterFilter('gtr_track_type', $trType, 'track_can_be_created', 1) + ->addHiddenParameter('track_can_be_created', 1); } else { @@ -669,9 +679,12 @@ if ($this->_menuParameters) { // array_unshift($parameterSources, $this->_menuParameters); + // MUtil_echo::track($this->_menuParameters); $parameterSources[] = $this->_menuParameters; } + // self::$verbose = true; + $nav = new Zend_Navigation($this->_toNavigationArray($parameterSources)); // MUtil_Echo::r($this->_toNavigationArray($parameterSources)); Modified: trunk/library/classes/GemsEscort.php =================================================================== --- trunk/library/classes/GemsEscort.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/GemsEscort.php 2011-09-13 17:44:45 UTC (rev 12) @@ -1570,7 +1570,7 @@ } if (isset($menuItem)) { - $menuItem->applyHiddenParameters($request); + $menuItem->applyHiddenParameters($this->menu->getParameterSource()); $this->menu->setCurrent($menuItem); } } Modified: trunk/library/classes/MUtil/Model/ModelAbstract.php =================================================================== --- trunk/library/classes/MUtil/Model/ModelAbstract.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/MUtil/Model/ModelAbstract.php 2011-09-13 17:44:45 UTC (rev 12) @@ -198,6 +198,12 @@ return $this; } + /** + * Add's one or more sort fields to the standard sort. + * + * @param mixed $value Array of sortfield => SORT_ASC|SORT_DESC or single sortfield for ascending sort. + * @return MUtil_Model_ModelAbstract (continuation pattern) + */ public function addSort($value) { $value = $this->_checkSortValue($value); Added: trunk/library/classes/MUtil/Snippets/EmptySnippetAbstract.php =================================================================== --- trunk/library/classes/MUtil/Snippets/EmptySnippetAbstract.php (rev 0) +++ trunk/library/classes/MUtil/Snippets/EmptySnippetAbstract.php 2011-09-13 17:44:45 UTC (rev 12) @@ -0,0 +1,108 @@ +<?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. + * + * Minimal implementation of Snippet interface. + * + * @package MUtil + * @subpackage Snippets + * @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 $ + */ + +/** + * Minimal implementation of Snippet interface. + * + * Use this class for a quick implementation when SnippetAbstract feels to heavvy + * + * @see MUtil_Snippets_SnippetAbstract + * + * @package MUtil + * @subpackage Snippets + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.4.2 + */ +abstract class MUtil_Snippets_EmptySnippetAbstract extends MUtil_Registry_TargetAbstract implements MUtil_Snippets_SnippetInterface +{ + /** + * When hasHtmlOutput() is false a snippet code user should check + * for a redirectRoute. Otherwise the redirect calling render() will + * execute the redirect. + * + * This function should never return a value when the snippet does + * not redirect. + * + * Also when hasHtmlOutput() is true this function should not be + * called. + * + * @see Zend_Controller_Action_Helper_Redirector + * + * @return mixed Nothing or either an array or a string that is acceptable for Redector->gotoRoute() + */ + public function getRedirectRoute() + { } + + /** + * The place to check if the data set in the snippet is valid + * to generate the snippet. + * + * When invalid data should result in an error, you can throw it + * here but you can also perform the check in the + * checkRegistryRequestsAnswers() function from the + * {@see MUtil_Registry_TargetInterface}. + * + * @return boolean + */ + public function hasHtmlOutput() + { + return false; + } + + /** + * When there is a redirectRoute this function will execute it. + * + * When hasHtmlOutput() is true this functions should not be called. + * + * @see Zend_Controller_Action_Helper_Redirector + */ + public function redirectRoute() + { } + + /** + * Renders the element into a html string + * + * The $view is used to correctly encode and escape the output + * + * @param Zend_View_Abstract $view + * @return string Correctly encoded and escaped html output + */ + public function render(Zend_View_Abstract $view) + { } +} Modified: trunk/library/classes/MUtil/Snippets/SnippetInterface.php =================================================================== --- trunk/library/classes/MUtil/Snippets/SnippetInterface.php 2011-09-13 14:38:14 UTC (rev 11) +++ trunk/library/classes/MUtil/Snippets/SnippetInterface.php 2011-09-13 17:44:45 UTC (rev 12) @@ -3,7 +3,7 @@ /** * 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 @@ -14,7 +14,7 @@ * * 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 @@ -25,7 +25,7 @@ * 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 Snippets * @author Matijs de Jong <mj...@ma...> @@ -35,18 +35,18 @@ */ /** - * A snippet is a piece of html output that can be reused on multiple places in the code + * A snippet is a piece of html output that can be reused on multiple places in the code * or that isolates the processing needed for that output. * - * Variables are intialized using the MUtil_Registry_TargetInterface mechanism. + * Variables are intialized using the MUtil_Registry_TargetInterface mechanism. * The snippet is then rendered using MUtil_Html_HtmlInterface. - * - * The only "program flow" that can be initiated by a snippet is that it can reroute + * + * The only "program flow" that can be initiated by a snippet is that it can reroute * the browser to another page. * * @see MUtil_Registry_TargetInterface * @see MUtil_Html_HtmlInterface - * + * * @package MUtil * @subpackage Snippets * @copyright Copyright (c) 2011 Erasmus MC @@ -57,39 +57,39 @@ { /** * When hasHtmlOutput() is false a snippet code user should check - * for a redirectRoute. Otherwise the redirect calling render() will + * for a redirectRoute. Otherwise the redirect calling render() will * execute the redirect. - * + * * This function should never return a value when the snippet does * not redirect. - * - * Also when hasHtmlOutput() is true this function should not be + * + * Also when hasHtmlOutput() is true this function should not be * called. - * + * * @see Zend_Controller_Action_Helper_Redirector - * + * * @return mixed Nothing or either an array or a string that is acceptable for Redector->gotoRoute() */ public function getRedirectRoute(); - + /** * The place to check if the data set in the snippet is valid * to generate the snippet. * - * When invalid data should result in an error, you can throw it - * here but you can also perform the check in the + * When invalid data should result in an error, you can throw it + * here but you can also perform the check in the * checkRegistryRequestsAnswers() function from the * {@see MUtil_Registry_TargetInterface}. * * @return boolean */ public function hasHtmlOutput(); - + /** * When there is a redirectRoute this function will execute it. - * + * * When hasHtmlOutput() is true this functions should not be called. - * + * * @see Zend_Controller_Action_Helper_Redirector */ public function redirectRoute(); Property changes on: trunk/library/snippets/Track ___________________________________________________________________ Added: bugtraq:number + true Added: trunk/library/snippets/Track/AvailableTracksSnippets.php =================================================================== --- trunk/library/snippets/Track/AvailableTracksSnippets.php (rev 0) +++ trunk/library/snippets/Track/AvailableTracksSnippets.php 2011-09-13 17:44:45 UTC (rev 12) @@ -0,0 +1,137 @@ +<?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. + * + * Short description of file + * + * @package Gems + * @subpackage Snippets + * @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 $ + */ + +/** + * Short description for class + * + * Long description for class (if any)... + * + * @package Gems + * @subpackage Snippets + * @copyright Copyright (c) 2011 Erasmus MC + * @license New BSD License + * @since Class available since version 1.4 + */ +class Track_AvailableTracksSnippets extends Gems_Snippets_ModelTableSnippetAbstract +{ + /** + * + * @var MUtil_Model_ModelAbstract + */ + protected $model; + + /** + * + * @var string 'S' or 'T' + */ + protected $trackType; + + /** + * Adds columns from the model to the bridge that creates the browse table. + * + * Overrule this function to add different columns to the browse table, without + * having to recode the core table building code. + * + * @param MUtil_Model_TableBridge $bridge + * @param MUtil_Model_ModelAbstract $model + * @return void + */ + protected function addBrowseTableColumns(MUtil_Model_TableBridge $bridge, MUtil_Model_ModelAbstract $model) + { + $controller = $this->request->getControllerName(); + + $menuList = $this->menu->getMenuList(); + + $menuList->addByController($controller, 'create') + ->addByController($controller, 'view') + ->addParameterSources($bridge, $this->request) + ->setLowerCase(); //->showDisabled(); + + // Add create button + if ($menuItem = $menuList->getActionLink($controller, 'create')) { + $bridge->addItemLink($menuItem); + } + + foreach($model->getItemsOrdered() as $name) { + if ($label = $model->get($name, 'label')) { + $bridge->addSortable($name, $label); + } + } + + // Add view button + if ($menuItem = $menuList->getActionLink($controller, 'view')) { + $bridge->addItemLink($menuItem); + } + + } + + /** + * Creates the model + * + * @return MUtil_Model_ModelAbstract + */ + public function createModel() + { + $this->model->addColumn(new Zend_Db_Expr(1), 'track_can_be_created'); + + + return $this->model; + } + + /** + * Overrule to implement snippet specific filtering and sorting. + * + * @param MUtil_Model_ModelAbstract $model + */ + protected function processFilterAndSort(MUtil_Model_ModelAbstract $model) + { + $filter = array(); + + if ($this->trackType) { + $filter['gtr_track_type'] = $this->trackType; + } + + $sort = array('gtr_track_name' => SORT_ASC); + + // MUtil_Echo::track($filter); + + $model->addFilter($filter); + $model->addSort($sort); + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-13 14:38:21
|
Revision: 11 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=11&view=rev Author: matijsdejong Date: 2011-09-13 14:38:14 +0000 (Tue, 13 Sep 2011) Log Message: ----------- - starting to make trackId just an option Modified Paths: -------------- trunk/library/classes/Gems/Default/TrackAction.php trunk/library/classes/Gems/Menu/MenuAbstract.php Modified: trunk/library/classes/Gems/Default/TrackAction.php =================================================================== --- trunk/library/classes/Gems/Default/TrackAction.php 2011-09-13 12:28:48 UTC (rev 10) +++ trunk/library/classes/Gems/Default/TrackAction.php 2011-09-13 14:38:14 UTC (rev 11) @@ -479,7 +479,7 @@ $this->html->h2(sprintf($this->_('%s track for respondent nr %s'), $data['gtr_track_name'], $this->_getParam(MUtil_Model::REQUEST_ID))); - if (! isset($this->project->trackId)) { + if (! $this->escort instanceof Gems_Project_Tracks_SingleTrackInterface) { $table = parent::getShowTable(); $table->setRepeater(array($data)); @@ -514,7 +514,7 @@ $this->addSnippet('TrackTokenOverviewSnippet', 'trackData', $data, 'baseUrl', $baseUrl); - if (! isset($this->project->trackId)) { + if (! $this->escort instanceof Gems_Project_Tracks_SingleTrackInterface) { $this->addTrackUsage($data['gr2o_patient_nr'], $data['gr2t_id_organization'], $data['gr2t_id_track'], $baseUrl); } Modified: trunk/library/classes/Gems/Menu/MenuAbstract.php =================================================================== --- trunk/library/classes/Gems/Menu/MenuAbstract.php 2011-09-13 12:28:48 UTC (rev 10) +++ trunk/library/classes/Gems/Menu/MenuAbstract.php 2011-09-13 14:38:14 UTC (rev 11) @@ -242,12 +242,18 @@ public function addProjectPage($label) { if ($this->escort instanceof Gems_Project_Tracks_SingleTrackInterface) { - $infoPage = $this->addPage($label, 'pr.project', 'project-tracks', 'show') - ->addHiddenParameter(MUtil_Model::REQUEST_ID, $this->escort->getTrackId()); - $trackSurveys = $infoPage->addShowAction('pr.project'); - $trackSurveys->addActionButton($this->_('Preview'), 'pr.project.questions', 'questions') + if ($trackId = $this->escort->getTrackId()) { + $infoPage = $this->addPage($label, 'pr.project', 'project-tracks', 'show') + ->addHiddenParameter(MUtil_Model::REQUEST_ID, $trackId); + $trackSurveys = $infoPage; + } else { + $infoPage = $this->addPage($label, 'pr.project', 'project-tracks'); + $trackSurveys = $infoPage->addShowAction('pr.project'); + } + $trackSurveys->addAction($this->_('Preview'), 'pr.project.questions', 'questions') ->addNamedParameters(MUtil_Model::REQUEST_ID, 'gro_id_track', Gems_Model::SURVEY_ID, 'gsu_id_survey'); + // MUtil_Echo::track($infoPage->_toNavigationArray(array($this->escort->request))); } else { if ($this->escort instanceof Gems_Project_Tracks_StandAloneSurveysInterface) { $infoPage = $this->addContainer($label, 'pr.project'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-13 12:28:54
|
Revision: 10 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=10&view=rev Author: mennodekker Date: 2011-09-13 12:28:48 +0000 (Tue, 13 Sep 2011) Log Message: ----------- fixed #427: Create email template impossible when no tokens defined Modified Paths: -------------- trunk/library/classes/Gems/Email/MailTemplateForm.php Modified: trunk/library/classes/Gems/Email/MailTemplateForm.php =================================================================== --- trunk/library/classes/Gems/Email/MailTemplateForm.php 2011-09-13 09:46:45 UTC (rev 9) +++ trunk/library/classes/Gems/Email/MailTemplateForm.php 2011-09-13 12:28:48 UTC (rev 10) @@ -141,6 +141,10 @@ if (! $tokenData) { // Well then just try to get any token $tokenData = $model->loadFirst(false, $sort); + if (! $tokenData) { + //No tokens, just add an empty array and hope we get no notices later + $tokenData = array(); + } } $this->setTokenData($tokenData); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gem...@li...> - 2011-09-13 09:46:56
|
Revision: 9 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=9&view=rev Author: matijsdejong Date: 2011-09-13 09:46:45 +0000 (Tue, 13 Sep 2011) Log Message: ----------- - Snippets can now be in separate subdirectories. Sub-directory names should be in part of class name e.g.: snippets\EditTrackTokenSnippet.php => EditTrackTokenSnippet snippets\Tracker\EditTrackTokenSnippet.php => Tracker_EditTrackTokenSnippet Modified Paths: -------------- trunk/library/classes/MUtil/Snippets/SnippetLoader.php Modified: trunk/library/classes/MUtil/Snippets/SnippetLoader.php =================================================================== --- trunk/library/classes/MUtil/Snippets/SnippetLoader.php 2011-09-12 12:46:41 UTC (rev 8) +++ trunk/library/classes/MUtil/Snippets/SnippetLoader.php 2011-09-13 09:46:45 UTC (rev 9) @@ -3,7 +3,7 @@ /** * 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 @@ -14,7 +14,7 @@ * * 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 @@ -25,7 +25,7 @@ * 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. - * + * * Short description of file * * @package MUtil @@ -144,18 +144,21 @@ $dirs = $this->getDirectories(); + $classname = $filename; + if (strpos($filename, '_') === false) { + $filename = $filename . '.php'; + } else { + $filename = str_replace('_', '/', $filename) . '.php'; + } + foreach ($dirs as $dir) { $filepath = $dir . '/' . $filename; - - // Add extension when needed - if (substr($filepath, -4) !== '.php') { - $filepath .= '.php'; - } + // MUtil_Echo::r($filepath); if (file_exists($filepath)) { require_once($filepath); - $snippet = new $filename(); + $snippet = new $classname(); if ($snippet instanceof MUtil_Snippets_SnippetInterface) { if ($source->applySource($snippet)) { @@ -165,7 +168,7 @@ } return $snippet; - + } else { throw new Zend_Exception("Not all parameters set for html snippet: '$filepath'. \n\nRequested variables were: " . implode(", ", $snippet->getRegistryRequests())); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <men...@us...> - 2011-09-12 12:46:47
|
Revision: 8 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=8&view=rev Author: mennodekker Date: 2011-09-12 12:46:41 +0000 (Mon, 12 Sep 2011) Log Message: ----------- update for new project Added Paths: ----------- trunk/new_project/htdocs/.htaccess trunk/new_project/var/settings/db.inc.php Added: trunk/new_project/htdocs/.htaccess =================================================================== --- trunk/new_project/htdocs/.htaccess (rev 0) +++ trunk/new_project/htdocs/.htaccess 2011-09-12 12:46:41 UTC (rev 8) @@ -0,0 +1,14 @@ +Options +FollowSymlinks + +php_flag magic_quotes_gpc off + +#SetEnv APPLICATION_ENV development + +RewriteEngine On + +RewriteCond %{REQUEST_FILENAME} -f [OR] +RewriteCond %{REQUEST_FILENAME} -l [OR] +RewriteCond %{REQUEST_FILENAME} -d +RewriteRule ^.*$ - [NC,L] +RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php [NC,L] +#RewriteRule ^.*$ index.php [NC,L] \ No newline at end of file Added: trunk/new_project/var/settings/db.inc.php =================================================================== --- trunk/new_project/var/settings/db.inc.php (rev 0) +++ trunk/new_project/var/settings/db.inc.php 2011-09-12 12:46:41 UTC (rev 8) @@ -0,0 +1,10 @@ +<?php +//------------------------------------------------------------------------------------------------- +// Connect parameters for your project +//------------------------------------------------------------------------------------------------- +define ('HOST', 'localhost'); +define ('USER', 'new_project'); +define ('PASSWD', 'yourpassword'); +define ('DATABASE', 'new_project'); + +?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <men...@us...> - 2011-09-09 13:41:48
|
Revision: 7 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=7&view=rev Author: mennodekker Date: 2011-09-09 13:41:37 +0000 (Fri, 09 Sep 2011) Log Message: ----------- Adding missing info icon for track/survey tooldock Added Paths: ----------- trunk/new_project/htdocs/gems/images/info.png Copied: trunk/new_project/htdocs/gems/images/info.png (from rev 6, trunk/templates/erasmusmc/local/info.png) =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <men...@us...> - 2011-09-09 12:43:25
|
Revision: 6 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=6&view=rev Author: mennodekker Date: 2011-09-09 12:43:19 +0000 (Fri, 09 Sep 2011) Log Message: ----------- Removing the view, had to change the validator too as it is used in change password. This needs to be changed when alternative auth backends are added Modified Paths: -------------- trunk/library/classes/Gems/Validate/GemsPasswordUsername.php Removed Paths: ------------- trunk/library/configs/db/views/ trunk/library/configs/db_multi_layout/views/ Modified: trunk/library/classes/Gems/Validate/GemsPasswordUsername.php =================================================================== --- trunk/library/classes/Gems/Validate/GemsPasswordUsername.php 2011-09-09 12:30:13 UTC (rev 5) +++ trunk/library/classes/Gems/Validate/GemsPasswordUsername.php 2011-09-09 12:43:19 UTC (rev 6) @@ -1,39 +1,39 @@ <?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. + +/** + * Copyright (c) 2011, Erasmus MC + * All rights reserved. * - * @version $Id: GemsPasswordUsername.php 345 2011-07-28 08:39:24Z 175780 $ + * 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. + * + * @version $Id: GemsPasswordUsername.php 345 2011-07-28 08:39:24Z 175780 $ * @package Gems * @subpackage Validate * @copyright Copyright (c) 2011 Erasmus MC * @license New BSD License */ - -/** + +/** * OBSOLETE, we now use Gems_Auth with a Zend_Auth_Adapter_DbTable * * @deprecated @@ -66,7 +66,7 @@ protected $_passwordField; protected $_usernameField; - + /** * Exponent to use when calculating delay * @var int @@ -86,11 +86,11 @@ */ public function __construct($usernameField, $passwordField, Zend_Db_Adapter_Abstract $adapter = null, $delayFactor = null) { - parent::__construct('gems__login_info', 'user_login', null, $adapter); + parent::__construct('gems__staff', 'gsf_login', null, $adapter); $this->_usernameField = $usernameField; $this->_passwordField = $passwordField; - + if (isset($delayFactor)) { $this->_delayFactor = $delayFactor; } @@ -136,8 +136,8 @@ throw new Zend_Validate_Exception('No database adapter present'); } } - - $condition = $this->_adapter->quoteIdentifier('user_password') . ' = ?'; + + $condition = $this->_adapter->quoteIdentifier('gsf_password') . ' = ?'; $this->_exclude = $this->_adapter->quoteInto($condition, md5($password)); try { @@ -145,24 +145,24 @@ * Lookup last failed login and number of failed logins */ try { - $sql = "SELECT user_failed_logins, UNIX_TIMESTAMP(user_last_failed) - AS user_last_failed FROM {$this->_table} WHERE user_login = ?"; + $sql = "SELECT gsf_failed_logins, UNIX_TIMESTAMP(gsf_last_failed) + AS gsf_last_failed FROM {$this->_table} WHERE gsf_login = ?"; $results = $this->_adapter->fetchRow($sql, array($username)); } catch (Zend_Db_Exception $zde) { //If we need to apply a db patch, just use a default value $results = 0; MUtil_Echo::r(GemsEscort::getInstance()->translate->_('Please update the database')); } - - $delay = pow($results['user_failed_logins'], $this->_delayFactor); - $remaining = ($results['user_last_failed'] + $delay) - time(); - - if ($results['user_failed_logins'] > 0 && $remaining > 0) { + + $delay = pow($results['gsf_failed_logins'], $this->_delayFactor); + $remaining = ($results['gsf_last_failed'] + $delay) - time(); + + if ($results['gsf_failed_logins'] > 0 && $remaining > 0) { $this->_obscureValue = false; $this->_error(self::ERROR_PASSWORD_DELAY, ceil($remaining / 60)); return false; } - + if ($this->_query($username)) { return true; } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |