Pman.Dialog.CmsBlog.bjs
[Pman.Cms] / UpdateTemplates.php
index 8ec0c5e..a40752f 100644 (file)
@@ -56,7 +56,7 @@ class Pman_Cms_UpdateTemplates extends Pman
         return true;
     }
      
-    function get($tbl, $opts)
+    function get($tbl, $opts=array())
     {
         PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($this, 'onPearError'));
         
@@ -149,11 +149,13 @@ class Pman_Cms_UpdateTemplates extends Pman
                 continue;
             }
             
+            
             $pages[$i]['template_object'] = $tp->syncTemplatePage($pg);
+           // print_r($pages[$i]['template_object'] );exit;
+            
         }
         
-        //print_R($pages); exit;
-        $pgo = DB_DataObject::factory('cms_page');
+         $pgo = DB_DataObject::factory('cms_page');
         foreach($pages as $i=>$pg) {
             
             if (!empty($this->opts['template']) && $this->opts['template'] != ($pg['template_dir'] . '/'. $pg['template'])) {
@@ -199,11 +201,27 @@ class Pman_Cms_UpdateTemplates extends Pman
         }
         $ff = HTML_FlexyFramework::get();
         $opt_lang = empty($ff->Pman_Core_I18n) ? array( 'l' => array()) : $ff->Pman_Core_I18n;
+        
+        $langs = $opt_lang['l'] ;
+        // see what languages are in there already!?
+        $cl = DB_DataObject::factory('cms_templatestr');
+        $cl->selectAdd();
+        $cl->selectAdd('distinct(lang) as lang');
+        $cl->whereAdd("lang != ''");
+        $dblangs = $cl->fetchAll('lang');
+        foreach($langs as $l) {
+            if (!in_array($$l, $dblangs)) {
+                $dblangs[] = $l;
+            }
+        }
+         
+        
+        
         // templates.. -- assume the above does the template syncing..
         //DB_DataObject::DebugLevel(1);
         echo "Sync the Languages template.....\n";
         
-        foreach($opt_lang['l'] as $l) {
+        foreach($dblangs as $l) {
             echo "Sync $l Language.....\n";
             $tps = DB_DataObject::factory('cms_templatestr');
             $tps->syncLang($l); /// this should be configured somewhere..