From f0fa97a2ff28d89e73a7467a8d7941c3a5ca2e64 Mon Sep 17 00:00:00 2001 From: igor Date: Fri, 30 Jul 2021 12:36:40 +0600 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D1=85=D0=BE=D0=B4=20?= =?UTF-8?q?=D0=BD=D0=B0=20HTML5=20=D0=B8=20Group=5Fid=20to=20Role=5Fid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- metadata/dbms/editrecord.js | 2 +- metadata/dbms/html5doctor.css | 102 ++++++++++++++++++++++ metadata/dbms/login.js | 2 +- metadata/dbms/records.php | 41 +++++++-- metadata/dbms/showrecord.js | 10 +-- metadata/dbms/tools.js | 18 ++-- metadata/include/kcfinder/conf/config.php | 2 +- metadata/include/tools.php | 2 +- metadata/tree/tree.js | 4 +- metadata/tree/treetools.php | 2 +- 10 files changed, 156 insertions(+), 29 deletions(-) create mode 100644 metadata/dbms/html5doctor.css diff --git a/metadata/dbms/editrecord.js b/metadata/dbms/editrecord.js index bea0eb9..6893146 100644 --- a/metadata/dbms/editrecord.js +++ b/metadata/dbms/editrecord.js @@ -20,7 +20,7 @@ class EdtRec this.win.setContent('
'); let eDiv=document.getElementById('eDiv'+this.uid); - eDiv.innerHTML = '
' + eDiv.innerHTML = '
' if(caption!='') this.win.setCaption(document.createTextNode(caption)); diff --git a/metadata/dbms/html5doctor.css b/metadata/dbms/html5doctor.css new file mode 100644 index 0000000..9792c13 --- /dev/null +++ b/metadata/dbms/html5doctor.css @@ -0,0 +1,102 @@ +/* +html5doctor.com Reset Stylesheet +v1.6.1 +Last Updated: 2010-09-17 +Author: Richard Clark - http://richclarkdesign.com +Twitter: @rich_clark +*/ + +html, body, div, span, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +abbr, address, cite, code, +del, dfn, em, img, ins, kbd, q, samp, +small, strong, sub, sup, var, +b, i, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, figcaption, figure, +footer, header, hgroup, menu, nav, section, summary, +time, mark, audio, video { + margin:0; + padding:0; + border:0; + outline:0; + font-size:100%; + vertical-align:baseline; + background:transparent; +} + +body { + line-height:1; +} + +article,aside,details,figcaption,figure, +footer,header,hgroup,menu,nav,section { + display:block; +} + +nav ul { + list-style:none; +} + +blockquote, q { + quotes:none; +} + +blockquote:before, blockquote:after, +q:before, q:after { + content:''; + content:none; +} + +a { + margin:0; + padding:0; + font-size:100%; + vertical-align:baseline; + background:transparent; +} + +/* change colours to suit your needs */ +ins { + background-color:#ff9; + color:#000; + text-decoration:none; +} + +/* change colours to suit your needs */ +mark { + background-color:#ff9; + color:#000; + font-style:italic; + font-weight:bold; +} + +del { + text-decoration: line-through; +} + +abbr[title], dfn[title] { + border-bottom:1px dotted; + cursor:help; +} + +table { + border-collapse:collapse; + border-spacing:0; +} + +/* change border colour to suit your needs */ +hr { + display:block; + height:1px; + border:0; + border-top:1px solid #cccccc; + margin:1em 0; + padding:0; +} + +input, select { + vertical-align:middle; +} \ No newline at end of file diff --git a/metadata/dbms/login.js b/metadata/dbms/login.js index 5583732..32af443 100644 --- a/metadata/dbms/login.js +++ b/metadata/dbms/login.js @@ -111,7 +111,7 @@ class DBMSUser
\n\ \n\ \n\ -
\n\ +
\n\ \n\ \n\ \n\ diff --git a/metadata/dbms/records.php b/metadata/dbms/records.php index 478a6a5..cc83fa1 100644 --- a/metadata/dbms/records.php +++ b/metadata/dbms/records.php @@ -280,7 +280,7 @@ //Вернём значение прав доступа для запрошенного объекта //$allow=true; $allow=false; - //$sql_query='select a.*,at.name from _Access a, _Actions at where a.del=false and at.id=a.action_id and at.name=\'Insert_'.$typename.'\' and a.group_id in (select group_id from _UsersRoles where user_id='.$_SESSION['USER_ID'].');' + //$sql_query='select a.*,at.name from _Access a, _Actions at where a.del=false and at.id=a.action_id and at.name=\'Insert_'.$typename.'\' and a.role_id in (select group_id from _UsersRoles where user_id='.$_SESSION['USER_ID'].');' $sql_query='select '.$Schema.'p_getaccess('.getSQLValue(gettype($_SESSION['USER_ID']),$_SESSION['USER_ID']).',\'Insert_'.$typename.'\') as allow;'; $res = $db->query($sql_query); @@ -293,7 +293,7 @@ $currNode->setAttributeNode($xmlAttr); $allow=false; - //$sql_query='select a.*,at.name from _Access a, _Actions at where a.del=false and at.id=a.action_id and at.name=\'Update_'.$typename.'\' and a.group_id in (select group_id from _UsersRoles where user_id='.$_SESSION['USER_ID'].');'; + //$sql_query='select a.*,at.name from _Access a, _Actions at where a.del=false and at.id=a.action_id and at.name=\'Update_'.$typename.'\' and a.role_id in (select group_id from _UsersRoles where user_id='.$_SESSION['USER_ID'].');'; $sql_query='select '.$Schema.'p_getaccess('.getSQLValue(gettype($_SESSION['USER_ID']),$_SESSION['USER_ID']).',\'Update_'.$typename.'\') as allow;'; $res = $db->query($sql_query); while ($row = $res->fetch(PDO::FETCH_ASSOC))// $row - ассоциативный массив значений, ключи - названия столбцов @@ -305,7 +305,7 @@ $currNode->setAttributeNode($xmlAttr); $allow=false; - //$sql_query='select a.*,at.name from _Access a, _Actions at where a.del=false and at.id=a.action_id and at.name=\'Delete_'.$typename.'\' and a.group_id in (select group_id from _UsersRoles where user_id='.$_SESSION['USER_ID'].');'; + //$sql_query='select a.*,at.name from _Access a, _Actions at where a.del=false and at.id=a.action_id and at.name=\'Delete_'.$typename.'\' and a.role_id in (select group_id from _UsersRoles where user_id='.$_SESSION['USER_ID'].');'; $sql_query='select '.$Schema.'p_getaccess('.getSQLValue(gettype($_SESSION['USER_ID']),$_SESSION['USER_ID']).',\'Delete_'.$typename.'\') as allow;'; $res = $db->query($sql_query); while ($row = $res->fetch(PDO::FETCH_ASSOC))// $row - ассоциативный массив значений, ключи - названия столбцов @@ -787,7 +787,7 @@ //загружаем мета данные и смотрим какие поля должны передать клиенту $mdoc = new DOMDocument(); try - { //$mdoc->load('metadata.xml'); + { $mdoc->loadXML($xmls); } catch (Exception $e) { sendError($e->getMessage()); @@ -920,7 +920,7 @@ $res = $db->query("select 1 from _Users where del=false and email = '$login';"); if($res->rowCount()>0) { - mail($login,'BigFootTrade.kz','Not implement',"Content-type: text/html; charset=utf-8\r\nFrom: BigFootTrade Site "); + mail($login,'rigor.kz','Not implement',"Content-type: text/html; charset=utf-8\r\nFrom: rigor Site "); } }elseif($cmd==1) //Logout { @@ -1007,6 +1007,27 @@ }else if ($fn==8)//Получить отчёт как Excel.xls файл (почти тоже самое что и функция 4) { + $dir='./temp/'; + + if(isset($_REQUEST['file'])) { + $file = $_REQUEST['file']; + $myFile = $dir.$file; + if(file_exists($myFile)) + { + header("Content-type: application/octet-stream"); + header('Content-Disposition: attachment; filename="'.$file.'"'); + header('Content-Length: '.filesize($myFile)); + readfile($myFile); + exit(); + }else + { + header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404); + echo 'File "'.$file.'" not found!'; + exit; + } + exit; + } + session_write_close(); //Разблокируем сессионный файл так как запросы могут быть достаточно долгими //if (!isset($_SESSION['USER_ID']) || $_SESSION['USER_ID']=='') sendError(trt('You are not logged in!')); @@ -1029,6 +1050,7 @@ { $objXMLDocument=$currNode->ownerDocument; + $objListR = findFirstNode($nTypeR,'objects-list'); //В переданном запросе может быть не полный фильтр заполняем серверный значениями из переданного $f1=findNodeOnPath($currNode,'objects-list/filter'); $f2=findNodeOnPath($nTypeR,'objects-list/filter'); @@ -1116,6 +1138,10 @@ $nextnode = $nextnode->nextSibling; } $sql_query=str_replace('${_user_id}',getSQLValue(gettype($_SESSION['USER_ID']),$_SESSION['USER_ID']),$sql_query); + if($objListR!=null && $objListR->getAttribute('order')!='' && $objListR->getAttribute('order')!=null && $objListR->getAttribute('order')!='null') + { + $sql_query=str_replace('${_order}',findNodeOnAttribute(findFirstNode($currNode,'objects-list'), "column","n",$objListR->getAttribute("order"))->getAttribute("order"),$sql_query); + }else $sql_query=str_replace('${_order}','1',$sql_query); //Выполняем запрос try @@ -1125,7 +1151,6 @@ } //Сохраняем результсет в файл в виде HTML с расширением XLS - $dir='./temp/'; $file='file_'.rand(0,1000).'.xls'; $myFile = $dir.$file; @@ -1258,7 +1283,7 @@ { session_write_close(); //Разблокируем сессионный файл так как запросы могут быть достаточно долгими //Клиент передаёт название таблицы, название поля, id поля - $typename = $_REQUEST['t']; //Тип из metadata.xml + $typename = $_REQUEST['t']; //Тип $field = $_REQUEST['f']; //Название поля с двоичными данными $name = $_REQUEST['n']; //поле с названием файла $idval = $_REQUEST['i']; //Идентификатор поля в базе @@ -1277,7 +1302,7 @@ //Ищем поле в метаданных $objXMLDocument = new DOMDocument(); try - { //$objXMLDocument->load('metadata.xml'); + { $objXMLDocument->loadXML($xmls); } catch (Exception $e) { echo $e->getMessage(); diff --git a/metadata/dbms/showrecord.js b/metadata/dbms/showrecord.js index 8808339..6e50433 100644 --- a/metadata/dbms/showrecord.js +++ b/metadata/dbms/showrecord.js @@ -81,7 +81,7 @@ class SRec if(this.rwin!=null) { this.rwin.hideProgressBar(); - this.rwin.setContent('
'+trt('Download_report')+': "'+this.win.getCaption().innerHTML+'".
'); + this.rwin.setContent('
'+trt('Download_report')+': "'+this.win.getCaption().innerHTML+'".
'); } }else alert2(trt('Alert'),"Unknown function! fn=\""+fn+"\"" ); @@ -141,7 +141,7 @@ class SRec { let str='\
\ -
\ +
\ \ \
\ @@ -185,7 +185,7 @@ class SRec document.getElementById('SRec_Add_'+this.uid).onclick = ()=>this.insertRecord(); document.getElementById('SRec_Del_'+this.uid).onclick = ()=>this.deleteRecord(); - document.getElementById('SRec_Exc_'+this.uid).onclick = ()=>this.showreport('xls'); + document.getElementById('SRec_Exc_'+this.uid).onclick = ()=>this.showReport('xls'); document.getElementById('SRec_Rfr_'+this.uid).onclick = ()=>{this.appendFilter(); this.sendFilter(-1,0);}; } @@ -1437,7 +1437,7 @@ class SRec if (error_msg!="") alert2(trt('Alert'),"ShowRecords: \n"+error_msg); } - showreport(ext) + showReport(ext) { if(this.rwin!=null) this.rwin.Close(); @@ -1446,7 +1446,7 @@ class SRec this.rwin.setParent(this.win); this.rwin.setSize(280,130); this.rwin.setCaption(trt('Report')); - this.rwin.setContent('
'+trt('Preparing_of_report')+'
'); + this.rwin.setContent('
'+trt('Preparing_of_report')+'
'); this.appendFilter(); //Call data from server diff --git a/metadata/dbms/tools.js b/metadata/dbms/tools.js index db2a244..96e9889 100644 --- a/metadata/dbms/tools.js +++ b/metadata/dbms/tools.js @@ -1204,7 +1204,7 @@ class TWin this.tWinId=Wins.add(this); /* var hd=''; - hd+=''; + hd+='
'; hd+=' '; hd+=' '; hd+=' '; @@ -1218,7 +1218,7 @@ class TWin hd+='
'; var str=''; - str+=''; + str+='
'; str+=' '; str+=' '; str+=' '; @@ -1227,7 +1227,7 @@ class TWin str+=' '; str+=' '; str+=' '; - str+=' '; + str+=' '; str+=' '; str+=' '; str+=' '; @@ -1239,8 +1239,8 @@ class TWin */ /* var str=''; - str+='
'+hd+'
 
 
'; - str+=' '; + str+='
'; + str+=' '; str+=' '; str+=' '; str+=' '; @@ -1248,7 +1248,7 @@ class TWin str+=' '; str+=' '; str+=' '; - str+=' '; + str+=' '; str+=' '; str+=' '; str+=' '; @@ -1267,8 +1267,8 @@ class TWin } let str=''; - str+='
'; - str+=' '; + str+='
'+(this.disableClosing ? '' : '')+'
'; + str+=' '; str+=' '; str+=' '; str+=' '; @@ -1276,7 +1276,7 @@ class TWin str+=' '; str+=' '; str+=' '; - str+=' '; + str+=' '; str+=' '; str+=' '; str+=' '; diff --git a/metadata/include/kcfinder/conf/config.php b/metadata/include/kcfinder/conf/config.php index 844b9b5..1975fb0 100644 --- a/metadata/include/kcfinder/conf/config.php +++ b/metadata/include/kcfinder/conf/config.php @@ -23,7 +23,7 @@ $_CONFIG = array( 'disabled' => false, 'uploadURL' => "upload", - 'uploadDir' => "O:/www/www.bigfoottrade.kz_old/shop/", + 'uploadDir' => "O:/www/www.rigor.kz_old/shop/", 'theme' => "default", 'types' => array( diff --git a/metadata/include/tools.php b/metadata/include/tools.php index b0d7332..fe19623 100644 --- a/metadata/include/tools.php +++ b/metadata/include/tools.php @@ -16,7 +16,7 @@ function trt($text) global $db,$Schema; $result=''; - $sql='select translation from '.$Schema.'._translations where del=false and language_id='.$_SESSION["LNG"].' and identifier=\''.$text.'\';'; + $sql='select translation from '.$Schema.'_translations where del=false and language_id='.$_SESSION["LNG"].' and identifier=\''.$text.'\';'; //$sql='select translation from main._translations where del=false and language_id=(select id from main._languages where short_name=\''.$_SESSION["LNG"].'\') and identifier=\''.$text.'\';'; $res = NULL; try diff --git a/metadata/tree/tree.js b/metadata/tree/tree.js index 4fb377c..eb6273d 100644 --- a/metadata/tree/tree.js +++ b/metadata/tree/tree.js @@ -285,7 +285,7 @@ function TMenu(v_obj,v_scr,v_treepath) //Горизонтальное меню pn=pn.parent; } //Шаблон кнопки по умолчанию - if(str=='') str='
'+(this.disableClosing ? '' : '')+'
  ${name}  
'; + if(str=='') str='
  ${name}  
'; str=str.replace(/\${path}/g, tn.getTreePath()); str=str.replace(/\${hash}/g, crc32(tn.getTreePath())); @@ -417,7 +417,7 @@ function TMenu(v_obj,v_scr,v_treepath) //Горизонтальное меню if(str!='') break; nTmp=nTmp.parentNode; } - if(str=='') str='
  ${name}  
'; + if(str=='') str='
  ${name}  
'; str=str.replace(/\${path}/g, this.m_tn[this.m_tn.length-1].getTreePath()); str=str.replace(/\${name}/g, getCdataValue(nodeTree)); str=str.replace(/\${none}/g, nodeTree.getAttribute("c")=='1' ? 'block' : 'none'); diff --git a/metadata/tree/treetools.php b/metadata/tree/treetools.php index ab69d38..b7507e1 100644 --- a/metadata/tree/treetools.php +++ b/metadata/tree/treetools.php @@ -503,7 +503,7 @@ function getSiteMap($nParent,$nParams,$db,$first,$path) $rСol.=''."\n"; $result.=' '."\n"; - $result.=' http://'.$_SERVER["SERVER_NAME"].$url.''."\n"; + $result.=' https://'.$_SERVER["SERVER_NAME"].$url.''."\n"; $result.=' '.$date.''."\n"; $result.=' daily'."\n"; $result.=' '."\n";