cat.inc
来自「eGroupWare is a multi-user, web-based gr」· INC 代码 · 共 105 行
INC
105 行
<?php/**************************************************************************** copyright : (C) 2001-2003 Advanced Internet Designs Inc.* email : forum@prohost.org* $Id: cat.inc,v 1.2 2003/10/20 02:43:55 iliaa Exp $** This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or * (at your option) any later version.***************************************************************************/class fud_cat{ var $id, $name, $description, $view_order, $cat_opt; function fud_cat() { foreach (array('id', 'name', 'description', 'view_order', 'cat_opt') as $k) { if (isset($_POST['cat_'.$k])) { $this->{$k} = $_POST['cat_'.$k]; } } } function add($pos) { if (!db_locked()) { $ll = 1; db_lock($GLOBALS['DBHOST_TBL_PREFIX'].'cat WRITE'); } if ($pos == 'LAST') { $this->view_order = (int) q_singleval('SELECT MAX(view_order) FROM '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat') + 1; } else { $this->view_order = 1; q('UPDATE '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat SET view_order=view_order+1'); } $this->id = db_qid("INSERT INTO ".$GLOBALS['DBHOST_TBL_PREFIX']."cat (name, description, view_order, cat_opt) VALUES ('".addslashes($this->name)."', '".addslashes($this->description)."', ".$this->view_order.", ".$this->cat_opt.")"); if (isset($ll)) { db_unlock(); } return $this->id; } function sync($id) { q("UPDATE ".$GLOBALS['DBHOST_TBL_PREFIX']."cat SET name='".addslashes($this->name)."',description='".addslashes($this->description)."', cat_opt=".$this->cat_opt." WHERE id=".$id); }}function cat_rebuild_order(){ $i = 1; $c = q('SELECT id, view_order FROM '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat ORDER BY view_order'); while ($r = db_rowarr($c)) { if ($i != $r[1]) { q('UPDATE '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat SET view_order='.$i.' WHERE id='.$r[0]); } ++$i; } unset($c);}function cat_change_pos($oldp, $newp){ if ($oldp == $newp || !$newp) { return; } db_lock($GLOBALS['DBHOST_TBL_PREFIX'].'cat WRITE'); q('UPDATE '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat SET view_order=2147483647 WHERE view_order='.$oldp); if ($oldp < $newp) { q('UPDATE '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat SET view_order=view_order-1 WHERE view_order<='.$newp.' AND view_order>'.$oldp); $maxp = q_singleval('SELECT MAX(view_order) FROM '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat WHERE view_order!=2147483647'); if ($newp > $maxp) { $newp = $maxp + 1; } } else { q('UPDATE '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat SET view_order=view_order+1 WHERE view_order<'.$oldp.' AND view_order>='.$newp); } q('UPDATE '.$GLOBALS['DBHOST_TBL_PREFIX'].'cat SET view_order='.$newp.' WHERE view_order=2147483647'); db_unlock();}function rebuild_forum_cat_order(){ $tbl =& $GLOBALS['DBHOST_TBL_PREFIX']; if (!db_locked()) { $ll = 1; db_lock($tbl.'cat c WRITE,'.$tbl.'fc_view WRITE,'.$tbl.'forum f WRITE'); } q("DELETE FROM ".$tbl."fc_view"); q("INSERT INTO ".$tbl."fc_view (c, f) SELECT c.id,f.id FROM ".$tbl."forum f INNER JOIN ".$tbl."cat c ON c.id=f.cat_id ORDER BY c.view_order, f.view_order"); if (isset($ll)) { db_unlock(); }}?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?