X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=admin%2Finst_theme.php;h=7c15dd53297c3a881d960165d50cc88c6d5bbe67;hb=7e6e0807990447d2977b970c3a0fd28dc9250194;hp=01f6ca1ad698fc5db76aa888313db82c3d32ee8e;hpb=13367be8aaf5175295f7aab7160370458dad1824;p=fa-stable.git diff --git a/admin/inst_theme.php b/admin/inst_theme.php index 01f6ca1a..7c15dd53 100644 --- a/admin/inst_theme.php +++ b/admin/inst_theme.php @@ -12,27 +12,27 @@ $page_security = 'SA_CREATEMODULES'; $path_to_root=".."; include_once($path_to_root . "/includes/session.inc"); + include_once($path_to_root."/includes/packages.inc"); +include_once($path_to_root . "/admin/db/maintenance_db.inc"); +include_once($path_to_root . "/includes/ui.inc"); -if ($use_popup_windows) { +if ($SysPrefs->use_popup_windows) { $js = get_js_open_window(900, 500); } page(_($help_context = "Install Themes"), false, false, '', $js); -include_once($path_to_root . "/includes/date_functions.inc"); -include_once($path_to_root . "/admin/db/company_db.inc"); -include_once($path_to_root . "/admin/db/maintenance_db.inc"); -include_once($path_to_root . "/includes/ui.inc"); - //--------------------------------------------------------------------------------------------- -if (($id = find_submit('Delete', false)) +if (($id = find_submit('Delete', false)) && isset($installed_extensions[$id]) && clean_user_themes($installed_extensions[$id]['package'])) { $extensions = get_company_extensions(); $theme = $extensions[$id]['package']; + $path = $extensions[$id]['path']; + if (uninstall_package($theme)) { - $dirname = $path_to_root.'/themes/'.$theme; + $dirname = $path_to_root.'/'.$path; flush_dir($dirname, true); rmdir($dirname); unset($extensions[$id]); @@ -53,49 +53,52 @@ start_form(true); start_table(TABLESTYLE); $th = array(_("Theme"), _("Installed"), _("Available"), "", ""); - table_header($th); - $k = 0; + $mods = get_themes_list(); - foreach($mods as $pkg_name => $ext) + if (!$mods) + display_note(_("No optional theme is currently available.")); + else { - $available = @$ext['available']; - $installed = @$ext['version']; - $id = @$ext['local_id']; - - alt_table_row_color($k); - -// label_cell(is_array($ext['Descr']) ? $ext['Descr'][0] : $ext['Descr']); - label_cell($available ? get_package_view_str($pkg_name, $ext['name']) : $ext['name']); - - label_cell($id === null ? _("None") : - ($available && $installed ? $installed : _("Unknown"))); - label_cell($available ? $available : _("None")); - - if ($available && check_pkg_upgrade($installed, $available)) // outdated or not installed theme in repo - button_cell('Update'.$pkg_name, $installed ? _("Update") : _("Install"), - _('Upload and install latest extension package'), ICON_DOWN); - else - label_cell(''); - - if ($id !== null) { - delete_button_cell('Delete'.$id, _('Delete')); - submit_js_confirm('Delete'.$id, - sprintf(_("You are about to remove package \'%s\'.\nDo you want to continue ?"), - $ext['name'])); - } else - label_cell(''); - - end_row(); - } + table_header($th); + + foreach($mods as $pkg_name => $ext) + { + $available = @$ext['available']; + $installed = @$ext['version']; + $id = @$ext['local_id']; + + alt_table_row_color($k); + + label_cell($available ? get_package_view_str($pkg_name, $ext['name']) : $ext['name']); + + label_cell($id === null ? _("None") : + ($available && $installed ? $installed : _("Unknown"))); + label_cell($available ? $available : _("None")); - end_table(1); + if ($available && check_pkg_upgrade($installed, $available)) // outdated or not installed theme in repo + button_cell('Update'.$pkg_name, $installed ? _("Update") : _("Install"), + _('Upload and install latest extension package'), ICON_DOWN, 'process'); + else + label_cell(''); + if ($id !== null) { + delete_button_cell('Delete'.$id, _('Delete')); + submit_js_confirm('Delete'.$id, + sprintf(_("You are about to remove package \'%s\'.\nDo you want to continue ?"), + $ext['name'])); + } else + label_cell(''); + + end_row(); + } + + end_table(1); + } div_end(); //--------------------------------------------------------------------------------------------- end_form(); end_page(); -?> \ No newline at end of file