public function __construct()
 {
     $this->bootstrap = true;
     $this->display = 'view';
     $this->meta_title = $this->l('Billion Themler');
     $this->_php_version = phpversion();
     $this->_required_php_version = '5.3.0';
     $this->_baseUrl = Designer::getBaseUrlWithLastSlash();
     $this->_serverUrl = Tools::getCurrentUrlProtocolPrefix() . $_SERVER['HTTP_HOST'];
     $this->_adminUrl = $this->_baseUrl . basename(_PS_ADMIN_DIR_) . '/index.php';
     $this->_templateHelper = new TemplateHelper();
     $this->_formRendererHelper = new FormRendererHelper();
     parent::__construct();
 }
function uploadFile($themeName, $filename, $tmp_path)
{
    $themeDir = FilesHelper::normalizePath(getThemeDir($themeName));
    $previewThemeDir = FilesHelper::normalizePath(getThemeDir($themeName . _PREVIEW_SUFFIX_));
    $base_dir = $previewThemeDir . '/img';
    $base_path = $base_dir . '/' . $filename;
    FilesHelper::deleteFile($base_path);
    FilesHelper::createDir($base_dir);
    FilesHelper::renameFile($tmp_path, $base_path);
    $changed_files = getPreviewChangedFiles($themeDir);
    $changed_files[] = $base_path;
    setPreviewChangedFiles($themeDir, $previewThemeDir, $changed_files);
    return array('status' => 'done', 'url' => Designer::getBaseUrlWithLastSlash() . 'themes/' . $themeName . '_preview/img/' . $filename);
}
 public static function buildThemesData($currentIndex = '', $adminDir = '')
 {
     $token = Designer::getToken();
     $baseUrl = Designer::getBaseUrlWithLastSlash();
     $themesUrl = $baseUrl . 'themes';
     $adminUrl = $baseUrl . $adminDir . '/' . ($currentIndex ? $currentIndex : 'index.php?controller=AdminAjax') . '&token=' . $token;
     $shop = Designer::getShop();
     $themes = array();
     foreach (Theme::getAvailable(false) as $themeName) {
         if (strpos($themeName, _PREVIEW_SUFFIX_) !== FALSE || !file_exists(getProjectPath($themeName))) {
             continue;
         }
         $id = Designer::getThemeId($themeName);
         $themeUrl = $themesUrl . '/' . $themeName;
         $url = $adminUrl . '&theme_name=' . $themeName;
         $themes['themes'][$themeName] = array('themeName' => $themeName, 'thumbnailUrl' => $themeUrl . '/preview.jpg', 'openUrl' => $url . '&ajax=1&ver=' . theme_get_manifest_version($themeName) . getDesktopParams(), 'settingsUrl' => $url . '&edit=1', 'isActive' => $id && $shop->id_theme == $id);
     }
     return $themes;
 }