ВЬЮ.js

This commit is contained in:
2020-12-08 11:20:16 +06:00
parent 27d49bf102
commit c19e513a5e
5 changed files with 3113 additions and 40 deletions

3
metadata/axios.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -85,8 +85,8 @@ class EdtRec
//Задать CDATA значение для узла "type->properties->prop" по "n" //Задать CDATA значение для узла "type->properties->prop" по "n"
setPropCdata(name,value) setPropCdata(name,value)
{ {
var nodeProperties=findNodeOnPath(this.nodeMetadata, 'type/properties'); let nodeProperties=findNodeOnPath(this.nodeMetadata, 'type/properties');
var nodeProp=nodeProperties.firstChild; let nodeProp=nodeProperties.firstChild;
while(nodeProp!=null) while(nodeProp!=null)
{ {
if(nodeProp.nodeName=="prop") if(nodeProp.nodeName=="prop")
@ -889,15 +889,14 @@ class EdtRec
//The result can fill the filter field with complete information or display a window with a further selection of the value. //The result can fill the filter field with complete information or display a window with a further selection of the value.
selObj(typeName,propname) selObj(typeName,propname)
{ {
var win=new TWin(); let win=new TWin();
win.BuildGUI(pageX-10,pageY-10); win.BuildGUI(pageX-10,pageY-10);
let str=`
var str=''; <table id="thetable`+win+`" bgcolor="SlateGrey" style="border: 1px solid rgb(99, 99, 99);" width="100%">
str+='<table id="thetable'+win+'" bgcolor="SlateGrey" style="border: 1px solid rgb(99, 99, 99);" width="100%">'; <caption></caption>
str+=' <caption></caption>'; <thead><tr><th></th></tr></thead>
str+=' <thead><tr><th></th></tr></thead>'; <tbody><tr><td></td></tr></tbody>
str+=' <tbody><tr><td></td></tr></tbody>'; </table>`;
str+='</table>';
win.setContent(str); win.setContent(str);
}; };
@ -924,9 +923,9 @@ class EdtRec
//Call the ShowRecord.html window with the parameters for the filter (not just the object name). //Call the ShowRecord.html window with the parameters for the filter (not just the object name).
callWindow(nodeProp) callWindow(nodeProp)
{ {
var xmlString=""; let xmlString="";
var TypeName=""; let TypeName="";
var nT=findNode(nodeProp, "type"); let nT=findNode(nodeProp, "type");
if(nT!=null) if(nT!=null)
{ {
xmlString=getXMLNodeSerialisation(nT); xmlString=getXMLNodeSerialisation(nT);
@ -938,11 +937,11 @@ class EdtRec
//Write to XML string from GUI //Write to XML string from GUI
while(true) while(true)
{ {
var sub1=BeforeFirst(xmlString,"${"); let sub1=BeforeFirst(xmlString,"${");
if(sub1==null) break; if(sub1==null) break;
var sub2=AfterFirst(xmlString,"}"); let sub2=AfterFirst(xmlString,"}");
if(sub2==null) break; if(sub2==null) break;
var val=BeforeFirst(AfterFirst(xmlString,"${"),"}"); let val=BeforeFirst(AfterFirst(xmlString,"${"),"}");
let obj=document.getElementById("prop_"+this.uid+"_"+val); let obj=document.getElementById("prop_"+this.uid+"_"+val);
if(obj!=null){ if(obj!=null){
@ -950,9 +949,9 @@ class EdtRec
}else{ }else{
xmlString=sub1+sub2; xmlString=sub1+sub2;
} }
} }
var rec=new SRec(); let rec=new SRec();
rec.create(); rec.create();
rec.f_Settings=xmlString; rec.f_Settings=xmlString;
rec.f_TypeName=TypeName; rec.f_TypeName=TypeName;
@ -1031,14 +1030,14 @@ class EdtRec
//Function to populate the drop-down lists //Function to populate the drop-down lists
setDataSelect(node) setDataSelect(node)
{ {
var prop_name,prop,option,nodeProp,id,value,cdataNode; let prop_name,prop,option,nodeProp,id,value,cdataNode;
var nodeType=findFirstNode(node, 'type'); let nodeType=findFirstNode(node, 'type');
prop_name=nodeType.getAttribute("pn"); //field name prop_name=nodeType.getAttribute("pn"); //field name
prop=document.getElementById("prop_"+this.uid+"_"+prop_name); prop=document.getElementById("prop_"+this.uid+"_"+prop_name);
var selector=null; //find what kind of object object let selector=null; //find what kind of object object
var nodeFilter=findFirstNode(this.nodeMetadata, 'properties'); let nodeFilter=findFirstNode(this.nodeMetadata, 'properties');
var nodeCur=nodeFilter.firstChild; let nodeCur=nodeFilter.firstChild;
while(nodeCur!=null) while(nodeCur!=null)
{ {
if((nodeCur.nodeName=="prop")&&(nodeCur.getAttribute("n")==prop_name)) if((nodeCur.nodeName=="prop")&&(nodeCur.getAttribute("n")==prop_name))
@ -1055,7 +1054,7 @@ class EdtRec
//in the full can be that the list has arrived after the arrival of all data and therefore the drop-down list must be set to the desired value here //in the full can be that the list has arrived after the arrival of all data and therefore the drop-down list must be set to the desired value here
//select the value for this list //select the value for this list
let val=null; let val=null;
var nodeProperties=findFirstNode(this.nodeMetadata, 'properties'); let nodeProperties=findFirstNode(this.nodeMetadata, 'properties');
nodeProp=nodeProperties.firstChild; nodeProp=nodeProperties.firstChild;
while(nodeProp!=null) while(nodeProp!=null)
{ {
@ -1543,16 +1542,16 @@ class TCheckboxListField
return result; return result;
}; };
// Set checked values divide ";" // Set checked values divide ";"
setValue(val) { setValue(val) {
var splits; let splits;
if(val.indexOf(';')==-1) if(val.indexOf(';')==-1)
splits = val.split(''); splits = val.split('');
else else
splits = val.split(';'); splits = val.split(';');
for(var j=0;j<splits.length;j++) for(let j=0;j<splits.length;j++)
{ {
for(var i=0;i<this.array.length;i++) for(let i=0;i<this.array.length;i++)
{ {
if(this.array[i].value==splits[j]) if(this.array[i].value==splits[j])
{ {

View File

@ -238,9 +238,11 @@
{ {
$doc = new DOMDocument(); $doc = new DOMDocument();
try try
{ $doc->loadXML(file_get_contents("php://input")); {
$doc->loadXML($HTTP_INPUT);
} catch (Exception $e) } catch (Exception $e)
{ sendError($e->getMessage()); {
sendError($e->getMessage());
} }
$reqNode = $doc->documentElement; $reqNode = $doc->documentElement;
@ -250,8 +252,6 @@
} }
} }
//error_log($HTTP_INPUT);
//описание //описание
//(fn==0) - отправить метаданные клиенту по запрошенному узлу //(fn==0) - отправить метаданные клиенту по запрошенному узлу
//(fn==1) - вставить одну запись в базу данных (результат id записи) //(fn==1) - вставить одну запись в базу данных (результат id записи)
@ -607,13 +607,8 @@
$f2=findNodeOnPath($nTypeR,'objects-list/filter'); $f2=findNodeOnPath($nTypeR,'objects-list/filter');
setFilter($f1,$f2);//заменить все значения первого фильтра значениями из второго setFilter($f1,$f2);//заменить все значения первого фильтра значениями из второго
//+++++++
//$objXMLDocument->saveXML($currNode)
$sql_query=getCdataValue(findNodeOnPath($currNode, "objects-list/sql-query")); $sql_query=getCdataValue(findNodeOnPath($currNode, "objects-list/sql-query"));
//sendError($sql_query);
if($f1!=null) if($f1!=null)
{ {
$nextnode=$f1->firstChild; $nextnode=$f1->firstChild;
@ -705,7 +700,10 @@
if(!array_key_exists("_u",$row)) { $access.="u"; } else { $access.=$row["_u"]; } if(!array_key_exists("_u",$row)) { $access.="u"; } else { $access.=$row["_u"]; }
if(!array_key_exists("_d",$row)) { $access.="d"; } else { $access.=$row["_d"]; } if(!array_key_exists("_d",$row)) { $access.="d"; } else { $access.=$row["_d"]; }
$xmlstring.=' <record id="'.$row[$currNode->getAttribute("ObjectID")].'" a="'.$access.'">'; if(array_key_exists($currNode->getAttribute("ObjectID"),$row))
$xmlstring.=' <record id="'.$row[$currNode->getAttribute("ObjectID")].'" a="'.$access.'">';
else
$xmlstring.=' <record id="" a="'.$access.'">';
$nextnode=findNode($currNode,'objects-list')->firstChild; $nextnode=findNode($currNode,'objects-list')->firstChild;
while ($nextnode) while ($nextnode)
{ {

View File

@ -42,4 +42,3 @@
{ {
echo 'error'; echo 'error';
} }
?>

3074
metadata/vue-router.js Normal file

File diff suppressed because it is too large Load Diff