diff --git a/media/com_fabrik/js/advanced-search-min.js b/media/com_fabrik/js/advanced-search-min.js index 6dcbaea7eaf..55ecff2b8d5 100644 --- a/media/com_fabrik/js/advanced-search-min.js +++ b/media/com_fabrik/js/advanced-search-min.js @@ -1 +1 @@ -AdvancedSearch=new Class({Implements:[Options,Events],options:{ajax:false,controller:"list",parentView:""},initialize:function(a){this.setOptions(a);this.form=document.id("advanced-search-win"+this.options.listref).getElement("form");this.trs=Array.from([]);if(this.form.getElement(".advanced-search-add")){this.form.getElement(".advanced-search-add").removeEvents("click");this.form.getElement(".advanced-search-add").addEvent("click",function(b){this.addRow(b)}.bind(this));this.form.getElement(".advanced-search-clearall").removeEvents("click");this.form.getElement(".advanced-search-clearall").addEvent("click",function(b){this.resetForm(b)}.bind(this));this.trs.each(function(b){b.inject(this.form.getElement(".advanced-search-list").getElements("tr").getLast(),"after")}.bind(this))}this.form.addEvent("click:relay(tr)",function(c,b){this.form.getElements("tr").removeClass("fabrikRowClick");b.addClass("fabrikRowClick")}.bind(this));this.watchDelete();this.watchApply();this.watchElementList()},watchApply:function(){this.form.getElement(".advanced-search-apply").addEvent("click",function(c){Fabrik.fireEvent("fabrik.advancedSearch.submit",this);var a=Fabrik["filter_"+this.options.parentView];if(typeOf(a)!=="null"){a.onSubmit()}var b=this.getList();new Element("input",{name:"resetfilters",value:1,type:"hidden"}).inject(this.form);if(!this.options.ajax){return}c.stop();b.submit(this.options.controller+".filter")}.bind(this))},getList:function(){var a=Fabrik.blocks["list_"+this.options.listref];if(typeOf(a)==="null"){a=Fabrik.blocks[this.options.parentView]}return a},watchDelete:function(){this.form.getElements(".advanced-search-remove-row").removeEvents();this.form.getElements(".advanced-search-remove-row").addEvent("click",function(a){this.removeRow(a)}.bind(this))},watchElementList:function(){this.form.getElements("select.key").removeEvents();this.form.getElements("select.key").addEvent("change",function(a){this.updateValueInput(a)}.bind(this))},updateValueInput:function(d){var f=d.target.getParent("tr");Fabrik.loader.start(f);var a=d.target.get("value");var g=d.target.getParent().getParent().getElements("td")[3];if(a===""){g.set("html","");return}var b=Fabrik.liveSite+"index.php?option=com_fabrik&task=list.elementFilter&format=raw";var c=this.options.elementMap[a];new Request.HTML({url:b,update:g,data:{element:a,id:this.options.listid,elid:c.id,plugin:c.plugin,counter:this.options.counter,listref:this.options.listref,context:this.options.controller,parentView:this.options.parentView},onComplete:function(){Fabrik.loader.stop(f)}}).send()},addRow:function(c){this.options.counter++;c.stop();var b=this.form.getElement(".advanced-search-list").getElement("tbody").getElements("tr").getLast();var d=b.clone();d.removeClass("oddRow1").removeClass("oddRow0").addClass("oddRow"+this.options.counter%2);d.inject(b,"after");d.getElement("td").empty().set("html",this.options.conditionList);var a=d.getElements("td");a[1].empty().set("html",this.options.elementList);a[1].adopt([new Element("input",{type:"hidden",name:"fabrik___filter[list_"+this.options.listref+"][search_type][]",value:"advanced"}),new Element("input",{type:"hidden",name:"fabrik___filter[list_"+this.options.listref+"][grouped_to_previous][]",value:"0"})]);a[2].empty().set("html",this.options.statementList);a[3].empty();this.watchDelete();this.watchElementList()},removeRow:function(c){c.stop();if(this.form.getElements(".advanced-search-remove-row").length>1){this.options.counter--;var b=c.target.findUp("tr");var a=new Fx.Morph(b,{duration:800,transition:Fx.Transitions.Quart.easeOut,onComplete:function(){b.dispose()}});a.start({height:0,opacity:0})}},resetForm:function(){var a=this.form.getElement(".advanced-search-list");if(!a){return}a.getElements("tbody tr").each(function(c,b){if(b>=1){c.dispose()}if(b===0){c.getElements(".inputbox").each(function(d){d.selectedIndex=0});c.getElements("input").each(function(d){d.value=""})}});this.watchDelete();this.watchElementList()},deleteFilterOption:function(c){event.target.removeEvent("click",function(d){this.deleteFilterOption(d)}.bind(this));var b=event.target.parentNode.parentNode;var a=b.parentNode;a.removeChild(b);c.stop()}}); \ No newline at end of file +AdvancedSearch=new Class({Implements:[Options,Events],options:{ajax:false,controller:"list",parentView:""},initialize:function(a){this.setOptions(a);this.form=document.id("advanced-search-win"+this.options.listref).getElement("form");this.trs=Array.from([]);if(this.form.getElement(".advanced-search-add")){this.form.getElement(".advanced-search-add").removeEvents("click");this.form.getElement(".advanced-search-add").addEvent("click",function(b){this.addRow(b)}.bind(this));this.form.getElement(".advanced-search-clearall").removeEvents("click");this.form.getElement(".advanced-search-clearall").addEvent("click",function(b){this.resetForm(b)}.bind(this));this.trs.each(function(b){b.inject(this.form.getElement(".advanced-search-list").getElements("tr").getLast(),"after")}.bind(this))}this.form.addEvent("click:relay(tr)",function(c,b){this.form.getElements("tr").removeClass("fabrikRowClick");b.addClass("fabrikRowClick")}.bind(this));this.watchDelete();this.watchApply();this.watchElementList()},watchApply:function(){this.form.getElement(".advanced-search-apply").addEvent("click",function(d){Fabrik.fireEvent("fabrik.advancedSearch.submit",this);var b=this.options.parentView!==""?"filter_"+this.options.parentView:"filter_listform_"+this.options.listref;var a=Fabrik[b];if(typeOf(a)!=="null"){a.onSubmit()}var c=this.getList();new Element("input",{name:"resetfilters",value:1,type:"hidden"}).inject(this.form);if(!this.options.ajax){return}d.stop();c.submit(this.options.controller+".filter")}.bind(this))},getList:function(){var a=Fabrik.blocks["list_"+this.options.listref];if(typeOf(a)==="null"){a=Fabrik.blocks[this.options.parentView]}return a},watchDelete:function(){this.form.getElements(".advanced-search-remove-row").removeEvents();this.form.getElements(".advanced-search-remove-row").addEvent("click",function(a){this.removeRow(a)}.bind(this))},watchElementList:function(){this.form.getElements("select.key").removeEvents();this.form.getElements("select.key").addEvent("change",function(a){this.updateValueInput(a)}.bind(this))},updateValueInput:function(d){var f=d.target.getParent("tr");Fabrik.loader.start(f);var a=d.target.get("value");var g=d.target.getParent().getParent().getElements("td")[3];if(a===""){g.set("html","");return}var b=Fabrik.liveSite+"index.php?option=com_fabrik&task=list.elementFilter&format=raw";var c=this.options.elementMap[a];new Request.HTML({url:b,update:g,data:{element:a,id:this.options.listid,elid:c.id,plugin:c.plugin,counter:this.options.counter,listref:this.options.listref,context:this.options.controller,parentView:this.options.parentView},onComplete:function(){Fabrik.loader.stop(f)}}).send()},addRow:function(c){this.options.counter++;c.stop();var b=this.form.getElement(".advanced-search-list").getElement("tbody").getElements("tr").getLast();var d=b.clone();d.removeClass("oddRow1").removeClass("oddRow0").addClass("oddRow"+this.options.counter%2);d.inject(b,"after");d.getElement("td").empty().set("html",this.options.conditionList);var a=d.getElements("td");a[1].empty().set("html",this.options.elementList);a[1].adopt([new Element("input",{type:"hidden",name:"fabrik___filter[list_"+this.options.listref+"][search_type][]",value:"advanced"}),new Element("input",{type:"hidden",name:"fabrik___filter[list_"+this.options.listref+"][grouped_to_previous][]",value:"0"})]);a[2].empty().set("html",this.options.statementList);a[3].empty();this.watchDelete();this.watchElementList()},removeRow:function(c){c.stop();if(this.form.getElements(".advanced-search-remove-row").length>1){this.options.counter--;var b=c.target.findUp("tr");var a=new Fx.Morph(b,{duration:800,transition:Fx.Transitions.Quart.easeOut,onComplete:function(){b.dispose()}});a.start({height:0,opacity:0})}},resetForm:function(){var a=this.form.getElement(".advanced-search-list");if(!a){return}a.getElements("tbody tr").each(function(c,b){if(b>=1){c.dispose()}if(b===0){c.getElements(".inputbox").each(function(d){d.selectedIndex=0});c.getElements("input").each(function(d){d.value=""})}});this.watchDelete();this.watchElementList()},deleteFilterOption:function(c){event.target.removeEvent("click",function(d){this.deleteFilterOption(d)}.bind(this));var b=event.target.parentNode.parentNode;var a=b.parentNode;a.removeChild(b);c.stop()}}); \ No newline at end of file diff --git a/media/com_fabrik/js/advanced-search.js b/media/com_fabrik/js/advanced-search.js index 957c2a8684f..051a92aa816 100644 --- a/media/com_fabrik/js/advanced-search.js +++ b/media/com_fabrik/js/advanced-search.js @@ -1,16 +1,23 @@ +/** + * Advanced Search + * + * @copyright: Copyright (C) 2005-2013, fabrikar.com - All rights reserved. + * @license: GNU/GPL http://www.gnu.org/copyleft/gpl.html + */ + /*jshint mootools: true */ /*global Fabrik:true, fconsole:true, Joomla:true, CloneObject:true, $H:true,unescape:true */ AdvancedSearch = new Class({ - + Implements: [Options, Events], - + options: { 'ajax': false, 'controller': 'list', 'parentView': '' }, - + initialize: function (options) { this.setOptions(options); this.form = document.id('advanced-search-win' + this.options.listref).getElement('form'); @@ -28,7 +35,7 @@ AdvancedSearch = new Class({ tr.inject(this.form.getElement('.advanced-search-list').getElements('tr').getLast(), 'after'); }.bind(this)); } - + this.form.addEvent('click:relay(tr)', function (e, target) { this.form.getElements('tr').removeClass('fabrikRowClick'); target.addClass('fabrikRowClick'); @@ -37,17 +44,21 @@ AdvancedSearch = new Class({ this.watchApply(); this.watchElementList(); }, - + watchApply: function () { - + this.form.getElement('.advanced-search-apply').addEvent('click', function (e) { Fabrik.fireEvent('fabrik.advancedSearch.submit', this); - var filterManager = Fabrik['filter_' + this.options.parentView]; + // 25/02/2014 - parentView empty if normal list - if so get listref + var fkey = this.options.parentView !== '' ? 'filter_' + this.options.parentView : 'filter_listform_' + this.options.listref; + var filterManager = Fabrik[fkey]; + // Format date advanced search fields to db format before posting if (typeOf(filterManager) !== 'null') { filterManager.onSubmit(); } + /* Ensure that we clear down other advanced searches from the session. * Otherwise, filter on one element and submit works, but changing the filter element and value * will result in 2 filters applied (not one) @@ -59,16 +70,16 @@ AdvancedSearch = new Class({ 'value': 1, 'type': 'hidden' }).inject(this.form); - + if (!this.options.ajax) { return; } e.stop(); - + list.submit(this.options.controller + '.filter'); }.bind(this)); }, - + getList: function () { var list = Fabrik.blocks['list_' + this.options.listref]; if (typeOf(list) === 'null') { @@ -76,7 +87,7 @@ AdvancedSearch = new Class({ } return list; }, - + watchDelete: function () { //should really just delegate these events from the adv search table this.form.getElements('.advanced-search-remove-row').removeEvents(); @@ -84,21 +95,21 @@ AdvancedSearch = new Class({ this.removeRow(e); }.bind(this)); }, - + watchElementList: function () { this.form.getElements('select.key').removeEvents(); this.form.getElements('select.key').addEvent('change', function (e) { this.updateValueInput(e); }.bind(this)); }, - + /** * called when you choose an element from the filter dropdown list * should run ajax query that updates value field to correspond with selected * element * @param {Object} e event */ - + updateValueInput: function (e) { var row = e.target.getParent('tr'); Fabrik.loader.start(row); @@ -110,16 +121,16 @@ AdvancedSearch = new Class({ } var url = Fabrik.liveSite + "index.php?option=com_fabrik&task=list.elementFilter&format=raw"; var eldata = this.options.elementMap[v]; - new Request.HTML({'url': url, - 'update': update, + new Request.HTML({'url': url, + 'update': update, 'data': {'element': v, 'id': this.options.listid, 'elid': eldata.id, 'plugin': eldata.plugin, 'counter': this.options.counter, - 'listref': this.options.listref, 'context': this.options.controller, + 'listref': this.options.listref, 'context': this.options.controller, 'parentView': this.options.parentView}, 'onComplete': function () { Fabrik.loader.stop(row); }}).send(); }, - + addRow: function (e) { this.options.counter ++; e.stop(); @@ -139,7 +150,7 @@ AdvancedSearch = new Class({ this.watchDelete(); this.watchElementList(); }, - + removeRow: function (e) { e.stop(); if (this.form.getElements('.advanced-search-remove-row').length > 1) { @@ -158,7 +169,7 @@ AdvancedSearch = new Class({ }); } }, - + /** * removes all rows except for the first one, whose values are reset to empty */ @@ -193,5 +204,5 @@ AdvancedSearch = new Class({ table.removeChild(tr); e.stop(); } - + }); \ No newline at end of file diff --git a/media/com_fabrik/js/list-min.js b/media/com_fabrik/js/list-min.js index 75044751648..538bb25f66d 100644 --- a/media/com_fabrik/js/list-min.js +++ b/media/com_fabrik/js/list-min.js @@ -1 +1 @@ -var FbList=new Class({Implements:[Options,Events],options:{admin:false,filterMethod:"onchange",ajax:false,ajax_links:false,links:{edit:"",detail:"",add:""},form:"listform_"+this.id,hightLight:"#ccffff",primaryKey:"",headings:[],labels:{},Itemid:0,formid:0,canEdit:true,canView:true,page:"index.php",actionMethod:"floating",formels:[],data:[],rowtemplate:"",floatPos:"left",csvChoose:false,csvOpts:{},popup_width:300,popup_height:300,popup_offset_x:null,popup_offset_y:null,groupByOpts:{},listRef:"",fabrik_show_in_list:[],singleOrdering:false,tmpl:"",groupedBy:"",toggleCols:false},initialize:function(b,a){this.id=b;this.setOptions(a);this.getForm();this.result=true;this.plugins=[];this.list=document.id("list_"+this.options.listRef);if(this.options.j3===false){this.actionManager=new FbListActions(this,{method:this.options.actionMethod,floatPos:this.options.floatPos})}if(this.options.toggleCols){this.toggleCols=new FbListToggle(this.form)}this.groupToggle=new FbGroupedToggler(this.form,this.options.groupByOpts);new FbListKeys(this);if(this.list){if(this.list.get("tag")==="table"){this.tbody=this.list.getElement("tbody")}if(typeOf(this.tbody)==="null"){this.tbody=this.list}if(window.ie){this.options.rowtemplate=this.list.getElement(".fabrik_row")}}this.watchAll(false);Fabrik.addEvent("fabrik.form.submitted",function(){this.updateRows()}.bind(this));if(!!(window.history&&history.pushState)&&history.state&&this.options.ajax){this._updateRows(history.state)}},setRowTemplate:function(){if(typeOf(this.options.rowtemplate)==="string"){var a=this.list.getElement(".fabrik_row");if(window.ie&&typeOf(a)!=="null"){this.options.rowtemplate=a}}},rowClicks:function(){this.list.addEvent("click:relay(.fabrik_row)",function(g,b){var h=Array.from(b.id.split("_")),f={};f.rowid=h.getLast();var a={errors:{},data:f,rowid:h.getLast(),listid:this.id};Fabrik.fireEvent("fabrik.list.row.selected",a)}.bind(this))},watchAll:function(a){a=a?a:false;this.watchNav();if(!a){this.watchRows()}this.watchFilters();this.watchOrder();this.watchEmpty();this.watchButtons()},watchButtons:function(){this.exportWindowOpts={id:"exportcsv",title:"Export CSV",loadMethod:"html",minimizable:false,width:360,height:120,content:"",bootstrap:this.options.j3};if(this.options.view==="csv"){this.openCSVWindow()}else{if(this.form.getElements(".csvExportButton")){this.form.getElements(".csvExportButton").each(function(a){if(a.hasClass("custom")===false){a.addEvent("click",function(b){this.openCSVWindow();b.stop()}.bind(this))}}.bind(this))}}},openCSVWindow:function(){var a=this.makeCSVExportForm();this.exportWindowOpts.content=a;this.exportWindowOpts.onContentLoaded=function(){this.fitToContent()};this.csvWindow=Fabrik.getWindow(this.exportWindowOpts)},makeCSVExportForm:function(){if(this.options.csvChoose){return this._csvExportForm()}else{return this._csvAutoStart()}},_csvAutoStart:function(){var a=new Element("div",{id:"csvmsg"}).set("html",Joomla.JText._("COM_FABRIK_LOADING")+'
0 / '+Joomla.JText._("COM_FABRIK_RECORDS")+".
"+Joomla.JText._("COM_FABRIK_SAVING_TO")+'');this.csvopts=this.options.csvOpts;this.csvfields=this.options.csvFields;this.triggerCSVExport(-1);return a},_csvExportForm:function(){var n=""+Joomla.JText._("JYES");var h=""+Joomla.JText._("JYES");var f=""+Joomla.JText._("JYES");var e=""+Joomla.JText._("JYES");var d="Excel CSV";var a="index.php?option=com_fabrik&view=list&listid="+this.id+"&format=csv&Itemid="+this.options.Itemid;var b={styles:{width:"200px","float":"left"}};var m=new Element("form",{action:a,method:"post"}).adopt([new Element("div",b).set("text",Joomla.JText._("COM_FABRIK_FILE_TYPE")),new Element("label").set("html",d),new Element("label").adopt([new Element("input",{type:"radio",name:"excel",value:"0"}),new Element("span").set("text","CSV")]),new Element("br"),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INCLUDE_FILTERS")),new Element("label").set("html",n),new Element("label").adopt([new Element("input",{type:"radio",name:"incfilters",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INCLUDE_DATA")),new Element("label").set("html",e),new Element("label").adopt([new Element("input",{type:"radio",name:"inctabledata",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INCLUDE_RAW_DATA")),new Element("label").set("html",h),new Element("label").adopt([new Element("input",{type:"radio",name:"incraw",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INLCUDE_CALCULATIONS")),new Element("label").set("html",f),new Element("label").adopt([new Element("input",{type:"radio",name:"inccalcs",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))])]);new Element("h4").set("text",Joomla.JText._("COM_FABRIK_SELECT_COLUMNS_TO_EXPORT")).inject(m);var l="";var k=0;$H(this.options.labels).each(function(p,o){if(o.substr(0,7)!=="fabrik_"&&o!=="____form_heading"){var q=o.split("___")[0];if(q!==l){l=q;new Element("h5").set("text",l).inject(m)}var g=""+Joomla.JText._("JYES");p=p.replace(/<\/?[^>]+(>|$)/g,"");var s=new Element("div",b).appendText(p);s.inject(m);new Element("label").set("html",g).inject(m);new Element("label").adopt([new Element("input",{type:"radio",name:"fields["+o+"]",value:"0"}),new Element("span").appendText(Joomla.JText._("JNO"))]).inject(m);new Element("br").inject(m)}k++}.bind(this));if(this.options.formels.length>0){new Element("h5").set("text",Joomla.JText._("COM_FABRIK_FORM_FIELDS")).inject(m);this.options.formels.each(function(o){var g=""+Joomla.JText._("JYES");var p=new Element("div",b).appendText(o.label);p.inject(m);new Element("label").set("html",g).inject(m);new Element("label").adopt([new Element("input",{type:"radio",name:"fields["+o.name+"]",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]).inject(m);new Element("br").inject(m)}.bind(this))}new Element("div",{styles:{"text-align":"right"}}).adopt(new Element("input",{type:"button",name:"submit",value:Joomla.JText._("COM_FABRIK_EXPORT"),"class":"button exportCSVButton",events:{click:function(o){o.stop();o.target.disabled=true;var g=document.id("csvmsg");if(typeOf(g)==="null"){g=new Element("div",{id:"csvmsg"}).inject(o.target,"before")}g.set("html",Joomla.JText._("COM_FABRIK_LOADING")+'
0 / '+Joomla.JText._("COM_FABRIK_RECORDS")+".
"+Joomla.JText._("COM_FABRIK_SAVING_TO")+'');this.triggerCSVExport(0)}.bind(this)}})).inject(m);new Element("input",{type:"hidden",name:"view",value:"table"}).inject(m);new Element("input",{type:"hidden",name:"option",value:"com_fabrik"}).inject(m);new Element("input",{type:"hidden",name:"listid",value:this.id}).inject(m);new Element("input",{type:"hidden",name:"format",value:"csv"}).inject(m);new Element("input",{type:"hidden",name:"c",value:"table"}).inject(m);return m},triggerCSVExport:function(e,b,a){if(e!==0){if(e===-1){e=0;b=this.csvopts;b.fields=this.csvfields}else{b=this.csvopts;a=this.csvfields}}else{if(!b){b={};if(typeOf(document.id("exportcsv"))!=="null"){["incfilters","inctabledata","incraw","inccalcs","excel"].each(function(g){var f=document.id("exportcsv").getElements("input[name="+g+"]");if(f.length>0){b[g]=f.filter(function(h){return h.checked})[0].value}})}}if(!a){a={};if(typeOf(document.id("exportcsv"))!=="null"){document.id("exportcsv").getElements("input[name^=field]").each(function(g){if(g.checked){var f=g.name.replace("fields[","").replace("]","");a[f]=g.get("value")}})}}b.fields=a;this.csvopts=b;this.csvfields=a}b=this.csvExportFilterOpts(b);b.start=e;b.option="com_fabrik";b.view="list";b.format="csv";b.Itemid=this.options.Itemid;b.listid=this.id;b.listref=this.id;this.options.csvOpts.custom_qs.split("&").each(function(f){var g=f.split("=");b[g[0]]=g[1]});var d=new Request.JSON({url:"?"+this.options.csvOpts.custom_qs,method:"post",data:b,onError:function(g,f){fconsole(g,f)},onFailure:function(f){fconsole("failed",d)},onSuccess:function(g){if(g.err){alert(g.err);Fabrik.Windows.exportcsv.close()}else{if(typeOf(document.id("csvcount"))!=="null"){document.id("csvcount").set("text",g.count)}if(typeOf(document.id("csvtotal"))!=="null"){document.id("csvtotal").set("text",g.total)}if(typeOf(document.id("csvfile"))!=="null"){document.id("csvfile").set("text",g.file)}if(g.count

'+Joomla.JText._("COM_FABRIK_CSV_COMPLETE");h+='

'+Joomla.JText._("COM_FABRIK_CSV_DOWNLOAD_HERE")+"

";if(typeOf(document.id("csvmsg"))!=="null"){document.id("csvmsg").set("html",h)}this.csvWindow.fitToContent();document.getElements("input.exportCSVButton").removeProperty("disabled")}}}.bind(this)});d.send()},csvExportFilterOpts:function(e){var d=0,g,a=0,f,b=["origvalue","value","condition","join","key","search_type","match","full_words_only","eval","grouped_to_previous","hidden","elementid"];this.getFilters().each(function(h){f=h.name.split("[").getLast().replace("]","").toInt();d=f>d?f:d;e[h.name]=h.get("value")}.bind(this));d++;Object.each(this.options.advancedFilters,function(h,k){if(b.contains(k)){a=0;for(g=0;g0 / '+Joomla.JText._("COM_FABRIK_RECORDS")+".
"+Joomla.JText._("COM_FABRIK_SAVING_TO")+'');this.csvopts=this.options.csvOpts;this.csvfields=this.options.csvFields;this.triggerCSVExport(-1);return a},_csvExportForm:function(){var n=""+Joomla.JText._("JYES");var h=""+Joomla.JText._("JYES");var f=""+Joomla.JText._("JYES");var e=""+Joomla.JText._("JYES");var d="Excel CSV";var a="index.php?option=com_fabrik&view=list&listid="+this.id+"&format=csv&Itemid="+this.options.Itemid;var b={styles:{width:"200px","float":"left"}};var m=new Element("form",{action:a,method:"post"}).adopt([new Element("div",b).set("text",Joomla.JText._("COM_FABRIK_FILE_TYPE")),new Element("label").set("html",d),new Element("label").adopt([new Element("input",{type:"radio",name:"excel",value:"0"}),new Element("span").set("text","CSV")]),new Element("br"),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INCLUDE_FILTERS")),new Element("label").set("html",n),new Element("label").adopt([new Element("input",{type:"radio",name:"incfilters",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INCLUDE_DATA")),new Element("label").set("html",e),new Element("label").adopt([new Element("input",{type:"radio",name:"inctabledata",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INCLUDE_RAW_DATA")),new Element("label").set("html",h),new Element("label").adopt([new Element("input",{type:"radio",name:"incraw",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]),new Element("br"),new Element("div",b).appendText(Joomla.JText._("COM_FABRIK_INLCUDE_CALCULATIONS")),new Element("label").set("html",f),new Element("label").adopt([new Element("input",{type:"radio",name:"inccalcs",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))])]);new Element("h4").set("text",Joomla.JText._("COM_FABRIK_SELECT_COLUMNS_TO_EXPORT")).inject(m);var l="";var k=0;$H(this.options.labels).each(function(p,o){if(o.substr(0,7)!=="fabrik_"&&o!=="____form_heading"){var q=o.split("___")[0];if(q!==l){l=q;new Element("h5").set("text",l).inject(m)}var g=""+Joomla.JText._("JYES");p=p.replace(/<\/?[^>]+(>|$)/g,"");var s=new Element("div",b).appendText(p);s.inject(m);new Element("label").set("html",g).inject(m);new Element("label").adopt([new Element("input",{type:"radio",name:"fields["+o+"]",value:"0"}),new Element("span").appendText(Joomla.JText._("JNO"))]).inject(m);new Element("br").inject(m)}k++}.bind(this));if(this.options.formels.length>0){new Element("h5").set("text",Joomla.JText._("COM_FABRIK_FORM_FIELDS")).inject(m);this.options.formels.each(function(o){var g=""+Joomla.JText._("JYES");var p=new Element("div",b).appendText(o.label);p.inject(m);new Element("label").set("html",g).inject(m);new Element("label").adopt([new Element("input",{type:"radio",name:"fields["+o.name+"]",value:"0"}),new Element("span").set("text",Joomla.JText._("JNO"))]).inject(m);new Element("br").inject(m)}.bind(this))}new Element("div",{styles:{"text-align":"right"}}).adopt(new Element("input",{type:"button",name:"submit",value:Joomla.JText._("COM_FABRIK_EXPORT"),"class":"button exportCSVButton",events:{click:function(o){o.stop();o.target.disabled=true;var g=document.id("csvmsg");if(typeOf(g)==="null"){g=new Element("div",{id:"csvmsg"}).inject(o.target,"before")}g.set("html",Joomla.JText._("COM_FABRIK_LOADING")+'
0 / '+Joomla.JText._("COM_FABRIK_RECORDS")+".
"+Joomla.JText._("COM_FABRIK_SAVING_TO")+'');this.triggerCSVExport(0)}.bind(this)}})).inject(m);new Element("input",{type:"hidden",name:"view",value:"table"}).inject(m);new Element("input",{type:"hidden",name:"option",value:"com_fabrik"}).inject(m);new Element("input",{type:"hidden",name:"listid",value:this.id}).inject(m);new Element("input",{type:"hidden",name:"format",value:"csv"}).inject(m);new Element("input",{type:"hidden",name:"c",value:"table"}).inject(m);return m},triggerCSVExport:function(e,b,a){if(e!==0){if(e===-1){e=0;b=this.csvopts;b.fields=this.csvfields}else{b=this.csvopts;a=this.csvfields}}else{if(!b){b={};if(typeOf(document.id("exportcsv"))!=="null"){["incfilters","inctabledata","incraw","inccalcs","excel"].each(function(g){var f=document.id("exportcsv").getElements("input[name="+g+"]");if(f.length>0){b[g]=f.filter(function(h){return h.checked})[0].value}})}}if(!a){a={};if(typeOf(document.id("exportcsv"))!=="null"){document.id("exportcsv").getElements("input[name^=field]").each(function(g){if(g.checked){var f=g.name.replace("fields[","").replace("]","");a[f]=g.get("value")}})}}b.fields=a;this.csvopts=b;this.csvfields=a}b=this.csvExportFilterOpts(b);b.start=e;b.option="com_fabrik";b.view="list";b.format="csv";b.Itemid=this.options.Itemid;b.listid=this.id;b.listref=this.id;this.options.csvOpts.custom_qs.split("&").each(function(f){var g=f.split("=");b[g[0]]=g[1]});var d=new Request.JSON({url:"?"+this.options.csvOpts.custom_qs,method:"post",data:b,onError:function(g,f){fconsole(g,f)},onFailure:function(f){fconsole("failed",d)},onSuccess:function(g){if(g.err){alert(g.err);Fabrik.Windows.exportcsv.close()}else{if(typeOf(document.id("csvcount"))!=="null"){document.id("csvcount").set("text",g.count)}if(typeOf(document.id("csvtotal"))!=="null"){document.id("csvtotal").set("text",g.total)}if(typeOf(document.id("csvfile"))!=="null"){document.id("csvfile").set("text",g.file)}if(g.count

'+Joomla.JText._("COM_FABRIK_CSV_COMPLETE");h+='

'+Joomla.JText._("COM_FABRIK_CSV_DOWNLOAD_HERE")+"

";if(typeOf(document.id("csvmsg"))!=="null"){document.id("csvmsg").set("html",h)}this.csvWindow.fitToContent();document.getElements("input.exportCSVButton").removeProperty("disabled")}}}.bind(this)});d.send()},csvExportFilterOpts:function(e){var d=0,g,a=0,f,b=["origvalue","value","condition","join","key","search_type","match","full_words_only","eval","grouped_to_previous","hidden","elementid"];this.getFilters().each(function(h){f=h.name.split("[").getLast().replace("]","").toInt();d=f>d?f:d;e[h.name]=h.get("value")}.bind(this));d++;Object.each(this.options.advancedFilters,function(h,k){if(b.contains(k)){a=0;for(g=0;g