AutorÃa | Ultima modificación | Ver Log |
var editor_querysql = null;var editor_remotequerysql = null;M.block_configurable_reports = {sesskey: null,init: function(Y, sesskey) {this.Y = Y;this.sesskey = sesskey;// Documentation can be found @ http://codemirror.net/editor_querysql = CodeMirror.fromTextArea(document.getElementById('id_querysql'), {mode: "text/x-mysql",rtlMoveVisually: true,indentWithTabs: true,smartIndent: true,lineNumbers: true,matchBrackets : true,autofocus: true,});editor_remotequerysql = CodeMirror.fromTextArea(document.getElementById('id_remotequerysql'), {mode: "text/x-mysql",rtlMoveVisually: true,indentWithTabs: true,smartIndent: true,lineNumbers: true,matchBrackets : true,// autofocus: true});},loadReportCategories: function(Y, sesskey) {this.Y = Y;this.sesskey = sesskey;select_reportcategories = Y.one('#id_crreportcategories');Y.io(M.cfg.wwwroot+'/blocks/configurable_reports/repository.php', {data: 'action=listreports&sesskey=' + sesskey,context: this,method: "GET",on: {success: function(id, o) {var response = Y.JSON.parse(o.responseText);for(var prop in response) {if (response.hasOwnProperty(prop)) {option = Y.Node.create('<option value='+response[prop]["path"]+'>'+response[prop]["name"]+'</option>');select_reportcategories.appendChild(option);}}},failure: function(id, o) {// TODO use strings.window.alert('Repository unreachable');}}});},onchange_crreportcategories : function (select_element,sesskey) {var Y = this.Y;select_reportnames = Y.one('#id_crreportnames');var xhr = Y.io(M.cfg.wwwroot+'/blocks/configurable_reports/repository.php', {data: 'action=listcategory&category='+select_element[select_element.selectedIndex].value+'&sesskey='+sesskey,context: this,method: "GET",on: {success: function(id, o) {var response = Y.JSON.parse(o.responseText);select_reportnames.get('childNodes').remove();option = Y.Node.create('<option value="-1">...</option>');select_reportnames.appendChild(option);for(var prop in response) {if (response.hasOwnProperty(prop)) {option = Y.Node.create('<option value='+response[prop]["git_url"]+'>'+response[prop]["name"]+'</option>');select_reportnames.appendChild(option);}}},failure: function(id, o) {window.alert('Repository unreachable');}}});},onchange_crreportnames : function (select_element,sesskey) {var Y = this.Y;var path = select_element[select_element.selectedIndex].value;location.href = location.href + "&importurl=" + encodeURIComponent(path);},onchange_reportcategories : function (select_element,sesskey) {var Y = this.Y;//select_reportsincategory = Y.one('#id_reportsincategory');//select_reportsincategory.setHTML('');select_reportsincategory = Y.one('#id_reportsincategory');select_reportsincategory.setStyle('visibility', 'hidden');var xhr = Y.io(M.cfg.wwwroot+'/blocks/configurable_reports/list_reports_in_category.php', {data: 'category='+select_element[select_element.selectedIndex].value+'&sesskey='+sesskey,context: this,method: "GET",on: {success: function(id, o) {var response = Y.JSON.parse(o.responseText);var list = Y.Node.create('<select>');option = Y.Node.create('<option value="-1">Choose...</option>');list.appendChild(option);for(var prop in response) {if (response.hasOwnProperty(prop)) {option = Y.Node.create('<option value='+response[prop]["fullname"]+'>'+response[prop]["name"]+'</option>');list.appendChild(option);}}select_reportsincategory.setStyle('visibility', 'visible');list.setAttribute('id','id_reportsincategory');list.setAttribute('name','reportsincategory');list.setAttribute('onchange','M.block_configurable_reports.onchange_reportsincategory(this,"'+this.sesskey+'")');select_reportsincategory.replace(list);},failure: function(id, o) {if (o.statusText != 'abort') {select_reportsincategory.setStyle('visibility', 'hidden');// var instance = this.currentinstance;// instance.progress.setStyle('visibility', 'hidden');// if (o.statusText !== undefined) {// instance.listcontainer.set('innerHTML', o.statusText);// }}}}});},onchange_reportsincategory : function (select_element,sesskey) {var Y = this.Y;//select_reportsincategory = Y.one('#id_reportsincategory');//select_reportsincategory.setHTML('');textarea_reportsincategory = Y.one('#id_remotequerysql');//select_reportsincategory.setStyle('visibility', 'hidden');var xhr = Y.io(M.cfg.wwwroot+'/blocks/configurable_reports/get_remote_report.php', {data: 'reportname='+select_element[select_element.selectedIndex].value+'&sesskey='+sesskey,context: this,method: "GET",on: {success: function(id, o) {var response = Y.JSON.parse(o.responseText);// Use regular textarea element.textarea_reportsincategory.set('value', response);// Use codemirror editor.editor_remotequerysql.setValue(response);/*var list = Y.Node.create('<select>');for(var prop in response) {if (response.hasOwnProperty(prop)) {option = Y.Node.create('<option id='+response[prop]["name"]+'>'+response[prop]["name"]+'</option>');list.appendChild(option);}}//select_reportsincategory.setStyle('visibility', 'visible');list.setAttribute('id','id_reportsincategory');list.setAttribute('name','reportsincategory');list.setAttribute('onchange','M.block_configurable_reports.onchange_reportsincategory(this,"'+this.sesskey+'")');select_reportsincategory.replace(list);*/},failure: function(id, o) {if (o.statusText != 'abort') {select_reportsincategory.setStyle('visibility', 'hidden');// var instance = this.currentinstance;// instance.progress.setStyle('visibility', 'hidden');// if (o.statusText !== undefined) {// instance.listcontainer.set('innerHTML', o.statusText);// }}}}});}}function menuplugin(event,args) {location.href = args.url+document.getElementById('menuplugin').value;}