Example #1
0
 /**
  * Vytvari "or Cancel" odkaz za tlacitkem
  *
  * @return string
  */
 public function buildCancelLink()
 {
     $cancel = $this->getOption('cancel');
     if (!is_null($cancel)) {
         $request = Zend_Controller_Front::getInstance()->getRequest();
         $projekt = $request->getParam('projekt');
         if (!is_null($projekt)) {
             $projekt = '/' . $projekt;
         }
         return ' ' . $this->_translator->translate('or') . ' <a href="' . $projekt . '/' . $cancel . '" class="cancel">' . $this->_translator->translate('Cancel') . '</a>';
     }
 }
Example #2
0
 private function _translate($text)
 {
     if ($this->_options['translate'] === true && null !== $this->_translate) {
         return $this->_translate->translate($text);
     }
     return $text;
 }
Example #3
0
 /**
  * Retturn translation string
  * example $l->translate('Field %1 is incorrect', 'FieldName');
  *
  * @param string $msg Message to transalte.
  */
 public function translate($msg)
 {
     $translated = $msg;
     if ($this->translate->isTranslated($msg, true, $this->locale)) {
         $translated = $this->translate->translate($msg);
     } else {
         foreach ($this->translationsPaths as $name => $value) {
             if (!$this->translate->isAvailable($name)) {
                 try {
                     $this->translate->addTranslation($this->translationsPaths[$name], $name);
                     $this->translate->setLocale($this->getLocale());
                 } catch (Zend_Translate_Exception $e) {
                     continue;
                 }
             }
             if ($this->translate->isTranslated($msg, $name)) {
                 $translated = $this->translate->translate($msg, $name);
                 break;
             }
         }
     }
     if (func_num_args() > 1) {
         $params = func_get_args();
         $params[0] = $translated;
         $translated = @call_user_func_array("sprintf", $params);
         //add shield for incorrect translations(warning about incorrect number of arguments)
     }
     return $translated;
 }
Example #4
0
 private function getMessage($message)
 {
     if ($this->translator) {
         return $this->translator->translate($message);
     } else {
         return $message;
     }
 }
 public function testTranslationOfNoteVisibilityValues()
 {
     $model = new Opus_Note();
     $values = $model->getField('Visibility')->getDefault();
     foreach ($values as $value) {
         $key = $this->helper->getKeyForValue('Opus_Note', 'Visibility', $value);
         $this->assertNotEquals($key, $this->translate->translate($key), 'Translation key \'' . $key . '\' is missing.');
     }
 }
Example #6
0
 public static function getValues(Zend_Translate $lang)
 {
     $vars = Unsee_Hash::$ttlTypes;
     $values = array();
     foreach ($vars as $item) {
         $elLangString = 'settings_delete_ttl_' . $item;
         if ($lang->isTranslated($elLangString)) {
             $values[$item] = $lang->translate($elLangString);
         }
     }
     return $values;
 }
 public function testTranslate()
 {
     $lang = new Zend_Translate(Zend_Translate::AN_ARRAY, array('msg1' => 'Message 1 (en)'), 'en');
     $lang->addTranslation('ru', array('msg1' => 'Message 1 (ru)'));
     $this->assertEquals($lang->_('msg1'), 'Message 1 (en)');
     $this->assertEquals($lang->_('msg1', 'ru'), 'Message 1 (ru)');
     $this->assertEquals($lang->_('msg2'), 'msg2');
     $this->assertEquals($lang->_('msg2', 'ru'), 'msg2');
     $this->assertEquals($lang->translate('msg1'), 'Message 1 (en)');
     $this->assertEquals($lang->translate('msg1', 'ru'), 'Message 1 (ru)');
     $this->assertEquals($lang->translate('msg2'), 'msg2');
     $this->assertEquals($lang->translate('msg2', 'ru'), 'msg2');
 }
 /**
  * @group ZF-2736
  */
 public function testDoubleReroutingForTranslations()
 {
     $translate = new Zend_Translate(array('adapter' => Zend_Translate::AN_ARRAY, 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/testarray/', 'locale' => 'auto', 'scan' => Zend_Translate::LOCALE_FILENAME, 'ignore' => array('.', 'ignoreme', 'LC_TEST'), 'route' => array('ja' => 'en_US', 'en_US' => 'ja')));
     $translate2 = new Zend_Translate(array('adapter' => Zend_Translate::AN_CSV, 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/translation_en.csv', 'locale' => 'en_US'));
     $translate->addTranslation($translate2);
     $langs = $translate->getList();
     $this->assertFalse(array_key_exists('de_DE', $langs));
     $this->assertTrue(array_key_exists('ja', $langs));
     $this->assertTrue(array_key_exists('en_US', $langs));
     $this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
     $this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
 }
 public function testWithOption()
 {
     $lang = new Zend_Translate(Zend_Translate::AN_CSV, dirname(__FILE__) . '/Translate/_files/translation_en2.csv', 'en', array('separator' => ','));
     $this->assertEquals('Message 1 (en)', $lang->translate('Message 1'));
     $this->assertEquals('Message 4 (en)', $lang->translate('Message 4,'));
     $this->assertEquals('Message 5, (en)', $lang->translate('Message 5'));
 }
Example #10
0
 /**
  * Returns HTML for the specified button type.
  *
  * @param int   $type    the button type
  * @param array $options button options
  *
  * @return string
  */
 private function _getButton($type, $options = array())
 {
     if ($type == self::SEPARATOR) {
         return '<a class="button separator"></a>';
     } else {
         if (array_key_exists($type, $this->_defaultButtons)) {
             $options = array_merge($this->_defaultButtons[$type], $options);
         } else {
             if (empty($options)) {
                 throw new OntoWiki_Exception("Missing options for button '{$type}'.");
             }
             if (!array_key_exists('name', $options)) {
                 $options['name'] = $type;
             }
         }
     }
     // translate name
     if (array_key_exists('name', $options)) {
         if ($this->_translate instanceof Zend_Translate) {
             $label = $this->_translate->translate($options['name']);
         } else {
             $label = $options['name'];
         }
     } else {
         $label = null;
     }
     // set class
     if (array_key_exists('+class', $options)) {
         $addedClasses = $options['+class'];
     }
     // set class
     if (array_key_exists('class', $options)) {
         $class = $options['class'];
         if (isset($addedClasses)) {
             $class = $class . ' ' . $addedClasses;
         }
     } else {
         if (isset($addedClasses)) {
             $class = $addedClasses;
         } else {
             $class = null;
         }
     }
     // set id
     if (array_key_exists('id', $options)) {
         $id = 'id="' . $options['id'] . '"';
     } else {
         $id = null;
     }
     if (array_key_exists('url', $options)) {
         $href = 'href="' . $options['url'] . '"';
     } else {
         $href = null;
     }
     if (array_key_exists('title', $options)) {
         $title = 'title="' . $options['title'] . '"';
     } else {
         $title = null;
     }
     // set image
     if (array_key_exists('image_url', $options)) {
         $image = $options['image_url'];
     } else {
         if (array_key_exists('image', $options)) {
             $image = $this->_themeUrlBase . 'images/icon-' . $options['image'] . '.png';
         } else {
             $image = null;
         }
     }
     // construct button link
     $button = sprintf('<a class="button %s" %s %s %s><img src="%s"/><span>&nbsp;%s</span></a>', $class, $id, $href, $title, $image, $label);
     return $button;
 }
Example #11
0
global $errors, $locale, $languages;
// autoloader for zend classes
require_once 'Zend/Loader/Autoloader.php';
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace('Zend');
// prepare language object
if (isset($_POST['language'])) {
    $currentLang = $_POST['language'];
} else {
    $currentLang = 'en';
}
$locale = new Zend_Translate('csv', 'application/locale', 'en', array('scan' => Zend_Translate::LOCALE_DIRECTORY, 'delimiter' => "|"));
// get languages
$languages = array();
foreach ($locale->getList() as $lang) {
    $languages[$lang] = $locale->translate($lang);
}
// set language
try {
    $languageLocale = new Zend_Locale(Zend_Locale::BROWSER);
    if (in_array($languageLocale->getLanguage(), $locale->getList())) {
        $currentLang = $languageLocale->getLanguage();
        $locale->setLocale($languageLocale);
    }
} catch (Exception $e) {
    $currentLang = 'en';
    $locale->setLocale(new Zend_Locale('en'));
}
// get config
$configDist = new Zend_Config_Ini(CONFIG_DIST_PATH);
//
Example #12
0
 /**
  * Translates the given string.
  * @param  string   message
  * @param  int      plural count
  * @return string
  */
 public function translate($message, $count = NULL)
 {
     return parent::translate($message);
 }
 private static function timeDiff($dateFirst, $dateLast, $limitReturnChunks = 1, Zend_Translate $translator = null, $lang = 'en', $units = self::DEFAULT_UNITS, $precision = 0.25)
 {
     $timeFirst = strtotime($dateFirst);
     $timeLast = strtotime($dateLast);
     $diff = abs($timeLast - $timeFirst);
     $rest = $diff;
     $restChunks = $limitReturnChunks;
     if (strpos($units, 'y') !== false) {
         $years = floor($rest / self::YEAR);
         if ($restChunks <= 1 && ($rest - $years * self::YEAR) / $diff > $precision) {
             $years = 0;
         } else {
             $restChunks--;
         }
         $rest = $rest - $years * self::YEAR;
     } else {
         $years = 0;
     }
     if (strpos($units, 'm') !== false) {
         $months = floor($rest / self::MONTH);
         if ($restChunks <= 1 && ($rest - $months * self::MONTH) / $diff > $precision) {
             $months = 0;
         } else {
             $restChunks--;
         }
         $rest = $rest - $months * self::MONTH;
     } else {
         $months = 0;
     }
     if (strpos($units, 'w') !== false) {
         $weeks = floor($rest / self::WEEK);
         if ($restChunks <= 1 && ($rest - $weeks * self::WEEK) / $diff > $precision) {
             $weeks = 0;
         } else {
             $restChunks--;
         }
         $rest = $rest - $weeks * self::WEEK;
     } else {
         $weeks = 0;
     }
     if (strpos($units, 'd') !== false) {
         $days = floor($rest / self::DAY);
         if ($restChunks <= 1 && ($rest - $days * self::DAY) / $diff > $precision) {
             $days = 0;
         } else {
             $restChunks--;
         }
         $rest = $rest - $days * self::DAY;
     } else {
         $days = 0;
     }
     if (strpos($units, 'h') !== false) {
         $hours = floor($rest / self::HOUR);
         if ($restChunks <= 1 && ($rest - $hours * self::HOUR) / $diff > $precision) {
             $hours = 0;
         } else {
             $restChunks--;
         }
         $rest = $rest - $hours * self::HOUR;
     } else {
         $hours = 0;
     }
     if (strpos($units, 'i') !== false) {
         $mins = floor($rest / self::MIN);
         if ($restChunks <= 1 && ($rest - $mins * self::MIN) / $diff > $precision) {
             $mins = 0;
         } else {
             $restChunks--;
         }
         $rest = $rest - $mins * self::MIN;
     } else {
         $mins = 0;
     }
     if (strpos($units, 's') !== false) {
         $seconds = $rest;
     } else {
         $seconds = 0;
     }
     $chunks = array('year(s)' => $years, 'month(s)' => $months, 'week(s)' => $weeks, 'day(s)' => $days, 'hour(s)' => $hours, 'min(s)' => $mins, 'second(s)' => $seconds);
     $outputStr = '';
     $i = 0;
     foreach ($chunks as $chunkName => $value) {
         if ($value) {
             if ($translator) {
                 $chunkName = $translator->translate($chunkName);
             }
             $translatedChunkNames = explode(" ", $chunkName);
             $translatedChunkName = Lms_Text::declension($value, $translatedChunkNames, $lang);
             $outputStr .= " {$value} {$translatedChunkName}";
             $i++;
             if ($i >= $limitReturnChunks) {
                 break;
             }
         }
     }
     $outputStr = trim($outputStr);
     return $outputStr;
 }
Example #14
0
 /**
  * Retorna uma breve descrição de funcionamento da ação.
  * @return Descrição de funcionamento ou objetivo
  */
 public function getDesc()
 {
     return $this->i18n->translate("Dial to a Trunk");
 }
Example #15
0
 /**
  * return navigation bar
  * @return string html                class="PageNavigation" 
  */
 public function getNavigation()
 {
     $navigation = '<div style="text-align:' . $this->_align . '">';
     $pageCote = ceil($this->_currentPage / ($this->_navigationItemCount - 1)) - 1;
     //the location cote of current page in the navigation当前页处于第几栏分页
     $pageCoteCount = ceil($this->_pageCount / ($this->_navigationItemCount - 1));
     //the total page cote
     $pageStart = $pageCote * ($this->_navigationItemCount - 1) + 1;
     //the start page in cote
     $pageEnd = $pageStart + $this->_navigationItemCount - 1;
     //the end page in cote
     if ($this->_pageCount < $pageEnd) {
         $pageEnd = $this->_pageCount;
         //the total number of page
     }
     //                $navigation .= "(In all)总共:{$this->_pageCount}(Page)页\n";
     //config Zend_Translate for Pagination.php
     $config = new Zend_Config_Ini("../application/config.ini", "dev");
     $langNamespace = new Zend_Session_Namespace('Lang');
     $translate = new Zend_Translate('tmx', strval($config->framework->language->dir), $langNamespace->lang);
     $navigation .= $translate->translate("His_Page") . ":";
     if ($pageCote > 0) {
         $navigation .= '<a href="' . $this->createHref(1) . "\">{$this->_firstPageString}</a> ";
     }
     if ($this->_currentPage != 1) {
         $navigation .= '<a href="' . $this->createHref($this->_currentPage - 1);
         $navigation .= "\">{$this->_previousPageString}</a> ";
     }
     if ($this->_currentPage == 1) {
         $navigation .= '<a href="' . $this->createHref($this->_currentPage);
         $navigation .= "\">{$this->_previousPageString}</a> ";
     }
     while ($pageStart <= $pageEnd) {
         if ($pageStart == $this->_currentPage) {
             $navigation .= "<strong>{$pageStart}</strong>" . $this->_splitString;
         } else {
             $navigation .= '<a href="' . $this->createHref($pageStart) . "\">{$pageStart}</a>" . $this->_splitString;
         }
         $pageStart++;
     }
     if ($this->_currentPage != $this->_pageCount) {
         $navigation .= ' <a href="' . $this->createHref($this->_currentPage + 1) . "\">{$this->_nextPageString}</a> ";
     }
     if ($this->_currentPage == $this->_pageCount) {
         $navigation .= ' <a href="' . $this->createHref($this->_currentPage) . "\">{$this->_nextPageString}</a> ";
     }
     if ($pageCote < $pageCoteCount - 1) {
         $navigation .= '<a href="' . $this->createHref($this->_pageCount) . "\">{$this->_lastPageString}</a> ";
     }
     //add 'direct navigation select'
     //$navigation .= '<input type="text" size="3" onkeydown="if(event.keyCode==13){window.location=\' ';
     //$navigation .= $this->createHref().'\'+this.value;return false;}" />';
     //Bug fix(2008.8.27): there is an error when we input the wrong page number  ------begin
     //        $navigation .= '  <select onchange="window.location=\' '.$this->createHref().'\'+this.options[this.selectedIndex].value;">';
     //        for ($i=1;$i<=$this->_pageCount;$i++){
     //                if ($this->getCurrentPage()==$i){
     //                        $selected = "selected";
     //                }
     //                else {
     //                        $selected = "";
     //                }
     //                $navigation .= '<option value='.$i.' '.$selected.'>'.$i.'</option>';
     //        }
     //        $navigation .= '</select>';
     //Bug fix(2008.8.27): there is an error when we input the wrong page number  ------end
     $navigation .= "</div>";
     return $navigation;
 }
Example #16
0
 /**
  * Provides a shortcut to Zend_Translate from within templates.
  *
  * Also tries to cast to string.
  *
  * @param string $key the key for the translation table
  */
 public function _($key)
 {
     return $this->_translate->translate((string) $key);
 }
Example #17
0
 /**
  * Tests getting plurals from lowered locale
  */
 public function testGettingPluralsUsingOwnRule()
 {
     $lang = new Zend_Translate(Zend_Translate::AN_ARRAY, array('singular' => array('plural_0 (en)', 'plural_1 (en)', 'plural_2 (en)', 'plural_3 (en)'), 'plural' => ''), 'en');
     $lang->addTranslation(array('msg1' => 'Message 1 (ru)'), 'en_US');
     $lang->setLocale('en_US');
     Zend_Translate_Plural::setPlural(array($this, 'customPlural'), 'en_US');
     $this->assertEquals('plural_1 (en)', $lang->translate(array('singular', 'plural', 1)));
     $this->assertEquals('plural_1 (en)', $lang->plural('singular', 'plural', 1));
     $this->assertEquals('plural_1 (en)', $lang->translate(array('singular', 'plural', 0)));
     $this->assertEquals('plural_1 (en)', $lang->plural('singular', 'plural', 0));
 }
 public function deleteAction()
 {
     $this->_setParam("action", ACTION_DELETE);
     $session = SessionWrapper::getInstance();
     $this->_helper->layout->disableLayout();
     $this->_helper->viewRenderer->setNoRender(TRUE);
     $formvalues = $this->_getAllParams();
     // debugMessage($formvalues); // exit;
     $successurl = decode($formvalues[URL_SUCCESS]);
     if (!isArrayKeyAnEmptyString(SUCCESS_MESSAGE, $formvalues)) {
         $successmessage = decode($formvalues[SUCCESS_MESSAGE]);
     }
     $classname = $formvalues['entityname'];
     $altclassname = '';
     if (!isArrayKeyAnEmptyString('altdeleteentity', $formvalues)) {
         $altclassname = $formvalues['altdeleteentity'];
     }
     // debugMessage($successurl);
     $obj = new $classname();
     $id = is_numeric($formvalues['id']) ? $formvalues['id'] : decode($formvalues['id']);
     // debugMessage($id);
     $obj->populate($id);
     // debugMessage($obj->toArray());
     $beforedelete = $obj->toArray(true);
     // debugMessage($beforedelete);
     $prejson = json_encode($beforedelete);
     // debugMessage($postjson);
     /* debugMessage($obj->toArray());
      	 exit(); */
     # prepare to notify depending on the action
     switch ($classname) {
         case 'UserAccount':
             $module = '1';
             $usecase = '1.5';
             $type = USER_DELETE;
             $deletedetails = 'User Profile <b>' . $obj->getName() . '</b> successfully deleted';
             break;
         case 'LookupTypeValue':
             $module = '0';
             $usecase = '0.3';
             $type = SYSTEM_DELETEVARIABLE;
             $var_type = 'Variable';
             if ($classname == 'LookupTypeValue') {
                 $var_type = 'Variable ';
                 $deletedetails = 'Variable - <b>' . $obj->getlookupvaluedescription() . ' </b>(' . $obj->getLookupType()->getdisplayname() . ') successfully deleted';
             }
             break;
         case 'AclGroup':
             $module = '0';
             $usecase = '0.6';
             $type = SYSTEM_DELETEROLE;
             $deletedetails = 'Role <b>' . $obj->getName() . '</b> successfully deleted';
             break;
         default:
             break;
     }
     $browser = new Browser();
     $audit_values = $session->getVar('browseraudit');
     $audit_values['module'] = $module;
     $audit_values['usecase'] = $usecase;
     $audit_values['transactiontype'] = $type;
     $audit_values['status'] = "Y";
     $audit_values['userid'] = $session->getVar('userid');
     $audit_values['transactiondetails'] = $deletedetails;
     $audit_values['prejson'] = $prejson;
     // debugMessage($audit_values);
     // exit();
     if ($obj->delete()) {
         if (!isArrayKeyAnEmptyString('altdeleteid', $formvalues)) {
             $altobj = new $altclassname();
             $altobj->populate($formvalues['altdeleteid']);
             if (!isEmptyString($altobj->getID())) {
                 $altobj->delete();
             }
         }
         $session->setVar(SUCCESS_MESSAGE, $this->_translate->translate("global_delete_success"));
         $successmessage = $this->_getParam(SUCCESS_MESSAGE);
         if (!isEmptyString($successmessage)) {
             $session->setVar(SUCCESS_MESSAGE, $successmessage);
         }
         $this->notify(new sfEvent($this, $type, $audit_values));
     }
     $this->_helper->redirector->gotoUrl($successurl);
 }