@Ghazascanner
_2019runbot
Ghazascanner File Manager
server :Linux www.thesweb.ru 4.19.0-22-amd64 #1 SMP Debian 4.19.260-1 (2022-09-29) x86_64
Current Path :
/
var
/
www
/
www-root
/
data
/
www
/
new.labinform.ru
/
lii_translate
/
Path :
Upload File :
New :
File
Dir
/var/www/www-root/data/www/new.labinform.ru/lii_translate/commonf.php
<?php function RoundFloatByZnak($val, $cnt) { if ($val == null) return $val; $k = 0; while ($k < 8) { if (floor($val * pow(10, $k)) != 0) break; $k++; } return round($val, $k+$cnt-1); } function copyThesInst_getConn($inst) { $connect_string = "host=" . $inst['srv'] . " port=5432 dbname=" . $inst['db'] . " user=" . $inst['login'] . " password=" . $inst['pass']; $conn = pg_connect($connect_string); return $conn; } function copyThesInst_get4user($copyThesInst, $username) { $insts = Array(); foreach($copyThesInst as $inst) { $copyConn = copyThesInst_getConn($inst); //die(echo(pg_last_error ())); if ($copyConn) { $cnt = get_data_one_val($copyConn, "SELECT count(*) FROM users WHERE login=" . sstr($username)); if ($cnt) $insts[] = $inst; } } return $insts; } function FormatErrors( $errors ) { echo "Error information: \n"; foreach ( $errors as $error ) { echo "SQLSTATE: ".$error['SQLSTATE']."\n"; echo "Code: ".$error['code']."\n"; echo "Message: ".$error['message']."\n"; } } function exec_sql($conn, $sql) { $res = pg_query($conn, $sql); pg_free_result( $res); return true; } function get_data_array($conn, $sql) { $res = pg_query($conn, $sql); //$res2 = pg_fetch_assoc($result); $data = array(); while($row = pg_fetch_assoc($res)) { $data[] = $row; } pg_free_result( $res); return $data; } function get_data_one_val($conn, $sql) { $res = pg_query($conn, $sql); $data = ''; if ($row = pg_fetch_row($res)) { //echo ($sql); //print_r($row); $data = $row[0]; } pg_free_result( $res); return $data; } function get_data_one_row($conn, $sql) { $res = pg_query($conn, $sql); $data = array(); if ($row = pg_fetch_assoc($res)) { $data = $row; } pg_free_result( $res); return $data; } function get_rubricator_prefix($conn, $rubricatorid) { $rubcator_prefix = ''; $sqlx = "SELECT rubrdir FROM rubcator WHERE rubricatorid = " . $rubricatorid; $r = get_data_one_row($conn, $sqlx); if (($r != null)&&($r['rubrdir'] != '')) { $r['rubrdir'] = str_replace('/', '_', $r['rubrdir']); $r['rubrdir'] = str_replace('\\', '_', $r['rubrdir']); //$r['rubrdir'] = str_replace('RUBRICS_', 'rrr_', $r['rubrdir']); //$r['rubrdir'] = str_replace('rubrics_', 'rrr_', $r['rubrdir']); //$r['rubrdir'] = str_replace('Rubrics_', 'rrr_', $r['rubrdir']); //die($r['rubrdir'][count($r['rubrdir'])-1]); $r['rubrdir'] = '___' . $r['rubrdir']; if (($r['rubrdir'] != '') && ($r['rubrdir'][strlen($r['rubrdir'])-1]) != '_') $r['rubrdir'] .= '_'; $sqlx = "select count(*) as cnt from pg_tables where lower(tablename)=lower('" . $r['rubrdir'] . "rubrics')"; $r2 = get_data_one_row($conn, $sqlx); if ($r2['cnt'] > 0) { $rubcator_prefix = $r['rubrdir']; } } return $rubcator_prefix; } function get_session_info($conn, $ssid) { $q = 'select to_char(s1.datestart + s1.timestart, \'YYYY-MM-DD HH24:MI:SS\') AS dt, u1.login, s1.sessionid, s1.datestart, s1.timestart, s1.dateend, s1.timeend FROM session s1 JOIN users u1 ON u1.userid = s1.userid WHERE s1.sessionid = ' . $ssid; return get_data_one_row($conn, $q); } function correctString ($string) { $search = array( "й","ц","у","к","е","н","г","ш","щ","з","х","ъ", "ф","ы","в","а","п","р","о","л","д","ж","э", "я","ч","с","м","и","т","ь","б","ю", "q","w","e","r","t","y","u","i","o","p","[","]", "a","s","d","f","g","h","j","k","l",";","'", "z","x","c","v","b","n","m",",","." ); $replace = array( "q","w","e","r","t","y","u","i","o","p","[","]", "a","s","d","f","g","h","j","k","l",";","'", "z","x","c","v","b","n","m",",",".", "й","ц","у","к","е","н","г","ш","щ","з","х","ъ", "ф","ы","в","а","п","р","о","л","д","ж","э", "я","ч","с","м","и","т","ь","б","ю" ); return str_replace($search, $replace, strtolower($string)); } function dtstr($ds) { $res = ''; if ($ds == '') return sstr($res); $dd = date_parse($ds); $res .= $dd['year']; if ($dd['month'] < 10) $res .= '0'; $res .= $dd['month']; if ($dd['day'] < 10) $res .= '0'; $res .= $dd['day']; return sstr($res); } function sstr($ds) { $res = $ds; if ($res == '') $res = 'NULL'; else $res = "'" . str_replace("'", "''", $res) . "'"; return $res; } function nstr($ds) { $res = $ds; if ($res == '') $res = 'NULL'; return $res; } function data_to_js_one_row($v) { return str_replace("\n", '\n', str_replace("\r\n", '\n', $v)); } function get_user_ss_info($conn, $userssid) { if ($userssid) return get_data_one_val($conn, "SELECT u.login || ' [' || to_char(datestart + timestart, 'YYYY-MM-DD HH24:MI:SS') || ']' as sessioninfo FROM session s JOIN users u ON u.userid = s.userid WHERE sessionid= " . $userssid); else return '[нет данных]'; } function get_trans_rel_data($conn, $relid, $aspect) { $aspect = trim($aspect); $r = get_data_one_row($conn, "SELECT symrelationid AS relationid, symaspect AS aspect FROM relsymmetry WHERE relationid = $relid AND aspect = '$aspect'"); if (!isset($r['relationid'])) $r = array('relationid' => $relid, 'aspect' => $aspect); $r['relationstr'] = get_data_one_val($conn, "SELECT relationstr FROM relnames WHERE relationid = " . $r['relationid']); return $r; } function calc_33_67_prerekvizit($conn) { exec_sql($conn, 'DELETE FROM relats WHERE (relationid = 33 or relationid = 67) and relats.auto = 1;'); exec_sql($conn, " INSERT INTO relats(concept1id, concept2id, relationid, auto, concept2cutstr, isarguable, aspect) SELECT concept1id, concept2id, 67, 1, concept2cutstr, isarguable, aspect FROM relats r where concept1id in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) and concept2id in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) and not concept2id in (SELECT childid FROM trees WHERE conceptid = (SELECT conceptid FROM concepts WHERE conceptstr = 'ОРГАНИЗАЦИЯ, УЧРЕЖДЕНИЕ')) and (relationid = 10) AND not exists(SELECT 1 FROM relats r2 WHERE r2.concept1id = r.concept1id AND r2.concept2id = r.concept2id AND (r2.relationid = 67 or r2.relationid = 33)); INSERT INTO relats(concept1id, concept2id, relationid, auto, concept2cutstr, isarguable, aspect) SELECT distinct concept1id, concept2id, 67, 1, '--', isarguable, '' FROM relats r where concept1id in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) and concept2id in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) and not concept2id in (SELECT childid FROM trees WHERE conceptid = (SELECT conceptid FROM concepts WHERE conceptstr = 'ОРГАНИЗАЦИЯ, УЧРЕЖДЕНИЕ')) and ( relationid = 50 and aspect = '1') AND not exists(SELECT 1 FROM relats r2 WHERE r2.concept1id = r.concept1id AND r2.concept2id = r.concept2id AND (r2.relationid = 67 or r2.relationid = 33)); INSERT INTO relats(concept1id, concept2id, relationid, auto, concept2cutstr, isarguable, aspect) SELECT distinct r3.childid, r.concept2id, 67, 1, '--', B'0', '' FROM relats r JOIN trees r3 ON r3.conceptid = r.concept1id and r.relationid = 67 and r3.relationid = 30 WHERE r3.childid in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) AND r.concept1id in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) and not r3.childid /*r.concept1id*/ in (SELECT childid FROM trees WHERE conceptid = (SELECT conceptid FROM concepts WHERE conceptstr = 'ОРГАНИЗАЦИЯ, УЧРЕЖДЕНИЕ')) AND not exists(SELECT * FROM relats r2 WHERE r2.concept1id = r3.childid AND r2.concept2id = r.concept2id AND (r2.relationid = 67 or r2.relationid = 33)) GROUP BY r3.childid, r.concept2id; INSERT INTO relats(concept1id, concept2id, relationid, auto, concept2cutstr, isarguable, aspect) SELECT distinct r.concept1id, r3.conceptid, 67, 1, '--', B'0', 'B' FROM relats r JOIN trees r3 ON r3.childid = r.concept2id and r.relationid = 67 and r3.relationid = 30 WHERE r3.conceptid in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) AND r.concept1id in (SELECT conceptid FROM concepts where domainmask & 4096 = 4096 or domainmask & 64 = 64) and not r3.conceptid in (SELECT childid FROM trees WHERE conceptid = (SELECT conceptid FROM concepts WHERE conceptstr = 'ОРГАНИЗАЦИЯ, УЧРЕЖДЕНИЕ')) AND not exists(SELECT 1 FROM relats r2 WHERE r2.concept1id = r.concept1id AND r2.concept2id = r3.conceptid AND (r2.relationid = 67 or r2.relationid = 33)) GROUP BY r.concept1id, r3.conceptid;"); exec_sql($conn, " INSERT INTO relats(concept1id, concept2id, relationid, auto, concept2cutstr, isarguable, aspect) SELECT r.concept2id, r.concept1id, 33, 1, r.concept2cutstr, '0', aspect FROM relats r WHERE relationid = 67 and auto = 1;"); } function set_last_concid_hist($conn, $ssid, $conceptid) { try { $last = get_data_one_val($conn, "SELECT coalesce((SELECT conceptid FROM user_hist WHERE sessionid = $ssid ORDER BY sessionid DESC, dt DESC limit 1 ), 0)"); if ($last != $conceptid) { $res = pg_query($conn, "INSERT INTO user_hist(sessionid, conceptid, dt) VALUES ($ssid, $conceptid, CURRENT_TIMESTAMP)"); pg_free_result($res); } } catch (Exception $e) { } } function xml_entities($string) { return str_replace( array("&", "<", ">", '"', "'"), array("&", "<", ">", """, "'"), $string ); } function mb_ucfirst($string, $encoding) { $firstChar = mb_substr($string, 0, 1, $encoding); $then = mb_substr($string, 1, null, $encoding); return mb_strtoupper($firstChar, $encoding) . $then; } ?>