function ppd_process_files(&$files) { if (empty($files) || !is_array($files)) { return array(); } foreach ($files as $key => $file) { $_real_path = ppd_check_path($file['filename']); if (empty($_real_path)) { unset($files[$key]); continue; } $files[$key]['size'] = ppd_convertfrom_bytes($file['size']); $files[$key]['fileicon'] = ppd_get_url_fileicon($file['fileicon']); } return $files; }
function ppd_filetype_show() { global $available_fields, $smarty, $tables, $config, $target; global $app_catalogs; global $page; if (!isset($page)) { $page = isset($_GET['page']) ? (int) $_GET['page'] : 1; } $page = (int) $page; if ($_SERVER['REQUEST_METHOD'] != 'GET') { ppd_filetype_redirect(); } $_new_types =& cw_session_register('_new_types'); if (!empty($_new_types)) { $smarty->assign('_new_types', $_new_types); cw_session_unregister('_new_types'); } $limit_types = null; $number_types = cw_query_first_cell('SELECT COUNT(type_id) FROM ' . $tables['ppd_types']); $navigation = cw_core_get_navigation($target, $number_types, $page); $navigation['script'] = "{$app_catalogs['admin']}/index.php?target={$target}"; $smarty->assign('navigation', $navigation); if (isset($navigation['first_page']) && isset($navigation['objects_per_page'])) { $limit_types = " LIMIT {$navigation['first_page']}, {$navigation['objects_per_page']}"; } $types = array(); if (!empty($number_types)) { $types = cw_query('SELECT `' . implode('`, `', array_keys($available_fields)) . '` FROM ' . $tables['ppd_types'] . $limit_types); } if (empty($types) || !is_array($types)) { return; } foreach ($types as $key => $file) { $types[$key]['fileicon_exists'] = true; $types[$key]['fileicon_url'] = ppd_get_url_fileicon($types[$key]['fileicon']); if (empty($types[$key]['fileicon_url'])) { $types[$key]['fileicon_exists'] = false; } } $smarty->assign('ppd_types', $types); }
function ppd_details($product_id) { global $tables, $top_message, $smarty, $available_fields; $product_id = (int) $product_id; global $file_id; if (!isset($file_id)) { $file_id = isset($_GET['file_id']) ? (int) $_GET['file_id'] : 0; } $file_id = (int) $file_id; if (empty($file_id) || $_SERVER['REQUEST_METHOD'] != 'GET') { ppd_redirect($product_id); } $table = $tab_type_tables[$tab_type]; unset($available_fields['type_id']); $file_data = cw_query_first('SELECT `' . implode('`, `', array_keys($available_fields)) . '`, `type`, `fileicon` FROM ' . $tables['ppd_files'] . ' AS files LEFT JOIN ' . $tables['ppd_types'] . ' AS types ON files.type_id = types.type_id WHERE product_id = \'' . $product_id . '\' AND file_id = \'' . $file_id . '\''); if (empty($file_data) || !is_array($file_data)) { ppd_redirect($product_id); } $file_data['fileicon'] = ppd_get_url_fileicon($file_data['fileicon']); $file_data['filename'] = ppd_get_pathto_file($file_data['filename']); $file_data['fileicon'] = empty($file_data['filename']) ? null : $file_data['fileicon']; if (!empty($file_data['size'])) { $file_data['size'] = ppd_convertfrom_bytes($file_data['size']); $additional_lang_data = array('size' => $file_data['size']); $file_data['size'] = cw_get_langvar_by_name('lbl_ppd_detailed_filesize', $additional_lang_data); } $file_data['perms_owner'] = ppd_permissions($file_data['perms_owner']); $file_data['perms_all'] = ppd_permissions($file_data['perms_all']); $smarty->assign('file_data', $file_data); $smarty->assign('types', ppd_get_filetypes()); }
function ppd_get_filetypes() { global $tables; static $types; $required_fields = array('type_id', 'type', 'fileicon'); if (!isset($types)) { $types = cw_query('SELECT `' . implode('`, `', $required_fields) . '` FROM ' . $tables['ppd_types']); foreach ($types as $key => $type) { $types[$key]['fileicon'] = ppd_get_url_fileicon($type['fileicon']); } } return $types; }