extract_theme_files( 'install', $_GET['revision'], $_GET['extension'] ); redirect($base_url.'&installstatus='.$install_status); } } // +-----------------------------------------------------------------------+ // | installation result | // +-----------------------------------------------------------------------+ if (isset($_GET['installstatus'])) { switch ($_GET['installstatus']) { case 'ok': array_push( $page['infos'], l10n('Theme has been successfully installed') ); break; case 'temp_path_error': array_push($page['errors'], l10n('Can\'t create temporary file.')); break; case 'dl_archive_error': array_push($page['errors'], l10n('Can\'t download archive.')); break; case 'archive_error': array_push($page['errors'], l10n('Can\'t read or extract archive.')); break; default: array_push( $page['errors'], sprintf(l10n('An error occured during extraction (%s).'), $_GET['installstatus']) ); } } // +-----------------------------------------------------------------------+ // | template output | // +-----------------------------------------------------------------------+ $template->set_filenames(array('themes' => 'themes_new.tpl')); if ($themes->get_server_themes(true)) // only new themes { foreach($themes->server_themes as $theme) { $url_auto_install = htmlentities($base_url) . '&revision=' . $theme['revision_id'] . '&extension=' . $theme['extension_id'] . '&pwg_token='.get_pwg_token() ; $template->append( 'new_themes', array( 'name' => $theme['extension_name'], 'screenshot' => PEM_URL.'/upload/extension-'.$theme['extension_id'].'/thumbnail.jpg', 'install_url' => $url_auto_install, ) ); } } else { array_push($page['errors'], l10n('Can\'t connect to server.')); } $template->assign('default_screenshot', get_root_url().'admin/themes/'.$conf['admin_theme'].'/images/missing_screenshot.png' ); $template->assign_var_from_handle('ADMIN_CONTENT', 'themes'); ?>