Ejemplo n.º 1
0
 function loadTemplateFromKey($templateKey, $appID, $languageID)
 {
     if ($this->manager->loadByKey($templateKey)) {
         $labelKey = $this->manager->getLabelKey();
         //$this->setAppID($appID);
         $labelManager = new RowManager_MultilingualLabelManager();
         $labelManager->loadByKeyInfo("", $labelKey, $languageID);
         return $labelManager->getLabel();
     }
 }
 /**
  * function getLabelManager
  * <pre>
  * returns a label manager object
  * </pre>
  * <pre><code>
  * if language ID is not provided, then use class default.
  * if desired [KEY] exists then
  *     if desired [LANGUAGEID] exists 
  *         return label
  *     else
  *         return label in 1st avaialble language
  *     end if
  * else
  *     return key
  * end if
  * </code></pre>
  * @param $key [STRING] The Key of the label we should return
  * @param $languageID [INTEGER] The Language ID of the label to return
  * @return [OBJECT] RowManager_MultilingualLabelManager
  */
 function getLabelManager($key, $languageID = '')
 {
     $labelManager = new RowManager_MultilingualLabelManager();
     // if language ID is not provided, then use class default.
     if ($languageID == '') {
         $languageID = $this->languageID;
     }
     // if desired [KEY] exists then
     if (array_key_exists($key, $this->labels)) {
         // if desired [LANGUAGEID] exists
         if (array_key_exists($languageID, $this->labels[$key])) {
             // return label in requested Language ID
             $pageID = $this->pageManager->getID();
             $successful = $labelManager->loadByKeyInfo($pageID, $key, $languageID);
             // echo 'successful['.$successful.']<br/>';
             // echo 'lableManager<pre>'.print_r($labelManager,true).'</pre>';
         } else {
             // else
             // return label in 1st avaialble language
             $labelData = $this->labels[$key];
             $languagesIDAvailable = array_keys($labelData);
             $languageID = $languagesIDAvailable[0];
             $pageID = $this->pageManager->getID();
             $labelManager->loadByKeyInfo($pageID, $key, $languageID);
         }
         // end if
     } else {
         // Make sure the pageID is set
         $labelManager->setPageID($this->pageManager->getID());
     }
     // end if
     $labelManager->setLanguageID($languageID);
     return $labelManager;
 }
Ejemplo n.º 3
0
 /**
  * function deleteEntry
  * <pre>
  * Updates the DB table info.
  * </pre>
  * @return [void]
  */
 function deleteEntry()
 {
     parent::deleteEntry();
     // now make sure that other language versions linked to this entry
     // are also removed ...
     // make a new labelManager since current one had had it's fields limited
     // and we need to have the id fields for the load operation ...
     $labelManager = new RowManager_MultilingualLabelManager();
     $key = $this->labelManager->getKey();
     $pageID = $this->labelManager->getPageID();
     while ($labelManager->loadByKeyInfo($pageID, $key)) {
         $labelManager->deleteEntry();
     }
 }