} } } $last_item = array('func' => $c_elm, 'url' => Registry::get('config.current_url'), 'icon' => empty($items_schema['icon']) ? '' : $items_schema['icon'], 'text' => empty($items_schema['text']) ? '' : $items_schema['text']); $hash = fn_crc32(!empty($c_elm) ? implode('', $c_elm) : $items_schema['text']); if (!isset($last_edited_items[$hash])) { $last_edited_items[$hash] = $last_item; } if (count($last_edited_items) > $last_items_cnt) { foreach ($last_edited_items as $k => $v) { unset($last_edited_items[$k]); break; } } $_SESSION['last_edited_items'] = $last_edited_items; fn_save_user_additional_data('L', $last_edited_items); } function fn_sort_menu($menu) { foreach ($menu as $root => $data) { $r = array(); foreach ($data as $k => $v) { $r[$v['position']][$k] = $v; } if (!empty($r)) { $menu[$root] = call_user_func_array('array_merge', $r); } if (empty($menu[$root])) { unset($menu[$root]); } }
function fn_change_user_points($value, $user_id, $reason = '', $action = CHANGE_DUE_ADDITION) { if (!empty($value)) { fn_save_user_additional_data(POINTS, fn_get_user_additional_data(POINTS, $user_id) + $value, $user_id); $change_points = array('user_id' => $user_id, 'amount' => $value, 'timestamp' => TIME, 'action' => $action, 'reason' => $reason); return db_query("REPLACE INTO ?:reward_point_changes ?e", $change_points); } return ''; }
} db_query("DELETE FROM ?:quick_menu WHERE menu_id = ?i ?p", $_REQUEST['id'], $where); db_query("DELETE FROM ?:common_descriptions WHERE object_id = ?i AND object_holder = 'quick_menu'", $_REQUEST['id']); $view->assign('edit_quick_menu', true); $view->assign('quick_menu', fn_get_quick_menu_data()); $view->display('common_templates/quick_menu.tpl'); exit; } elseif ($mode == 'update_quick_menu_handler') { if (!empty($_REQUEST['enable'])) { db_query("UPDATE ?:settings SET value = ?s WHERE option_name = 'show_menu_mouseover' AND section_id = ''", $_REQUEST['enable']); return array(CONTROLLER_STATUS_REDIRECT, "tools.show_quick_menu.edit"); } exit; } elseif ($mode == 'cleanup_history') { $_SESSION['last_edited_items'] = array(); fn_save_user_additional_data('L', ''); $view->assign('last_edited_items', ''); $view->display('common_templates/last_viewed_items.tpl'); exit; } elseif ($mode == 'update_status') { if (preg_match("/^[a-z_]+\$/", $_REQUEST['table'])) { $table_name = $_REQUEST['table']; } else { die; // incorrect table name } $old_status = db_get_field("SELECT status FROM ?:{$table_name} WHERE ?w", array($_REQUEST['id_name'] => $_REQUEST['id'])); $permission = true; if (defined('COMPANY_ID')) { $cols = db_get_fields("SHOW COLUMNS FROM ?:{$table_name}"); if (in_array('company_id', $cols)) {