diff options
author | Suren A. Chilingaryan <csa@suren.me> | 2016-03-02 23:36:19 +0100 |
---|---|---|
committer | Suren A. Chilingaryan <csa@suren.me> | 2016-03-02 23:36:19 +0100 |
commit | f7636162ba124c0d6b5accaa72c842033f3e2309 (patch) | |
tree | 9ae5ceddde46e7c511bba899b869f54c6fef6283 /pywrap/templates/base.html | |
parent | 7e39a6c8ae5c3f95b3b2895c4ce8d858c7ad3b79 (diff) | |
parent | 02d0026e2df2ba5c68c0c1a67aec4437c9e8e8f3 (diff) | |
download | pcitool-f7636162ba124c0d6b5accaa72c842033f3e2309.tar.gz pcitool-f7636162ba124c0d6b5accaa72c842033f3e2309.tar.bz2 pcitool-f7636162ba124c0d6b5accaa72c842033f3e2309.tar.xz pcitool-f7636162ba124c0d6b5accaa72c842033f3e2309.zip |
Further improvements of Python scripting and web-interface API for register manipulations by Vasiliy Chernov
Diffstat (limited to 'pywrap/templates/base.html')
-rw-r--r-- | pywrap/templates/base.html | 347 |
1 files changed, 0 insertions, 347 deletions
diff --git a/pywrap/templates/base.html b/pywrap/templates/base.html deleted file mode 100644 index fdb95e8..0000000 --- a/pywrap/templates/base.html +++ /dev/null @@ -1,347 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <title>{% block title %}Device {{ device }}{% endblock %}</title> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> - <meta http-equiv="X-UA-Compatible" content="IE=edge"/> - <link rel="stylesheet" type="text/css" href="codebase/dhtmlx.css"/> - <script type=text/javascript src="{{ url_for('static', filename='jquery-2.2.1.js') }}"></script> - <script src="codebase/dhtmlx.js"></script> - <script src="pcilib_tree.js"></script> - <script> - var propsTree - - function checkError(json) - { - if(json.error) - alert('Error:\n' + json.error) - } - - function createPropertyTree(branch, id) - { - function getPropertyItemsOnLevel(branch, id) - { - pathToProperties = "{{ url_for('get_property_list_json') }}" - completePath = pathToProperties + '?branch=' + branch - - $.getJSON(completePath, - function(json) { - checkError(json) - parsePropertyItems(json, branch, id) - }); - } - - function parsePropertyItems(json, branch, id) - { - function updatePropertyValue(id, path) - { - pathToGetProperty = "{{ url_for('get_property_json') }}" - completePath = pathToGetProperty + '?prop=' + path - - $.getJSON(completePath, function(json){ - checkError(json) - propsTree.updateItem(id, 'value: ' + json.value); - }) - } - - function writePropertyValue(id, path) - { - value = window.prompt("Enter new property value"); - - if(value != null) - { - pathToGetProperty = "{{ url_for('set_property_json') }}" - completePath = pathToGetProperty + '?prop=' + path +'&val=' + value - - $.getJSON(completePath, - function(json) { - checkError(json) - updatePropertyValue(id, path) - }) - } - else - updatePropertyValue(id, path) - } - - function setCurrentValueField(id, path, mode) - { - var propValId = id + 'CurrVal' - var func = 0 - - if(mode) - func = function(){writePropertyValue(propValId, path)} - else - func = function(){updatePropertyValue(propValId, path)} - - propsTree.insertNewItem(id, propValId, - 'value: ', - func); - - updatePropertyValue(propValId, path) - } - - for(var i = 0; i < json.length; i++) - { - propsTree.insertNewItem(id, json[i].path, json[i].name, 0); - - if(json[i].flags.indexOf("childs") != -1) - { - getPropertyItemsOnLevel(json[i].path, json[i].path) - } - else - { - if(json[i].mode.indexOf("R") != -1) - { - var mode = (json[i].mode.indexOf("W") != -1) - setCurrentValueField(json[i].path, json[i].path, mode) - } - } - - //show aviable info - if(json[i].description) - propsTree.insertNewItem(json[i].path, json[i].path + 'Desc', - 'description:\n' + json[i].description, 0); - if(json[i].type) - propsTree.insertNewItem(json[i].path, json[i].path + 'Type', - 'type: ' + json[i].type, 0); - if(json[i].unit) - propsTree.insertNewItem(json[i].path, json[i].path + 'Unit', - 'unit: ' + json[i].unit, 0); - - if(json[i].mode) - { - var modeId = json[i].path + 'Mode' - propsTree.insertNewItem(json[i].path, modeId, - 'mode', 0); - - for(var j = 0; j < json[i].mode.length; j++) - propsTree.insertNewItem(modeId, modeId + j, - json[i].mode[j], 0); - propsTree.closeItem(modeId) - } - - if(json[i].path) - propsTree.insertNewItem(json[i].path, json[i].path + 'Path', - 'path: ' + json[i].path, 0); - - propsTree.closeItem(json[i].path); - } - } - - getPropertyItemsOnLevel(branch, id) - } - - var regTree - function createRegistersList() - { - function parseJsonRegisterList(json) - { - checkError(json) - - function compareRegistersByBank(a,b) - { - if (a.bank < b.bank) - return -1; - else if (a.bank > b.bank) - return 1; - else - return 0; - } - - if(json.lenght <= 0) - return - - //sort registers by bank - json.sort(compareRegistersByBank) - - //create bank dirs - var curBankName = json[0].bank - var created = 0 - for(var i = 0; i < json.length; i++) - { - //create new bank tab if it has not created already - if(json[i].bank != curBankName) - { - curBankName = json[i].bank - created = 0 - } - if(!created) - { - regTree.insertNewItem(0, json[i].bank, json[i].bank, 0); - created = 1 - } - - //insert register info to bank - var itemId = json[i].bank + "_" + json[i].name - regTree.insertNewItem(json[i].bank, itemId, json[i].name) - - function updateRegisterValue(id, bank, name) - { - pathToGetProperty = "{{ url_for('read_register_json') }}" - completePath = pathToGetProperty + '?bank=' + bank + - '&name=' + name - - $.getJSON(completePath, function(json){ - checkError(json) - regTree.updateItem(id, 'value: ' + json.value); - }) - } - - - function writeRegisterValue(id, bank, name) - { - value = window.prompt("Enter new register value"); - - if(value != null) - { - pathToGetProperty = "{{ url_for('write_register_json') }}" - completePath = pathToGetProperty + '?bank=' + bank + - '&name=' + name + '&val=' + value; - - $.getJSON(completePath, - function(json) { - checkError(json) - updateRegisterValue(id, bank, name) - }) - } - else - updateRegisterValue(id, bank, name) - } - - function setCurrentValueField(id, bank, name, mode) - { - var regValId = id + 'CurrVal' - var func = 0 - - if(mode) - func = function(){writeRegisterValue(regValId, bank, name)} - else - func = function(){updateRegisterValue(regValId, bank, name)} - - regTree.insertNewItem(id, regValId, - 'value: ', - func); - updateRegisterValue(regValId, bank, name) - } - - if(json[i].mode.indexOf("R") != -1) - { - var mode = (json[i].mode.indexOf("W") != -1) - setCurrentValueField(itemId, json[i].bank, json[i].name, mode) - } - - //show aviable info - if(json[i].description) - regTree.insertNewItem(itemId, itemId + 'Desc', - 'description:\n' + json[i].description, 0); - if(json[i].defvalue) - regTree.insertNewItem(itemId, itemId + 'Defvalue', - 'defvalue: ' + json[i].defvalue, 0); - - if(json[i].mode) - { - var modeId = itemId + 'Mode' - regTree.insertNewItem(itemId, modeId, - 'mode', 0); - - for(var j = 0; j < json[i].mode.length; j++) - regTree.insertNewItem(modeId, modeId + j, - json[i].mode[j], 0); - regTree.closeItem(modeId) - } - - if(json[i].range) - { - var rangeId = itemId + 'Range' - regTree.insertNewItem(itemId, rangeId, - 'range', 0); - regTree.insertNewItem(rangeId, rangeId + 'Min', - 'min: ' + json[i].range.min, 0); - regTree.insertNewItem(rangeId, rangeId + 'Max', - 'max: ' + json[i].range.max, 0); - regTree.closeItem(rangeId) - } - - if(json[i].values) - { - var valuesId = itemId + 'Values' - regTree.insertNewItem(itemId, valuesId, - 'values', 0); - - function addValueInfo(valuesId, value) - { - var valueId = valuesId + value.name - regTree.insertNewItem(valuesId, valueId, value.name, 0); - - if(value.description) - regTree.insertNewItem(valueId, valueId + 'Desc', - 'description: ' + value.description, 0); - if(value.value) - regTree.insertNewItem(valueId, valueId + 'Value', - 'value: ' + value.value, 0); - if(value.min) - regTree.insertNewItem(valueId, valueId + 'Min', - 'min: ' + value.min, 0); - if(value.max) - regTree.insertNewItem(valueId, valueId + 'Max', - 'max: ' + value.max, 0); - } - - for(var j = 0; j < json[i].values.length; j++) - { - addValueInfo(valuesId, json[i].values[j]) - } - regTree.closeItem(valuesId) - } - - propsTree.closeItem(json[i].path); - - regTree.closeItem(itemId); - } - } - - //get registers json list - getRegistersListPath = "{{ url_for('get_registers_list_json') }}" - $.getJSON(getRegistersListPath, parseJsonRegisterList); - } - - function doOnLoad() - { - propsTree = new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - propsTree.setImagePath("codebase/imgs/dhxtree_skyblue/"); - //generating properties list - createPropertyTree('', 0) - - regTree = new dhtmlXTreeObject("treeboxbox_tree2","100%","100%",0,0,0,0,'SELECT') - regTree.setImagePath("codebase/imgs/dhxtree_skyblue/"); - createRegistersList() - } - </script> -</head> -<body onload="doOnLoad()"> - {% block info %} - <h2>Device {{ device }} model={{ model }} control page </h2> - {% endblock %} - - {% block content %} - {% endblock %} - <table> - <tr> - <td> - <h3>Properties Tree</h3> - </td> - <td> - <h3>Registers Tree</h3> - </td> - </tr> - <tr> - <td valign="top"> - <div id="treeboxbox_tree" style="background-color:#f5f5f5;border :1px solid Silver; overflow:auto;"></div> - </td> - <td valign="top"> - <div id="treeboxbox_tree2" style="background-color:#f5f5f5;border :1px solid Silver; overflow:auto;"></div> - </td> - </tr> - </table> -</body> -</html> |