Пример #1
0
 function getFaxFolder($fax_id)
 {
     $sql = 'SELECT fax_folder FROM hylax_faxes WHERE fax_id = ?';
     $values = array($fax_id);
     $fax_folder = $this->_db->getOne($sql, $values);
     if (empty($fax_folder)) {
         return PEAR::raiseError(_("No such fax found."));
     }
     return $fax_folder;
 }
Пример #2
0
    function run($row)
    {
        $row['slideshowGroup'] = GalleryWidget::$slideshowGroup;
        GalleryWidget::$slideshowGroup++;
        $row['files'] = array();
        if (is_numeric($row['tree'])) {
            $sql = '
				SELECT id FROM {{data}}
				WHERE tree=' . $row['tree'] . ' AND path=\'' . $row['path'] . '\' AND type=\'gallery\'
			';
            $dataId = DB::getOne($sql);
            if ($dataId) {
                $sql = '
					SELECT id2 FROM {{relations}}
					WHERE modul1=\'data\' AND modul2=\'files\' AND id1=' . $dataId . '
				';
                $fileId = DB::getAll($sql, 'id2');
                if (count($fileId) > 0) {
                    $sql = '
						SELECT * FROM {{files}}
						WHERE id IN (' . implode(',', $fileId) . ')
						ORDER BY num
					';
                    $temp = DB::getAll($sql);
                    foreach ($temp as $item) {
                        $item['file'] = Funcs::getFileInfo($item['path']);
                        $row['files'][$item['mime']][] = $item;
                    }
                }
            }
        }
        GalleryWidget::$files = $row['files'];
        return View::getWidget('galleryWidget', $row);
    }
Пример #3
0
    public static function getValuesNumber($path)
    {
        $data = array();
        $tree = Tree::getTreeByUrl();
        $ids[] = $tree['id'];
        $ids = array_merge($ids, Tree::getChilds($tree['id']));
        $sql = '
			SELECT DISTINCT type FROM {{data}}
			WHERE path=\'' . $path . '\' AND tree IN (' . implode(',', $ids) . ')
		';
        $type = DB::getOne($sql);
        if ($type) {
            $sql = '
				SELECT MAX(' . Fields::$fieldsName[$type] . ') AS maxv, MIN(' . Fields::$fieldsName[$type] . ') AS minv FROM {{data}}
				WHERE path=\'' . $path . '\' AND tree IN (' . implode(',', $ids) . ')
			';
            $data = DB::getRow($sql);
            $data['type'] = substr($type, 0, 1);
        }
        if ($data['maxv'] > 0) {
            return $data;
        } else {
            return array();
        }
    }
Пример #4
0
 public function getPagi($sql)
 {
     $perpage = $_SESSION['user']['perpage'];
     $page = $_GET['p'];
     if ($page == '') {
         $page = 1;
     }
     $data = array();
     $sql = DB::prefix($sql);
     $sqlcount = substr($sql, strpos($sql, ' FROM '), strlen($sql));
     $tab = substr($sqlcount, strpos($sqlcount, ' ', 1), strpos($sqlcount, ' ', 6) - 1);
     if (strpos($sql, 'SELECT DISTINCT') !== false) {
         $sqlcount = 'SELECT COUNT(DISTINCT ' . $tab . '.id) ' . $sqlcount;
     } else {
         $sqlcount = 'SELECT count(*) ' . $sqlcount;
     }
     if (class_exists(PaginationWidget)) {
         PaginationWidget::$count = DB::getOne($sqlcount);
     }
     $sql = $sql . ' LIMIT ' . ($page - 1) * $perpage . ',' . $perpage . '';
     $q = DB::$pdo->query($sql) or die(DB::error($sql, debug_backtrace()));
     foreach ($q as $row) {
         $data[] = $row;
     }
     return $data;
 }
Пример #5
0
 function getTop()
 {
     if (Funcs::$uri[2]) {
         $sql = 'SELECT parent FROM {{forum}} WHERE id=' . Funcs::$uri[2] . '';
         return DB::getOne($sql);
     }
 }
Пример #6
0
 public function __construct()
 {
     if ($_GET['ref']) {
         $sql = 'SELECT iuser FROM {{iusers_options}} WHERE selfcode=\'' . $_GET['ref'] . '\'';
         $iuser = DB::getOne($sql);
         if ($iuser) {
             $_SESSION['referal'] = $iuser;
         }
     }
     $sql = 'SELECT * FROM {{tree}} WHERE parent=410 AND visible=1 ORDER BY num';
     $list = DB::getAll($sql);
     foreach ($list as $item) {
         $fields = Fields::getFieldsByTree($item['id'], 'wide');
         $item['pic'] = $fields['files_gal']['image'][0]['path'];
         $multi = Fields::getMultiFields($item['id']);
         foreach ($multi['color'] as $row) {
             $item['list'][$row] = Funcs::$referenceId['color'][$row]['name'];
         }
         Run::$colors[$item['id']] = $item;
     }
     //print '<pre>';print_r(Run::$colors);die;
     $sql = 'SELECT * FROM {{tree}} WHERE id=1';
     $row = DB::getRow($sql);
     Run::$socTitle = $row['seo_title'];
     Run::$socDescription = $row['seo_description'];
 }
Пример #7
0
 public static function setList($list)
 {
     $sql = 'UPDATE {{catalog}} SET available=0';
     DB::exec($sql);
     foreach ($list as $partname => $items) {
         $sql = 'SELECT tree FROM {{catalog}} WHERE partname="' . $partname . '"';
         $parent = DB::getOne($sql);
         if ($parent) {
             $available = 0;
             foreach ($items as $size => $item) {
                 $sql = 'SELECT id FROM {{tree}} WHERE parent=' . $parent . ' AND name="' . $size . '"';
                 $tree = DB::getOne($sql);
                 if (!$tree) {
                     $sql = 'SELECT id FROM {{tree}} WHERE parent=' . $parent . ' AND path="' . $size . '"';
                     $tree = DB::getOne($sql);
                 }
                 foreach ($item as $k => $f) {
                     $sql = 'SELECT type FROM {{fields}} WHERE module=6 AND path="' . $k . '"';
                     $r = DB::getOne($sql);
                     $row = array('field' => Fields::$types[$r]['type'], 'path' => $k, 'value' => $f);
                     Price::updateField($tree, $row);
                     if ($k == 'numberRetailSales' && $f > 0) {
                         $available = 1;
                     }
                 }
             }
             $sql = 'UPDATE {{catalog}} SET available=' . $available . ' WHERE tree=' . $parent;
             DB::exec($sql);
         }
     }
 }
Пример #8
0
 function getSearch()
 {
     $data = array();
     $sql = 'SELECT COUNT(*) FROM {{search}}';
     $data['search'] = DB::getOne($sql);
     $sql = 'SELECT COUNT(*) FROM ' . BDPREFIX . 'tree WHERE visible=1 and path<>\'index\' and path<>\'search\' and path<>\'sitemap\'';
     $data['tree'] = DB::getOne($sql, 1);
     return $data;
 }
 /**
  * Returns single scalar value from the first column, first record
  * 
  * The returned value will be based upon the sql specified by $sql. This is 
  * basically a wrapper for the 
  * {@link http://pear.php.net/manual/en/package.database.db.db-common.getone.php DB_common::getOne}
  * method of the Pear DB module.
  * 
  * @param string $sql The SQL code to be executed
  * @param array $data If $sql is a paramatised query, then the data for each parameter goes in this array
  * @return string
  * 
  */
 public function getOne($sql, $data = array())
 {
     $result = $this->conn->getOne($sql, $data);
     self::logQuery();
     if (DB::isError($result)) {
         throw new LoggedException($result->getMessage() . ". SQL: {$sql}", $result->getCode(), self::module);
     }
     return $result;
 }
Пример #10
0
 /**
  * Returns the total number of stories in the specified channel.
  *
  * @param integer $channel_id  The Channel Id
  *
  * @return integer  The count
  */
 public function getStoryCount($channel_id)
 {
     $sql = 'SELECT count(*) FROM jonah_stories WHERE channel_id = ?';
     $result = $this->_db->getOne($sql, $channel_id);
     if ($result instanceof PEAR_Error) {
         throw new Jonah_Exception($result);
     }
     return (int) $result;
 }
Пример #11
0
 public static function getDB($name)
 {
     $sql = 'SELECT value FROM {{cashe}} WHERE name=\'' . substr($name, 0, 256) . '\' AND cdate>=' . (time() - 60 * 60 * 24 * 7) . '';
     //print DB::prefix($sql);
     $value = DB::getOne($sql);
     if ($value) {
         return unserialize($value);
     } else {
         return false;
     }
 }
Пример #12
0
 public function login($email, $password)
 {
     $db = new DB();
     $user = $db->getOne('users', array('email' => $email, 'password' => sha1($password)));
     if ($user !== null) {
         $_SESSION['user'] = $user;
         return true;
     } else {
         return false;
     }
 }
Пример #13
0
    public static function updateTerminals()
    {
        $data = array();
        $DPD = new DPD_service();
        try {
            $arTerminalsList = $DPD->getTerminalsSelfDelivery();
            //print '<pre>';print_r($arTerminalsList);die;
            $i = 0;
            $errors;
            $sql = 'UPDATE {{terminals}} SET visible=0 AND company=\'DPD\'';
            DB::exec($sql);
            foreach ($arTerminalsList as $item) {
                $sql = 'SELECT id FROM {{terminals}} WHERE code=\'' . $item['terminal']['terminalCode'] . '\'';
                $id = DB::getOne($sql);
                if (!$id) {
                    $temp['terminalCode'] = iconv('windows-1251', 'utf-8', $item['terminal']['terminalCode']);
                    $temp['terminalName'] = iconv('windows-1251', 'utf-8', $item['terminal']['terminalName']);
                    $temp['terminalAddress'] = iconv('windows-1251', 'utf-8', $item['terminal']['terminalAddress']);
                    $cityId = '';
                    $regionId = '';
                    $sql = 'SELECT id FROM {{regions}} WHERE cityId=' . $item['city']['cityId'] . '';
                    $cityId = DB::getOne($sql);
                    $sql = 'SELECT id FROM {{regions}} WHERE regionCode=' . $item['city']['regionCode'] . '';
                    $regionId = DB::getOne($sql);
                    if ($cityId && $regionId) {
                        $sql = '
							INSERT INTO {{terminals}} 
							SET 
								region=' . $regionId . ',
								city=\'' . $cityId . '\',
								code=\'' . $temp['terminalCode'] . '\',
								name=\'' . $temp['terminalName'] . '\',
								address=\'' . $temp['terminalAddress'] . '\',
								company=\'DPD\',
								visible=1
						';
                        DB::exec($sql);
                    } else {
                        $i++;
                        $errors[] = $item['regionName'];
                    }
                } else {
                    $sql = 'UPDATE {{terminals}} SET visible=1 WHERE code=\'' . $item['terminal']['terminalCode'] . '\'';
                    DB::exec($sql);
                }
            }
            //print 'Ошибок :'.$i;
            //print '<pre>'; print_r($errors);
        } catch (Exception $e) {
            print '<pre>';
            print_r($e);
        }
    }
Пример #14
0
 function run()
 {
     $id = 1;
     if (is_numeric(Funcs::$uri[2])) {
         $id = Funcs::$uri[2];
     } elseif (is_numeric($_GET['parent'])) {
         $id = $_GET['parent'];
     } elseif (is_numeric($_GET['id'])) {
         $sql = 'SELECT parent FROM {{tree}} WHERE id=' . $_GET['id'];
         $id = DB::getOne($sql);
     }
     View::$layout = 'empty';
     View::render('tree/tree', array('tree' => TreeWidget::getTree($id)));
 }
Пример #15
0
 function ajax()
 {
     $data = array();
     $sql = 'SELECT * FROM {{tree}} WHERE parent=' . $_POST['id'] . ' ORDER BY num';
     $list = DB::getAll($sql);
     foreach ($list as $item) {
         $sql = 'SELECT COUNT(*) FROM {{tree}} WHERE parent=' . $item['id'] . '';
         $count = DB::getOne($sql);
         if ($count > 0) {
             $item['inner'] = 'inner';
         }
         $data[] = $item;
     }
     print View::getRenderEmpty('tree/branch', array('sub' => $data));
     die;
 }
Пример #16
0
    function run()
    {
        $sql = '
			SELECT {{tree}}.name FROM {{search}}
			INNER JOIN ({{tree}}
				INNER JOIN {{catalog}} ON  {{catalog}}.tree={{tree}}.id
			) ON  {{search}}.tree={{tree}}.id
			WHERE {{tree}}.visible=1
			ORDER BY RAND()
			LIMIT 0,1
		';
        $name = DB::getOne($sql);
        if (strlen($name) > 50 && strpos($name, ' ', 50) !== false) {
            $name = substr($name, 0, strpos($name, ' ', 50));
        }
        print $name;
    }
Пример #17
0
 public static function getOrders()
 {
     $data = array();
     $sql = 'SELECT MAX(cdate) AS maxdate, MIN(cdate) AS mindate FROM {{orders}} WHERE status=\'done\'';
     $dates = DB::getRow($sql);
     for ($i = date('Y', strtotime($dates['mindate'])); $i <= date('Y', strtotime($dates['maxdate'])); $i++) {
         for ($num = 0; $num < 12; $num++) {
             $db = date('Y-m-d 00:00:01', strtotime($i . '-' . str_repeat('0', 2 - strlen($num + 1)) . ($num + 1) . '-01 00:00:01'));
             $de = date('Y-m-d 00:00:01', strtotime($i . '-' . str_repeat('0', 2 - strlen($num + 1)) . ($num + 1) . '-01 00:00:01 +1 month'));
             $sql = 'SELECT SUM(price) FROM {{orders}} WHERE status=\'done\' AND (cdate BETWEEN \'' . $db . '\' AND \'' . $de . '\' )';
             $sum = DB::getOne($sql);
             if ($sum != '') {
                 $data[$i][str_repeat('0', 2 - strlen($num + 1)) . ($num + 1)] = array('name' => Funcs::$monthsRusB[$num], 'sum' => $sum);
             }
         }
     }
     return $data;
 }
Пример #18
0
    public function add()
    {
        $module = Module::getModuleById($_POST['module']);
        if (!is_numeric($_POST['tree'])) {
            $tree = Tree::addTree();
        } else {
            $tree = Tree::editTree($_POST['tree']);
        }
        if ($_POST['id'] != '0') {
            $sql = '
				INSERT INTO {{catalog}}
				SET tree=' . $tree . '
			';
            $dataId = DB::exec($sql);
            $sql = 'SELECT path FROM {{modules}} WHERE id=' . $module['catalog'];
            $moduleCtatalog = DB::getOne($sql);
            if ($moduleCtatalog) {
                $sql = '
					INSERT INTO {{relations}}
					SET
						modul1=\'tree\',
						modul2=\'' . $moduleCtatalog . '\',
						id1=\'' . $tree . '\',
						id2=0,
						cdate=NOW()
				';
                DB::exec($sql);
            }
        } else {
            $dataId = 0;
        }
        $sql = '
			INSERT INTO {{relations}}
			SET
				modul1=\'tree\',
				modul2=\'' . $module['path'] . '\',
				id1=\'' . $tree . '\',
				id2=1,
				cdate=NOW()
		';
        DB::exec($sql);
        return $tree;
    }
Пример #19
0
 public function getPagi($sql, $exec = 0)
 {
     $perpage = 0;
     if (Funcs::$OneSSA) {
         $perpage = $_SESSION['user']['perpage'];
     } else {
         if ($_SESSION['perpage'][end(Funcs::$uri)]) {
             $perpage = $_SESSION['perpage'][end(Funcs::$uri)];
         }
         if ($perpage == 0) {
             $perpage = $_SESSION['perpage'][reset(Funcs::$uri)];
         }
         if ($perpage == 0) {
             $perpage = 10;
         }
     }
     $page = $_GET['p'];
     if ($page == '') {
         $page = 1;
     }
     $data = array();
     $sql = DB::prefix($sql, $exec);
     $sqlcount = substr($sql, strpos($sql, ' FROM '), strlen($sql));
     $tab = substr($sqlcount, strpos($sqlcount, ' ', 1), strpos($sqlcount, ' ', 6) - 1);
     if (strpos($sql, 'SELECT DISTINCT') !== false) {
         $sqlcount = 'SELECT COUNT(DISTINCT ' . $tab . '.id) ' . $sqlcount;
     } else {
         $sqlcount = 'SELECT COUNT(*) ' . $sqlcount;
     }
     if (strpos($sqlcount, 'ORDER BY') !== false) {
         $sqlcount = substr($sqlcount, 0, strpos($sqlcount, 'ORDER BY'));
     }
     if (class_exists(PaginationWidget)) {
         PaginationWidget::$count = DB::getOne($sqlcount, 1);
     }
     $sql = $sql . ' LIMIT ' . ($page - 1) * $perpage . ',' . $perpage . '';
     $q = mysql_query($sql) or die('<b>Ошибка в SQL-запросе:</b> ' . $sql);
     while ($row = mysql_fetch_assoc($q)) {
         $data[] = $row;
     }
     return $data;
 }
Пример #20
0
    function getValue($row)
    {
        if ($_GET['id']) {
            $sql = '
				SELECT ' . Fields::$features[$row['type']]['type'] . ' FROM {{data}}
				WHERE tree=' . $_GET['id'] . ' AND field=' . $row['id'] . '
			';
            $value = DB::getOne($sql);
            if ($value) {
                return $value;
            } else {
                if ($row['type'] == 'fstring') {
                    return '';
                } else {
                    return 0;
                }
            }
        } else {
            return '';
        }
    }
Пример #21
0
    public static function getOne($id)
    {
        $fields = Goods::getReserveFieldsByModulePath('catalog');
        $sql = '
			SELECT {{catalog}}.*, {{tree}}.* FROM {{catalog}} 
			INNER JOIN {{tree}} ON {{catalog}}.tree={{tree}}.id
			WHERE {{tree}}.id =' . $id . '
		';
        $model = DB::getRow($sql);
        if ($model) {
            foreach ($fields as $key => $item) {
                if (in_array($item['path'], OneSSA::$catalogStandart)) {
                    $temp[$item['path']] = $model[$item['path']];
                }
            }
            $return = $temp;
            $return['id'] = $id;
            if ($model['vendor']) {
                $sql = 'SELECT path FROM {{reference}} WHERE id =' . $model['vendor'] . '';
                $vendorpath = DB::getOne($sql);
            }
            $return['path'] = $parentpath . $vendorpath . '/' . $id . '/';
            $return['tree'] = $id;
            $return['name'] = $model['name'];
            $return['parent'] = $model['parent'];
            $return['price'] = $model['price'];
            $return['rating'] = $model['rating'];
            $return['vendorname'] = Funcs::$referenceId['vendor'][$return['vendor']]['name'];
            $fields = Goods::getFieldsByTree($id);
            $return['color'] = Funcs::$referenceId['color'][$fields['color']]['name'];
            $return['pics'] = $fields['gal']['image'];
            $return['files'] = $fields['files_gal']['application'];
            unset($fields['files_gal']);
            unset($fields['gal']);
            $return['additional'] = $fields;
            return $return;
        }
    }
Пример #22
0
    public function visible()
    {
        $this->checkRights();
        if ($_POST['tab'] == 'tree') {
            $sql = 'SELECT visible FROM {{' . $_POST['tab'] . '}} WHERE id=' . $_POST['id'] . '';
            $vis = DB::getOne($sql) == 1 ? '0' : '1';
            $ids = Tree::getChilds($_POST['id']);
            $ids[] = $_POST['id'];
            $sql = '
				UPDATE {{' . $_POST['tab'] . '}}
				SET visible=' . $vis . '
				WHERE id IN (' . implode(',', $ids) . ')
			';
            DB::exec($sql);
        } else {
            $sql = '
				UPDATE {{' . $_POST['tab'] . '}}
				SET visible=IF(visible=1,0,1)
				WHERE id=' . $_POST['id'] . '
			';
            DB::exec($sql);
        }
    }
Пример #23
0
 function run()
 {
     $data = array();
     $path = '';
     $id = Funcs::$uri[2];
     if (Funcs::$uri[1] == 'tree' && is_numeric($id)) {
         $sql = 'SELECT parent FROM {{tree}} WHERE id=' . $id . '';
         $parent = DB::getOne($sql);
         while ($id != 0) {
             $sql = 'SELECT id, parent, name FROM {{tree}} WHERE id=' . $id . '';
             $row = DB::getRow($sql);
             $row['path'] = '/' . ONESSA_DIR . '/work/' . $row['id'] . '/';
             $id = $row['parent'];
             $data[] = $row;
         }
         $data = array_reverse($data);
     } elseif (Funcs::$uri[1] == 'settings' && is_numeric($id)) {
         $data[] = array('name' => 'Настройки', 'path' => '/' . ONESSA_DIR . '/settings/');
         $data[] = array();
     } elseif (Funcs::$uri[1] == 'infoblock' && is_numeric($id)) {
         $data[] = array('name' => 'Инфоблоки', 'path' => '/' . ONESSA_DIR . '/infoblock/');
         $data[] = array();
     } elseif (Funcs::$uri[1] == 'reference' && is_numeric($id)) {
         $sql = 'SELECT parent FROM {{reference}} WHERE id=' . $id . '';
         $parent = DB::getOne($sql);
         while ($id != 0) {
             $sql = 'SELECT id, parent, name FROM {{reference}} WHERE id=' . $id . '';
             $row = DB::getRow($sql);
             $row['path'] = '/' . ONESSA_DIR . '/reference/' . $row['id'] . '/';
             $id = $row['parent'];
             $data[] = $row;
         }
         $data[] = array('name' => 'Справочник', 'path' => '/' . ONESSA_DIR . '/reference/');
         $data = array_reverse($data);
     }
     View::widget('crumbs', array('list' => $data));
 }
Пример #24
0
    public static function getMarket($id)
    {
        $data = array();
        $tree = Tree::getInfo($id);
        if (strpos($tree['modul2'], 'catalog') !== 'false') {
            $sql = 'SHOW COLUMNS FROM {{catalog}}';
            $cols = DB::getAll($sql);
            $x = 0;
            foreach ($cols as $item) {
                if ($item['Field'] == 'market') {
                    $x = 1;
                }
            }
            if ($x) {
                $ids = Tree::getChilds($id);
                $ids[] = $id;
                $sql = '
					SELECT COUNT(*) FROM {{catalog}}
					WHERE tree IN (' . implode(',', $ids) . ') AND market=1
				';
                $m1 = DB::getOne($sql);
                $sql = '
					SELECT COUNT(*) FROM {{catalog}}
					WHERE tree IN (' . implode(',', $ids) . ') AND market=0
				';
                $m2 = DB::getOne($sql);
                if ($m1 >= $m2) {
                    return 1;
                } else {
                    return 0;
                }
            } else {
                return 0;
            }
        }
        return 0;
    }
Пример #25
0
    function add()
    {
        if (Funcs::$prop['saveto'] == '1') {
            $sql = 'SELECT MAX(num) FROM {{reference}} WHERE parent=' . $_POST['parent'] . '';
            $num = DB::getOne($sql) + 10;
        } else {
            $sql = 'UPDATE {{reference}} SET num=num+10 WHERE parent=' . $_POST['parent'] . '';
            DB::exec($sql);
            $num = 10;
        }
        $sql = '
			INSERT INTO {{reference}}
			SET 
				parent=' . $_POST['parent'] . ',
				name=\'' . trim($_POST['name']) . '\',
				path=\'' . trim($_POST['path']) . '\',
				value=\'' . trim($_POST[$_POST['type']]) . '\',
				type=\'' . trim($_POST['type']) . '\',
				num=\'' . $num . '\',
				visible=1
		';
        $id = DB::exec($sql);
        Reference::upload($id);
    }
Пример #26
0
 /**
  * Get saved search criteria
  *
  * @param string $name    Username
  *
  * @return array  search criteria
  */
 protected function _getSearchCriteria($name)
 {
     $query = 'SELECT search_criteria FROM ' . $this->_params['search'] . ' WHERE user_uid = ? AND search_name = ?';
     return $this->_db->getOne($query, array($GLOBALS['registry']->getAuth(), $name));
 }
Пример #27
0
    public static function getFeaturesFields($id)
    {
        $data[] = array('id' => '0');
        $sql = 'SELECT parent FROM {{tree}} WHERE id=' . $id . '';
        $parent = DB::getOne($sql);
        $sql = 'SELECT * FROM {{fields}} WHERE type=\'group\' AND tree=' . $parent . ' ORDER BY num';
        $data = array_merge($data, DB::getAll($sql));
        foreach ($data as $i => $item) {
            if ($item['id'] != '') {
                $sql = 'SELECT * FROM {{fields}} WHERE parent=' . $item['id'] . ' AND type<>\'group\' AND tree=' . $parent . ' ORDER BY num';
                $list = DB::getAll($sql);
                foreach ($list as $row) {
                    $sql = '
						SELECT ' . Fields::$features[$row['type']]['type'] . ' FROM {{data}}
						WHERE tree=' . $id . ' AND field=' . $row['id'] . '
					';
                    $data[$i]['list'][$row['name']] = DB::getOne($sql);
                }
            }
        }
        return $data;
    }
Пример #28
0
    function copy($id)
    {
        $sql = '
			INSERT INTO {{tree}}(parent,name,seo_title,seo_keywords,seo_description,site,path,visible,num,cdate,mdate,udate,cuser,modul,search,menu)
			SELECT parent,CONCAT(name,\' copy\'),seo_title,seo_keywords,seo_description,site,path,visible,num,NOW(),NOW(),udate,' . $_SESSION['user']['id'] . ',modul,search,menu FROM {{tree}} WHERE id=' . $id . '
		';
        $tree = DB::exec($sql);
        $sql = 'SELECT parent FROM {{tree}} WHERE id=' . $id . '';
        $parent = DB::getOne($sql);
        if (Funcs::$prop['saveto'] == '1') {
            $sql = 'SELECT MAX(num) FROM {{tree}} WHERE parent=' . $parent . '';
            $num = DB::getOne($sql) + 10;
            $sql = 'UPDATE {{tree}} SET num=' . $num . ' WHERE id=' . $tree . '';
            DB::exec($sql);
        } else {
            $sql = 'UPDATE {{tree}} SET num=num+10 WHERE parent=' . $parent . '';
            DB::exec($sql);
            $sql = 'UPDATE {{tree}} SET num=10 WHERE id=' . $tree . '';
            DB::exec($sql);
        }
        $sql = '
			INSERT INTO {{catalog}}(tree,' . implode(',', OneSSA::$catalogStandart) . ')
			SELECT ' . $tree . ',' . implode(',', OneSSA::$catalogStandart) . ' FROM {{catalog}} WHERE tree=' . $id . '
		';
        DB::exec($sql);
        $sql = '
			INSERT INTO {{search}}(name,tree,search,cdate)
			SELECT name,' . $tree . ',search,NOW() FROM {{search}} WHERE tree=' . $id . '
		';
        DB::exec($sql);
        $sql = '
			INSERT INTO {{relations}}(modul1,modul2,id1,id2,cdate)
			SELECT modul1,modul2,' . $tree . ',id2,NOW() FROM {{relations}} WHERE id1=' . $id . ' AND modul1=\'tree\'
		';
        DB::exec($sql);
        $sql = '
			INSERT INTO {{data}}(tree,path,type,value_int,value_float,value_string,value_text,cdate,num,visible)
			SELECT ' . $tree . ',path,type,value_int,value_float,value_string,value_text,NOW(),num,visible FROM {{data}} WHERE tree=' . $id . '
		';
        DB::exec($sql);
        $sql = '
			SELECT * FROM {{data}} WHERE tree=' . $tree . '
		';
        $list = DB::getAll($sql);
        foreach ($list as $item) {
            $sql = 'SELECT id FROM {{data}} WHERE tree=' . $id . ' AND path=\'' . $item['path'] . '\'';
            $dataId = DB::getOne($sql);
            if ($dataId) {
                $sql = '
					INSERT INTO {{relations}}(modul1,modul2,id1,id2,cdate)
					SELECT modul1,modul2,' . $item['id'] . ',id2,NOW() FROM {{relations}} WHERE id1=' . $dataId . ' AND modul1=\'data\'
				';
                DB::exec($sql);
            }
        }
        return $parent;
    }
Пример #29
0
    public function request()
    {
        $sql = 'SELECT * FROM {{iusers}} WHERE code=\'' . $_POST['user_id'] . '\'';
        $data = DB::getRow($sql);
        $sql = 'SELECT SUM(amount) FROM {{requests}} WHERE iuser='******'id'] . ' AND paid=0';
        $amount = DB::getOne($sql);
        if ($data['balance'] < $_POST['amount'] + $amount) {
            return 'error';
        } else {
            $sql = '
				INSERT INTO {{requests}}
				SET request_id=' . $_POST['request_id'] . ',
					iuser='******'id'] . ',
					amount=' . $_POST['amount'] . ',
					cdate=NOW()
			';
            DB::exec($sql);
        }
    }
Пример #30
0
 public static function getRegionName($id)
 {
     $sql = 'SELECT name FROM {{regions}} WHERE visible=1 AND parent=0 AND id=' . $id . '';
     return DB::getOne($sql);
 }