Beispiel #1
0
 static function store($truncate = TRUE)
 {
     // first clean up the db
     if ($truncate) {
         $query = 'TRUNCATE civicrm_menu';
         CRM_Core_DAO::executeQuery($query);
     }
     $menuArray = self::items();
     self::build($menuArray);
     $config = CRM_Core_Config::singleton();
     foreach ($menuArray as $path => $item) {
         $menu = new CRM_Core_DAO_Menu();
         $menu->path = $path;
         $menu->domain_id = CRM_Core_Config::domainID();
         $menu->find(TRUE);
         $menu->copyValues($item);
         foreach (self::$_serializedElements as $element) {
             if (!isset($item[$element]) || $item[$element] == 'null') {
                 $menu->{$element} = NULL;
             } else {
                 $menu->{$element} = serialize($item[$element]);
             }
         }
         $menu->save();
     }
 }