class Menu extends Db {
function get_one()
{
$this->Query('SELECT * FROM menu WHERE menu.parent="0" ORDER BY menu.id');
while($row = mysqli_fetch_array($result))
{
$res_array[$count] = $row;
$count++;
}
return $res_array;
}
//Функция выборки подменю
function get_two($parent)
{
$this->Query('SELECT * FROM menu WHERE menu.parent="$parent" ORDER BY menu.id');
while($row = mysqli_fetch_array($result))
{
$res_array[$count] = $row;
$count++;
}
return $res_array;
}
}
$menu = new Menu();
class Paginator extends Db
{
public static $limit = 7;
/*
public static $navigation = array();
public static function split($sql, $perPage, $page, $link)
{
$page = !isset($page) || $page <= 0 ? 1 : intval($page);
$limit = $page - 1 == 0 ? 0 : ($page - 1) * $perPage;
$r = mysqli()->query("SELECT SQL_CALC_FOUND_ROWS * FROM ($sql) TBL LIMIT $limit, $perPage");
//if (!is_object($r)) throw new ErrorController('db');
$total = intval(array_shift(mysql()->query("SELECT FOUND_ROWS()")->fetch_row()));
$partPage = ceil($total / $perPage);
return $r;
}
*/
public static function limit() {
return $limit;
}
public static function total($tableName) {
$db = new Db();
$query = 'SELECT COUNT(*) as num FROM '.$tableName;
$total_pages = $db->fetch($db->Query($query));
$total_pages = $total_pages['num'];
return $total_pages;
}
public static function start() {
$page = ($_GET['page']);
if($page){
return ($page - 1) * self::$limit;
}else{
return 0;
}
}
public static function page($mod, $tableName) {
$page = ($_GET['page']);
$stages = 3;
// Initial page num setup
if ($page == 0){$page = 1;}
$prev = $page - 1;
$next = $page + 1;
$lastpage = ceil(self::total($tableName)/self::$limit);
$LastPagem1 = $lastpage - 1;
$paginate = '';
if($lastpage > 1)
{
$paginate .= '
";
}
//echo $total_pages.' Results';
// pagination
return $paginate;
}
}
$page = new Paginator;
class Gost {
static function gStatus() {
return array (
0 => array('icon' => 'status0 glyphicon glyphicon-ban-circle', 'title' => 'Недействующий'),
1 => array('icon' => 'status1 glyphicon glyphicon-ok-circle', 'title' => 'Действующий'),
666 => array('icon' => 'status2 glyphicon glyphicon-record', 'title' => 'Действующий, Документ отменен в части'),
);
}
}
class Forms extends Db {
public static function start($text, $error) {
$post = '';
foreach($text as $key => $massiv) {
switch($massiv['type']) {
case 'input':
$post .= '
';
break;
case 'textarea':
$label = ($massiv['title']) ? ''.$massiv['title'].' ' : '' ;
$post .= '
';
break;
case 'checkbox':
$post .= '
';
break;
case 'radio':
$post .= '
';
break;
case 'file':
$post .= '
'.$massiv['title'].'
';
break;
case 'header':
$post .= '
';
break;
case 'text':
$post .= '
';
break;
}
}
return $post;
}
}
class Plugins {
public static function start($option) {
//switch ($option) {
include(ROOT.'/plugins/'.$option.'.php');
return $content;
/*
case 'strop':
$content = self::strop();
break;
}
return $content;
}
public function strop() {
return 11;*/
}
}
if (!defined('_SAPE_USER')){
define('_SAPE_USER', '48d1edf221b147e72ddf225b086e4400');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/links/'._SAPE_USER.'/sape.php');
$o['host'] = basename(dirname($_SERVER['DOCUMENT_ROOT']));
$o['request_uri'] = @$_SERVER['REQUEST_URI'];
$o['force_show_code'] = false;
$o['charset'] = 'UTF-8';
$sape_article = new SAPE_articles($o);
$sape_context = new SAPE_context($o);
//ob_start(array(&$sape_context,'replace_in_page'));
$links['sape_article'] = $sape_article->return_announcements(1);
$o['host'] = basename(dirname($_SERVER['DOCUMENT_ROOT']));
$o['request_uri'] = @$_SERVER['REQUEST_URI'];
$o['force_show_code'] = false;
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
unset($o);
$links['sape'] = $sape->return_links();
include_once($_SERVER['DOCUMENT_ROOT'].'/links/xrink/mainlink.php');
$o = array (
'CODE_TYPE' => 'l',
'USERNAME' => 'FC98D77459DE51E6C199E3BF585A5B4F',
'charset' => 'utf',
'test' => 'false',
);
$client_lnk = new MLClient($o);
$links['mainlink'] = $client_lnk->build_links();
define('LINKFEED_USER', '5a34c7e998fb2d81c56a4133eb4e08ba052bcb83');
require_once($_SERVER['DOCUMENT_ROOT'].'/links/'.LINKFEED_USER.'/linkfeed.php');
$linkfeed = new LinkfeedClient();
$links['linkfeed'] = $linkfeed->return_links();
$array_empty = array('');
$links = array_diff($links, $array_empty);
?>
/*
$result = $db->GetAll('select * from s_'.$_GET['mod']);
foreach ($result as $ar) {
$ar1['alias'] = $sef->str2url($ar['title_short']);
$allowed = array('alias');
$data = $db->filterArray($ar1, $allowed);
$sql = 'update ?n set ?u where id=?i';
$db->query($sql, 's_'.$_GET['mod'], $data, $ar['id']);
}
*/
switch($_GET['option']) {
case 'alpha':
$title = 'База гост стандаров. ОКС';
$content .= '
Алфавитно-предметный указатель общероссийского классификатора стандартов
ОКС предназначен для использования при построении каталогов, указателей, выборочных перечней, библиографических материалов, формировании баз данных по международным, межгосударственным и национальным стандартам и другим нормативным и техническим документам, обеспечивая предоставление информации и распространение этих документов в национальном, межгосударственном и международном масштабах.
Объектами классификации ОКС являются стандарты и другие нормативные и технические документы.
Настоящий классификатор устанавливает коды и наименования классификационных группировок, используемых для классификации и индексирования объектов классификации.
Классификатор представляет собой иерархическую трехступенчатую классификацию с цифровым алфавитом кода классификационных группировок всех ступеней иерархического деления и имеет следующую структуру:
XX XXX XX
┬─ ─┬─ ┬─
│ │ └────────────────────── подгруппа
│ │
│ └───────────────────────────────── группа
│
└───────────────────────────────────────────── раздел
На первой ступени (раздел) классифицируются предметные области стандартизации, имеющие дальнейшее деление на второй и третьей ступенях классификации (группа, подгруппа).
Раздел идентифицируется двузначным цифровым кодом; код группы состоит из кода предметной области и трехзначного цифрового кода группы, разделенных точкой; код подгруппы состоит из кода группы и собственного двузначного кода, разделенных точкой
';
$content .= '
';
$catcodes = $db->getInd('category_code', 'SELECT * FROM s_gost_category order by parent_id, list_order');
$data = $db->getAll('SELECT category_code FROM s_alpha_category where category_code<>"" group by category_code order by category_code');
foreach ($data as $massiv) {
$content .= ''.$massiv['category_code'].' ';
}
$content .= '
';
$result = $db->query('SELECT * FROM s_alpha_category order by category_code, category_name');
while($massiv = $db->fetch($result)) {
$code[$massiv['category_code']][] = $massiv;
if ($massiv['parent_id'] <> 0) {
$parents[$massiv['parent_id']][] = $massiv;
}
}
$result = $db->query('SELECT * FROM s_alpha_category_xref order by category_id');
while($massiv = $db->fetch($result)) {
$xref[$massiv['category_id']][] = $massiv;
}
foreach ($data as $massiv) {
$content .= '
';
foreach ($code[$massiv['category_code']] as $mas) {
$content .= ''.$mas['category_name'].' ';
if (!empty($xref[$mas['category_id']])) {
foreach ($xref[$mas['category_id']] as $xf) {
$al = explode('.', $xf['product_id']);
if (!empty($al[1])) {
$alias = $al[0].'.'.$al[1];
} else {
$alias = $xf['product_id'];
}
$alias = (!empty($catcodes[$alias]['category_alias'])) ? $catcodes[$alias]['category_alias'] : '' ;
$content .= '
';
}
}
$content .= '
';
if (!empty($parents[$mas['category_id']])) {
$content .= '';
foreach ($parents[$mas['category_id']] as $mas2) {
$content .= ''.$mas2['category_name'].' ';
if (!empty($xref[$mas2['category_id']])) {
foreach ($xref[$mas2['category_id']] as $xf) {
$al = explode('.', $xf['product_id']);
if (!empty($al[1])) {
$alias = $al[0].'.'.$al[1];
} else {
$alias = $xf['product_id'];
}
$alias = (!empty($catcodes[$alias]['category_alias'])) ? $catcodes[$alias]['category_alias'] : '' ;
$content .= ' '.((!empty($alias)) ? '
' : '');
}
$content .= '
';
}
$content .= '';
}
$content .= '';
}
$content .= '';
}
$content .= '
';
}
$content .= '
';
$content = $sape_context->replace_in_text_segment($content);
//print_r($sape_context->_debug_actions );
foreach ($links as $m) {
$content .= '
'.$m.'
';
}
$content .= '
';
/*
$sql = 'SELECT * FROM s_news order by date desc, creation_date desc limit 0,15';
$sql = $db->Query($sql);
while ($ar = $db->fetch($sql)) {
$content .= ''.$ar['title'].' ';
}
*/
$content .= '
Стенды по безопасности производства работ
Стенды по охране труда помогут эффективно организовать процесс охраны труда
';
break;
case 'classifier':
$cats = $db->getRow('SELECT * FROM s_gost_category where category_alias="'.$_GET['alias'].'" ORDER BY parent_id, list_order, category_name');
$title = $cats['category_name'];
$GLOBALS['breadcrumbs'][] = $cats['category_name'];
$content = ''.$cats['category_name'].'
';
$result = $db->query('SELECT * FROM s_gost_category ORDER BY parent_id, list_order, category_name');
while($massiv = $db->fetch($result)) {
$gostall[$massiv['parent_id']][$massiv['category_id']] = $massiv;
}
foreach($gostall[$cats['category_id']] as $massiv) {
$content .= '
';
}
foreach ($links as $m) {
$content .= '
'.$m.'
';
}
$content .= '
';
break;
case 'section':
$title = 'ГОСТ';
//$GLOBALS['breadcrumbs'][] = 'ГОСТ';
$content = 'ГОСТ ';
$content .= '';
$ar = $db->getAll('select * from s_gost_category where parent_id=0 order by category_code, category_name');
if (!empty($ar)) { array_filter($ar);
foreach ($ar as $key => $massiv) {
$content .= ''.$massiv['category_name'].' ';
}
}
$content .= '
';
foreach ($links as $m) {
$content .= ''.$m.'
';
}
$content .= '';
break;
case 'category':
$result = $db->query('SELECT * FROM s_gost_category ORDER BY parent_id, list_order, category_name');
while($massiv = $db->fetch($result)) {
$catall[$massiv['category_id']] = $massiv;
}
$cat = $db->getRow('select * from s_gost_category where category_alias=?s', $_GET['alias']);
$catid = $cat['category_id'];
$title = 'ГОСТы - '.$cat['category_name'];
//$GLOBALS['breadcrumbs'][] = 'ГОСТ ';
if (!empty($cat['parent_id'])) {
/*
$parents = $cat['parent_id'];
while ($parents <> 0) { // && $parents <> 1000 && $parents <> 2000
$breadcrumbs_parents[] = ''.$catall[$parents]['category_name'].' ';
$parents = $catall[$parents]['parent_id'];
}
$breadcrumbs_parents = array_reverse($breadcrumbs_parents);
$GLOBALS['breadcrumbs'] = array_merge($GLOBALS['breadcrumbs'], $breadcrumbs_parents);
*/
$parents = $cat['parent_id'];
while ($parents <> 0) { // && $parents <> 1000 && $parents <> 2000
$breadcrumbs_x[] = array(
'category_id' => $catall[$parents]['category_id'],
'category_alias' => $catall[$parents]['category_alias'],
'category_name' => $catall[$parents]['category_name']
);
$parents = $catall[$parents]['parent_id'];
}
$breadcrumbs_x = array_reverse($breadcrumbs_x);
foreach ($breadcrumbs_x as $mas) {
if ($breadcrumbs_x[0]['category_id'] == $mas['category_id']) {
$breadcrumbs_parents[] = ''.$mas['category_name'].' ';;
} else {
$breadcrumbs_parents[] = ''.$mas['category_name'].' ';;
}
}
}
if (!empty($GLOBALS['breadcrumbs'])) {
$GLOBALS['breadcrumbs'] = array_merge($GLOBALS['breadcrumbs'], $breadcrumbs_parents);
} else {
$GLOBALS['breadcrumbs'] = $breadcrumbs_parents;
}
$GLOBALS['breadcrumbs'][] = $cat['category_name'];
$content = ''.$cat['category_name'].' ';
$ar = $db->getAll('select * from s_gost_category where parent_id=?s', $cat['category_id']);
if (!empty($ar)) { array_filter($ar);
$content .= '';
}
$ar = $db->getAll('select * from s_gost_category where category_alias=?s', $_GET['alias']);
foreach($ar as $key => $massiv) {
if ($massiv['category_alias'] == $_GET['alias']) {
if(strpos($massiv['category_description'], ' ') === false)
{
$content .= shop::content_regex($massiv['category_description']);
} else {
$text = explode(' ', $massiv['category_description']);
$content .= $text[0];
}
}
}
$count = $db->getOne('select count(*) as xxx from s_gost as g, s_gost_xref as x, s_gost_text as t where g.id=t.id && g.id=x.product_id && x.category_id=?i order by g.title_short', $catid);
switch($count) {
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
case '10':
case '11':
if(!empty($links)) { $i=1;
//print_r($links);
foreach ($links as $k => $v) {
if (strstr($v, 'href')!==FALSE) {
$z = explode(' | ', $v);
if (!empty($z[1])) {
foreach ($z as $zz) {
$i = $i+1;
$linkz[$i] = $zz;
}
} else { $i = $i+1;
$linkz[$i] = $v;
}
}
}
}
break;
default:
if(!empty($links)) { $i=5;
//print_r($links);
foreach ($links as $k => $v) {
if (strstr($v, 'href')!==FALSE) {
if (strstr($v, 'href')!==FALSE) {
$z = explode(' | ', $v);
if (!empty($z[1])) {
foreach ($z as $zz) {
$i = $i+6;
$linkz[$i] = $zz;
}
} else { $i = $i+6;
$linkz[$i] = $v;
}
}
}
}
}
break;
}
//if (@$_GET['display'] <> 'no_list') {
$content .= '';
$data = $db->getAll('select * from s_gost as g, s_gost_xref as x, s_gost_text as t where g.id=t.id && g.id=x.product_id && x.category_id=?i order by g.title_short', $catid); // field(g.status, 1,666,0),
if (!empty($data)) {
foreach ($data as $k => $ar) {
if ($count > 5) {
if (!empty($linkz)) {
if (!empty($linkz[$k])) {
$content .= '
'.$linkz[$k].'
';
}
}
}
$st = Gost::gStatus();
$icon = (!empty($st[$ar['status']]['icon'])) ? $st[$ar['status']]['icon'] : '' ;
//$title = (!empty($st[$ar['status']]['title'])) ? $st[$ar['status']]['title'] : '' ;
//$content .= $ar['title_short'].' | '.$ar['title'].'
';
if (!empty($ar['body'])) {
$content .= '
'.$ar['title_short'].'
'.$ar['title'].'
';
} else {
$content .= '
'.$ar['title_short'].'
'.$ar['title'].'
';
}
switch($count) {
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
if (!empty($linkz)) {
if ($count-1 == $k) {
foreach ($linkz as $k => $l) {
$content .= '
'.$l.'
';
}
}
}
break;
default:
}
}
} else {
if (!empty($linkz)) {
foreach ($linkz as $k => $l) {
$content .= '
'.$l.'
';
}
}
}
$content .= '
';
//}
$content .= ((!empty($text[1])) ? $text[1] : '' );
break;
case 'view':
$result = $db->query('SELECT * FROM s_gost_category ORDER BY parent_id, list_order, category_name');
while($massiv = $db->fetch($result)) {
$catall[$massiv['category_id']] = $massiv;
}
$ar = $db->getRow('select * from s_gost where alias=?s', $_GET['alias']);
if ( $ar ) {
$ar['body'] = $db->GetOne('select body from s_gost_text where alias=?s', $ar['alias']);
$parents = $ar['category_id'];
while ($parents <> 0) { // && $parents <> 1000 && $parents <> 2000
$breadcrumbs_x[] = array(
'category_id' => $catall[$parents]['category_id'],
'category_alias' => $catall[$parents]['category_alias'],
'category_name' => $catall[$parents]['category_name']
);
$parents = $catall[$parents]['parent_id'];
}
$breadcrumbs_x = array_reverse($breadcrumbs_x);
foreach ($breadcrumbs_x as $mas) {
if ($breadcrumbs_x[0]['category_id'] == $mas['category_id']) {
$breadcrumbs_parents[] = ''.$mas['category_name'].' ';;
} else {
$breadcrumbs_parents[] = ''.$mas['category_name'].' ';;
}
}
if (!empty($GLOBALS['breadcrumbs'])) {
$GLOBALS['breadcrumbs'] = array_merge($GLOBALS['breadcrumbs'], $breadcrumbs_parents);
} else {
$GLOBALS['breadcrumbs'] = $breadcrumbs_parents;
}
$title = $ar['title_short'].' - '. $ar['title'];
$breadcrumbs[] = Dir::cutStr($ar['title'], 100);
$ar['body'] = $dir->links_index($ar['body'], $links);
$ar['body'] = shop::content_regex($ar['body']);
//$ar['body'] = $sape_context->replace_in_text_segment($ar['body']);
//$text = explode(' ', $ar['body']);
$content .= ''.$ar['title_short'].' '.$ar['title'].'
' . $ar['body'] ;
//(!$ar['short_text']) ? $content .= $ar['full_text'] : $content .= $ar['short_text'];
/*if (Dir::cntglob(ROOT.'/files/'.$_GET['mod'].'/'.$ar['id'].'/*.*') == 1) {
$content .= $text[0].((!empty($text[1])) ? $text[1] : '' );
} elseif (Dir::cntglob(ROOT.'/files/'.$_GET['mod'].'/'.$ar['id'].'/*.*') == 0) {
$content .= $text[0].((!empty($text[1])) ? $text[1] : '' );
} else {
$content .= $text[0].' '.((!empty($text[1])) ? $text[1] : '' );
} */
$content .= '
';
$content = $sape_context->replace_in_text_segment($content);
} else {
header('location: /404/');
}
//}
break;
}
//$content .= ' ';
//$script_start = microtime(TRUE);
?>
-->
-->
// if ( (($params[0] == 'oks') || ($params[0] == 'kgs')) && ($params[1] <> '') ) { ?>
if ( ($params[1] <> '') ) { ?>
} else { ?>
} ?>
/*
$cats = ($params[0] == 'gost') ? $db->getOne('SELECT parent_id FROM s_gost_category where category_alias="'.$params[1].'" ORDER BY parent_id, list_order, category_name') : '' ;
$result = $db->query('SELECT * FROM s_gost_category ORDER BY parent_id, list_order, category_name');
while($massiv = $db->fetch($result)) {
$gostall[$massiv['parent_id']][$massiv['category_id']] = $massiv;
}
foreach($gostall[2000] as $massiv) {
echo '
';
}
?>
} ?>*/?>
/*
Последние документы
$catall = $db->getInd('category_id', 'SELECT * FROM s_gost_category ORDER BY parent_id, list_order, category_name');
$massiv = $db->getAll('select * from s_gost as g order by g.id desc limit 0,7');
foreach ($massiv as $ar) {
echo '
'.$ar['title_short'].' '.$ar['title'].'
';
///gost/'.$catall[$ar['category_id']]['category_alias'].'
}
?>
*/?>