public function createDummyContents($option_value, $design, $category) { $dummy_content_xml = $this->_getDummyXml($design, $category); foreach ($dummy_content_xml->folders->folder as $folder) { $root_category = new Folder_Model_Category(); $root_category->addData((array) $folder->category->main->content)->save(); if ($folder->category->main->features) { $i = 1; foreach ($folder->category->main->features->feature as $feature) { $option = new Application_Model_Option(); $option->find((string) $feature->code, "code")->getObject(); $option_value_obj = new Application_Model_Option_Value(); $icon_id = NULL; if ((string) $feature->icon) { $icon = new Media_Model_Library_Image(); $icon->find((string) $feature->icon, "link"); if (!$icon->getData()) { $icon->setLibraryId($option->getLibraryId())->setLink((string) $feature->icon)->setOptionId($option->getId())->setCanBeColorized($feature->colorizable ? (string) $feature->colorizable : 1)->setPosition(0)->save(); } $icon_id = $icon->getId(); } $datas = array("tabbar_name" => (string) $feature->name ? (string) $feature->name : NULL, "icon_id" => $icon_id, "app_id" => $this->getApplication()->getId(), "option_id" => $option->getId(), "layout_id" => $this->getApplication()->getLayout()->getId(), "folder_id" => $option_value->getId(), "folder_category_id" => $root_category->getId(), "folder_category_position" => $i++); $option_value_obj->addData($datas)->save(); } } $this->unsData(); $this->setValueId($option_value->getId())->setRootCategoryId($root_category->getId())->save(); foreach ($folder->category->subcategory as $subcategory) { $sub_root_category = new Folder_Model_Category(); $sub_root_category->addData((array) $subcategory->content)->setParentId($root_category->getId())->save(); if ($folder->category->subcategory->features) { $i = 1; foreach ($folder->category->subcategory->features->children() as $feature) { $option = new Application_Model_Option(); $option->find((string) $feature->code, "code")->getObject(); $option_value_obj = new Application_Model_Option_Value(); $icon_id = NULL; if ((string) $feature->icon) { $icon = new Media_Model_Library_Image(); $icon->find((string) $feature->icon, "link"); if (!$icon->getData()) { $icon->setLibraryId($option->getLibraryId())->setLink((string) $feature->icon)->setOptionId($option->getId())->setCanBeColorized(1)->setPosition(0)->save(); } $icon_id = $icon->getId(); } $datas = array("tabbar_name" => (string) $feature->name ? (string) $feature->name : NULL, "icon_id" => $icon_id, "app_id" => $this->getApplication()->getId(), "option_id" => $option->getId(), "layout_id" => $this->getApplication()->getLayout()->getId(), "folder_id" => $option_value->getId(), "folder_category_id" => $sub_root_category->getId(), "folder_category_position" => $i++); $option_value_obj->addData($datas)->save(); } } } } }
public function uploadiconAction() { if ($datas = $this->getRequest()->getPost()) { try { $uploader = new Core_Model_Lib_Uploader(); $file = $uploader->savecrop($datas); if (!empty($file)) { $option_value = new Application_Model_Option_Value(); $option_value->find($datas['option_id']); $lib = new Media_Model_Library(); $lib->find($option_value->getLibraryId()); $library_name = $lib->getName(); $formated_library_name = Core_Model_Lib_String::format($library_name, true); $base_lib_path = Media_Model_Library_Image::getBaseImagePathTo($formated_library_name); $files = Core_Model_Directory::getTmpDirectory(true) . '/' . $file; $CanBeColorized = $datas['is_colorized'] == 'true' ? 1 : 0; if (!is_dir($base_lib_path)) { mkdir($base_lib_path, 0777, true); } if (!copy($files, $base_lib_path . '/' . $file)) { throw new exception($this->_('An error occurred while saving your picture. Please try againg later.')); } else { $icon_lib = new Media_Model_Library_Image(); $icon_lib->setLibraryId($option_value->getLibraryId())->setLink('/' . $formated_library_name . '/' . $file)->setOptionId($option_value->getOptionId())->setAdminId($this->getSession()->getAdmin()->getId())->setCanBeColorized($CanBeColorized)->setPosition(0)->save(); $option_value->setIcon('/' . $formated_library_name . '/' . $file)->setIconId($icon_lib->getImageId())->save(); $icon_saved = $this->setIcon($icon_lib->getImageId(), $datas['option_id']); // Charge l'option_value $option_value = new Application_Model_Option_Value(); $option_value->find($datas['option_id']); $icon_color = $this->getApplication()->getDesignBlock('tabbar')->getImageColor(); $html = array('success' => 1, 'file' => '/' . $formated_library_name . '/' . $file, 'icon_id' => $icon_lib->getImageId(), 'colorizable' => $CanBeColorized, 'icon_url' => Media_Model_Library_Image::getImagePathTo($formated_library_name . '/' . $file), 'colored_icon_url' => $this->getUrl('template/block/colorize', array('id' => $option_value->getIconId(), 'color' => str_replace('#', '', $icon_color))), 'colored_header_icon_url' => $icon_saved['colored_header_icon_url'], 'message' => '', 'message_button' => 1, 'message_loader' => 1); } } } catch (Exception $e) { $html = array('message' => $e->getMessage(), 'message_button' => 1, 'message_loader' => 1); } $this->getLayout()->setHtml(Zend_Json::encode($html)); } }
foreach ($categories_designs as $category_code => $design_codes) { $categories_designs_data = array("category_id" => $category_ids[$category_code]); foreach ($design_codes as $design_code) { $categories_designs_data["design_id"] = $design_ids[$design_code]; $this->_db->insert("template_design_category", $categories_designs_data); } } // Assigning features to designs $design_codes = array("dj" => array("newswall" => array("icon" => "/newswall/newswall2.png"), "music_gallery" => array("name" => "Playlists"), "push_notification" => array("name" => "Messages", "icon" => "/push_notifications/push2.png"), "image_gallery" => array("icon" => "/images/image5.png"), "facebook" => array(), "calendar" => array("icon" => "/calendar/calendar2.png"), "video_gallery" => array("icon" => "/videos/video2.png"), "custom_page" => array("name" => "About me"), "booking" => array("icon" => "/booking/booking4.png")), "fairground" => array("fanwall" => array("icon" => "/../../images/templates/fairground/icons/fanwall.png"), "loyalty" => array("name" => "Loyalty", "icon" => "/loyalty/loyalty4.png"), "social_gaming" => array("icon" => "/contest/contest4.png"), "discount" => array("name" => "Coupons", "icon" => "/discount/discount5.png"), "calendar" => array("icon" => "/calendar/calendar2.png"), "image_gallery" => array("icon" => "/images/image7.png"), "push_notification" => array("name" => "Push", "icon" => "/push_notifications/push3.png"), "video_gallery" => array(), "newswall" => array("name" => "News"), "facebook" => array()), "pizza" => array("m_commerce" => array("name" => "Orders"), "loyalty" => array("name" => "Loyalty"), "social_gaming" => array(), "discount" => array(), "facebook" => array(), "contact" => array())); foreach ($design_codes as $design_code => $option_codes) { foreach ($option_codes as $option_code => $option_infos) { $design = new Template_Model_Design(); $design->find($design_code, "code"); $option = new Application_Model_Option(); $options = $option->findAll(array("code IN (?)" => $option_code)); foreach ($options as $option) { $icon_id = NULL; if (isset($option_infos["icon"])) { $icon = new Media_Model_Library_Image(); $icon->find($option_infos["icon"], "link"); if (!$icon->getData()) { $icon->setLibraryId($option->getLibraryId())->setLink($option_infos["icon"])->setOptionId($option->getId())->setCanBeColorized(1)->setPosition(0)->save(); } $icon_id = $icon->getId(); } $data = array("design_id" => $design->getId(), "option_id" => $option->getId(), "option_tabbar_name" => isset($option_infos["name"]) ? $option_infos["name"] : NULL, "option_icon" => $icon_id, "option_background_image" => isset($option_infos["background_image"]) ? $option_infos["background_image"] : NULL); $design_content = new Template_Model_Design_Content(); $design_content->setData($data)->save(); } } }
public function savesliderimagesAction() { if ($datas = $this->getRequest()->getPost()) { try { $url = ""; $image_id = null; $application = $this->getApplication(); $relative_path = '/' . $application->getId() . '/slider_images/'; $folder = Application_Model_Application::getBaseImagePath() . $relative_path; $datas['dest_folder'] = $folder; $uploader = new Core_Model_Lib_Uploader(); if ($file = $uploader->savecrop($datas)) { $url = Application_Model_Application::getImagePath() . $relative_path . $file; $library = new Media_Model_Library(); $library->find($application->getHomepageSliderLibraryId()); if (!$library->getId()) { $library->setName('homepage_slider_' . $application->getId())->save(); $application->setHomepageSliderLibraryId($library->getId())->save(); } $image = new Media_Model_Library_Image(); $image->setLibraryId($library->getId())->setLink($url)->setAppId($application->getId())->save(); $image_id = $image->getId(); } $datas = array('success' => 1, 'file' => array("id" => $image_id, "url" => $url)); } catch (Exception $e) { $datas = array('error' => 1, 'message' => $e->getMessage()); } $this->getLayout()->setHtml(Zend_Json::encode($datas)); } }