[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [11988] more on yui3 for tables
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [11988] more on yui3 for tables |
Date: |
Fri, 23 May 2014 13:26:32 +0000 |
Revision: 11988
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=11988
Author: sigurdne
Date: 2014-05-23 13:26:30 +0000 (Fri, 23 May 2014)
Log Message:
-----------
more on yui3 for tables
Modified Paths:
--------------
trunk/phpgwapi/inc/class.uicommon.inc.php
trunk/phpgwapi/js/yui3/common.js
trunk/phpgwapi/js/yui3/datatable.js
Modified: trunk/phpgwapi/inc/class.uicommon.inc.php
===================================================================
--- trunk/phpgwapi/inc/class.uicommon.inc.php 2014-05-22 14:09:28 UTC (rev
11987)
+++ trunk/phpgwapi/inc/class.uicommon.inc.php 2014-05-23 13:26:30 UTC (rev
11988)
@@ -82,6 +82,11 @@
phpgwapi_yui::load_widget('autocomplete');
phpgwapi_yui::load_widget('animation');
+ if($yui == 'yui3')
+ {
+ self::add_javascript('phpgwapi', 'yui3',
'yui/yui-min.js');
+ }
+
self::add_javascript('phpgwapi', $yui, 'common.js');
$this->url_prefix = str_replace('_', '.',
get_class($this));
Modified: trunk/phpgwapi/js/yui3/common.js
===================================================================
--- trunk/phpgwapi/js/yui3/common.js 2014-05-22 14:09:28 UTC (rev 11987)
+++ trunk/phpgwapi/js/yui3/common.js 2014-05-23 13:26:30 UTC (rev 11988)
@@ -1,3 +1,21 @@
+var arURLParts = strBaseURL.split('?');
+var comboBase = arURLParts[0] + 'phpgwapi/inc/yui-combo-master/combo.php?';
+
+YUI_config = {
+ //Don't combine the files
+ combine: true,
+ //Ignore things that are already loaded (in this process)
+ ignoreRegistered: false,
+ //Set the base path
+ comboBase: comboBase,
+ base: '',
+ //And the root
+ root: '',
+ //Require your deps
+ require: [ ]
+};
+
+
/*$Id: yui_booking_i18n.xsl 8267 2011-12-11 12:27:18Z sigurdne $*/
YAHOO.namespace('portico');
Modified: trunk/phpgwapi/js/yui3/datatable.js
===================================================================
--- trunk/phpgwapi/js/yui3/datatable.js 2014-05-22 14:09:28 UTC (rev 11987)
+++ trunk/phpgwapi/js/yui3/datatable.js 2014-05-23 13:26:30 UTC (rev 11988)
@@ -7,38 +7,40 @@
};
YAHOO.portico.renderUiFormItems = function(container) {
- var items = YAHOO.util.Dom.getElementsBy(function(){return true;},
'input', container);
- for(var i=0; i < items.length; i++) {
- var type = items[i].getAttribute('type');
- if(type == 'link') {
- new YAHOO.widget.Button(items[i],
- {type: 'link',
- href: items[i].getAttribute('href')});
- }
- else if(type == 'submit') {
- new YAHOO.widget.Button(items[i], {type: 'submit'});
- }
- }
+ var items = YAHOO.util.Dom.getElementsBy(function() {
+ return true;
+ }, 'input', container);
+ for (var i = 0; i < items.length; i++) {
+ var type = items[i].getAttribute('type');
+ if (type == 'link') {
+ new YAHOO.widget.Button(items[i],
+ {type: 'link',
+ href: items[i].getAttribute('href')});
+ }
+ else if (type == 'submit') {
+ new YAHOO.widget.Button(items[i], {type: 'submit'});
+ }
+ }
};
YAHOO.portico.setupPaginator = function() {
var paginatorConfig = {
- rowsPerPage: 10,
- alwaysVisible: true,
- template: "{PreviousPageLink} <strong>{CurrentPageReport}</strong>
{NextPageLink}",
- pageReportTemplate: "Showing items {startRecord} - {endRecord} of
{totalRecords}",
- containers: ['paginator']
- };
-
+ rowsPerPage: 10,
+ alwaysVisible: true,
+ template: "{PreviousPageLink}
<strong>{CurrentPageReport}</strong> {NextPageLink}",
+ pageReportTemplate: "Showing items {startRecord} - {endRecord}
of {totalRecords}",
+ containers: ['paginator']
+ };
+
YAHOO.portico.lang('setupPaginator', paginatorConfig);
var pag = new YAHOO.widget.Paginator(paginatorConfig);
- pag.render();
+ pag.render();
return pag;
};
YAHOO.portico.preSerializeQueryFormListeners = new Array();
- YAHOO.portico.addPreSerializeQueryFormListener = function(func) {
+YAHOO.portico.addPreSerializeQueryFormListener = function(func) {
YAHOO.portico.preSerializeQueryFormListeners.push(func);
}
@@ -48,542 +50,162 @@
}
}
-YAHOO.portico.initializeDataTable = function()
-{
- YAHOO.portico.setupToolbar();
- YAHOO.portico.setupListActions();
- YAHOO.portico.setupDatasource();
- var pag = YAHOO.portico.setupPaginator();
- var fields = [];
- for(var i=0; i < YAHOO.portico.columnDefs.length; i++) {
- fields.push(YAHOO.portico.columnDefs[i].key);
- }
- var baseUrl = YAHOO.portico.dataSourceUrl;
- if(baseUrl[baseUrl.length - 1] != '&') {
- baseUrl += '&';
- }
- if (YAHOO.portico.initialSortedBy) {
-// baseUrl += 'sort=' + YAHOO.portico.initialSortedBy.key + '&dir=' +
YAHOO.portico.initialSortedBy.dir;
- } else {
-// baseUrl += 'sort=' + fields[0];
- }
-
-// baseUrl += '&results=' + pag.getRowsPerPage() + '&';
- var myDataSource = new YAHOO.util.DataSource(baseUrl);
- myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSON;
- myDataSource.connXhrMode = "queueRequests";
- myDataSource.responseSchema = {
- resultsList: "ResultSet.Result",
- fields: fields,
- metaFields : {
- totalResultsAvailable: "ResultSet.totalResultsAvailable",
- startIndex: 'ResultSet.startIndex',
- pageSize: 'ResultSet.pageSize',
- sortKey: 'ResultSet.sortKey',
- sortDir: 'ResultSet.sortDir'
- }
- };
+onDownloadClick = function()
+{
+ var state = YAHOO.util.History.getCurrentState('state');
+ uri = parseUri(YAHOO.portico.dataSourceUrl);
- var myDataTable = new YAHOO.widget.DataTable("datatable-container",
- YAHOO.portico.columnDefs, myDataSource, {
- paginator: pag,
- dynamicData: true,
- sortedBy: YAHOO.portico.initialSortedBy || {key: fields[0], dir:
YAHOO.widget.DataTable.CLASS_ASC}
- });
- var handleSorting = function (oColumn) {
- var sDir = this.getColumnSortDir(oColumn);
- var newState = getState(oColumn.key, sDir);
- History.navigate("state", newState);
- };
- myDataTable.sortColumn = handleSorting;
+ var oArgs = uri.queryKey;
+ oArgs.phpgw_return_as = '';
+ oArgs.click_history = '';
- /* Inline editor from 'rental'*/
+ donwload_func = oArgs.menuaction;
+ // modify actual function for "download" in path_values
+ // for example: property.uilocation.index -->
property.uilocation.download
+ tmp_array = donwload_func.split(".")
+ tmp_array[2] = "download"; //set function DOWNLOAD
+ donwload_func = tmp_array.join('.');
+ oArgs.menuaction = donwload_func;
+ oArgs.allrows = 1;
+ oArgs.start = 0;
- var highlightEditableCell = function(oArgs) {
- var elCell = oArgs.target;
- if(YAHOO.util.Dom.hasClass(elCell, "yui-dt-editable")) {
- myDataTable.highlightCell(elCell);
- }
- };
-
- myDataTable.editor_action = YAHOO.portico.editor_action;
-
- // Handle mouseover and click events for inline editing
- myDataTable.subscribe("cellMouseoverEvent",
highlightEditableCell);
- myDataTable.subscribe("cellMouseoutEvent",
myDataTable.onEventUnhighlightCell);
- myDataTable.subscribe("cellClickEvent",
myDataTable.onEventShowCellEditor);
-
- myDataTable.subscribe("editorSaveEvent", function(oArgs) {
- var field = oArgs.editor.getColumn().field;
- var value = oArgs.newData;
- var id = oArgs.editor.getRecord().getData().id;
-//console.log(oArgs.editor.getRecord());
- var action = oArgs.editor.getDataTable().editor_action;
-
- // Translate to unix time if the editor is a calendar.
- if (oArgs.editor._sType == 'date') {
- var selectedDate =
oArgs.editor.calendar.getSelectedDates()[0];
- //alert("selDate1: " + selectedDate);
- // Make sure we're at midnight GMT
- selectedDate = selectedDate.toString().split("
");
- //for(var e=0;e<selectedDate.length;e++){
- // alert("element " + e + ": " +
selectedDate[e]);
- //}
- if(selectedDate[3] == "00:00:00"){
- // alert("seldate skal byttes!");
- selectedDate =
selectedDate.slice(0,3).join(" ") + " " + selectedDate[5] + " 00:00:00 GMT";
- }
- else{
- selectedDate =
selectedDate.slice(0,4).join(" ") + " 00:00:00 GMT";
- }
- //selectedDate =
selectedDate.toString().split(" ").slice(0, 4).join(" ") + " 00:00:00 GMT";
- //alert("selDate2: " + selectedDate);
- var value = Math.round(Date.parse(selectedDate)
/ 1000);
- //alert("selDate3 value: " + value);
- }
-
- var oArgs_edit =
{menuaction:action,field:field,value:value,id:id};
- var edit_Url = phpGWLink('index.php', oArgs_edit,true);
-
- var request = YAHOO.util.Connect.asyncRequest(
- 'GET',
- edit_Url,
- {
- success: ajaxResponseSuccess,
- failure: ajaxResponseFailure,
- args:oArgs.editor.getDataTable()
- }
- );
- });
-
-/*
- // Don't set the row to be left-clickable if the table is
editable by inline editors.
- // In that case we use cellClickEvents instead
- var table_should_be_clickable = true;
- for (i in YAHOO.portico.columnDefs) {
- if (YAHOO.portico.columnDefs[i].editor) {
- //table_should_be_clickable = false;
- }
- }
-
- if (table_should_be_clickable &&
!YAHOO.portico.disable_left_click) {
- //... create a handler for regular clicks on a table row
- myDataTable.subscribe("rowClickEvent", function(e,obj) {
- YAHOO.util.Event.stopEvent(e);
-
- var target = e.target;
- var record = this.getRecord(target);
- var row = this.getRow(target);
- //once you get here you can access values like
..
- //record.getData("ColumnName") or row.rowIndex
-
- //... trigger first action on row click
- // var row = obj.table.getTrEl(e.target);
- if(row)
- {
- // var record = obj.table.getRecord(row);
- //... check whether this action should
be an AJAX call
- if(record.getData().ajax[0]) {
- var request =
YAHOO.util.Connect.asyncRequest(
- 'GET',
- //... execute first
action
-
record.getData().actions[0],
- {
- success:
ajaxResponseSuccess,
- failure:
ajaxResponseFailure,
- args:obj.table
- }
- );
- } else {
- //... execute first action
- window.location =
record.getData().actions[0];
- }
- }
- },this);
-
- //... highlight rows on mouseover. This too only
happens if the table is
- // not editable.
- myDataTable.subscribe("rowMouseoverEvent",
myDataTable.onEventHighlightRow);
- myDataTable.subscribe("rowMouseoutEvent",
myDataTable.onEventUnhighlightRow);
- }
-
-*/
-
-
- /* Inline editor from 'rental'*/
-
-
- /* Start from Property*/
-
-
/********************************************************************************
- *
- */
- var onContextMenuBeforeShow = function(p_sType, p_aArgs)
+ if (typeof (config_values) != 'undefined' &&
config_values.particular_download != 'undefined' &&
config_values.particular_download)
{
- var prefixSelected = '';
- var oTarget = this.contextEventTarget;
- if (this.getRoot() == this)
- {
- if(oTarget.tagName != "TD")
- {
- oTarget =
YAHOO.util.Dom.getAncestorByTagName(oTarget, "td");
- }
- oSelectedTR =
YAHOO.util.Dom.getAncestorByTagName(oTarget, "tr");
- oSelectedTR.style.backgroundColor = '#AAC1D8' ;
- oSelectedTR.style.color = "black";
- YAHOO.util.Dom.addClass(oSelectedTR, prefixSelected);
- }
+ oArgs.menuaction = config_values.particular_download;
}
+ var requestUrl = phpGWLink('index.php', oArgs);
-
/********************************************************************************
- *
- */
- var onContextMenuHide = function(p_sType, p_aArgs)
- {
- var prefixSelected = '';
- if (this.getRoot() == this && oSelectedTR)
- {
- oSelectedTR.style.backgroundColor = "" ;
- oSelectedTR.style.color = "";
- YAHOO.util.Dom.removeClass(oSelectedTR, prefixSelected);
- }
- }
-
/********************************************************************************
- *
- */
- var onContextMenuClick = function(p_sType, p_aArgs, p_myDataTable)
- {
- var task = p_aArgs[1];
- if(task)
- {
- // Extract which TR element triggered the
context menu
- var elRow =
p_myDataTable.getTrEl(this.contextEventTarget);
- if(elRow)
- {
- var oRecord =
p_myDataTable.getRecord(elRow);
- var url =
YAHOO.portico.actions[task.groupIndex].action;
- var sUrl = "";
- var vars2 = "";
+ requestUrl += '&' + state;
-
if(YAHOO.portico.actions[task.groupIndex].parameters!=null)
- {
- for(f=0;
f<YAHOO.portico.actions[task.groupIndex].parameters.parameter.length; f++)
- {
- param_name =
YAHOO.portico.actions[task.groupIndex].parameters.parameter[f].name;
- param_source =
YAHOO.portico.actions[task.groupIndex].parameters.parameter[f].source;
- vars2 = vars2 +
"&"+param_name+"=" + oRecord.getData(param_source);
- }
- sUrl = url + vars2;
- }
-
if(YAHOO.portico.actions[task.groupIndex].parameters.parameter.length > 0)
- {
- //nothing
- }
- else //for New
- {
- sUrl = url;
- }
- //Convert all HTML entities to their
applicable characters
+ window.open(requestUrl, 'window');
+}
-
sUrl=YAHOO.portico.html_entity_decode(sUrl);
- // look for the word "DELETE" in URL
-
if(YAHOO.portico.substr_count(sUrl,'delete')>0)
- {
- confirm_msg =
YAHOO.portico.actions[task.groupIndex].confirm_msg;
- if(confirm(confirm_msg))
- {
- sUrl = sUrl +
"&confirm=yes&phpgw_return_as=json";
- delete_record(sUrl);
- }
- }
- else
- {
-
if(YAHOO.portico.substr_count(sUrl,'target=_blank')>0)
- {
-
window.open(sUrl,'_blank');
- }
- else
if(YAHOO.portico.substr_count(sUrl,'target=_lightbox')>0)
- {
- //have to be defined as
a local function. Example in invoice.list_sub.js
- //console.log(sUrl); //
firebug
- showlightbox(sUrl);
- }
- else
if(YAHOO.portico.substr_count(sUrl,'target=_tinybox')>0)
- {
- //have to be defined as
a local function. Example in invoice.list_sub.js
- //console.log(sUrl); //
firebug
- showtinybox(sUrl);
- }
- else
- {
-
window.open(sUrl,'_self');
- }
- }
- }
- }
- };
-
/********************************************************************************
- *
- */
- var GetMenuContext = function()
- {
- var opts = new Array();
- var p=0;
- for(var k =0; k < YAHOO.portico.actions.length; k ++)
- {
- if(YAHOO.portico.actions[k].my_name != 'add')
- { opts[p]=[{text: YAHOO.portico.actions[k].text}];
- p++;
- }
- }
- return opts;
- }
+YUI().use("datatable", "datasource-io", "datasource-jsonschema",
"datatable-datasource", function(Y)
+{
+ YAHOO.portico.setupToolbar();
+ YAHOO.portico.setupListActions();
+ YAHOO.portico.setupDatasource();
+ var pag = YAHOO.portico.setupPaginator();
- if(!myDataTable.editor_action)
- {
- myDataTable.subscribe("rowMouseoverEvent",
myDataTable.onEventHighlightRow);
+ var fields = [];
+ for (var i = 0; i < YAHOO.portico.columnDefs.length; i++) {
+ fields.push(YAHOO.portico.columnDefs[i].key);
}
+ var baseUrl = YAHOO.portico.dataSourceUrl;
+ if (baseUrl[baseUrl.length - 1] != '&') {
+ baseUrl += '&';
+ }
- myDataTable.subscribe("rowMouseoutEvent",
myDataTable.onEventUnhighlightRow);
-
- myContextMenu = new YAHOO.widget.ContextMenu("mycontextmenu",
{trigger:myDataTable.getTbodyEl()});
- myContextMenu.addItems(GetMenuContext());
-
- myContextMenu.subscribe("beforeShow", onContextMenuBeforeShow);
- myContextMenu.subscribe("hide", onContextMenuHide);
- //Render the ContextMenu instance to the parent container of the
DataTable
- myContextMenu.subscribe("click", onContextMenuClick, myDataTable);
- myContextMenu.render("datatable-container");
-
-
- for(var i=0; i < YAHOO.portico.columnDefs.length;i++)
- {
- if( YAHOO.portico.columnDefs[i].sortable )
- {
- YAHOO.util.Dom.getElementsByClassName(
'yui-dt-resizerliner' , 'div' )[i].style.background = '#D8D8DA
url(phpgwapi/js/yahoo/assets/skins/sam/sprite.png) repeat-x scroll 0 -100px';
- }
- //title columns alwyas center
-// YAHOO.util.Dom.getElementsByClassName( 'yui-dt-resizerliner',
'div' )[0].style.textAlign = 'center';
+ if (YAHOO.portico.initialSortedBy) {
+// baseUrl += 'sort=' + YAHOO.portico.initialSortedBy.key + '&dir=' +
YAHOO.portico.initialSortedBy.dir;
+ } else {
+// baseUrl += 'sort=' + fields[0];
}
+ ///----------- start eksempel ----------
+ /*
+ var url = "http://query.yahooapis.com/v1/public/yql?format=json" +
+ "&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys",
+ query = "&q=" + encodeURIComponent(
+ 'select * from local.search ' +
+ 'where zip = "94089" and query = "pizza"'),
+ dataSource,
+ table;
+
+ console.log(fields);
+
+ dataSource = new Y.DataSource.IO({source: url});
+
+ dataSource.plug(Y.Plugin.DataSourceJSONSchema, {
+ schema: {
+ resultListLocator: "query.results.Result",
+ resultFields: fields
+ }
+ });
+
+ table = new Y.DataTable({
+ columns: fields,
+ summary: "Pizza places near 98089",
+ caption: "Table with JSON data from YQL",
+ rowsPerPage: 10,
+ paginatorLocation: ['header', 'footer']
+ });
+
+ table.plug(Y.Plugin.DataTableDataSource, {datasource: dataSource});
+
+ table.render("#datatable-container");
+
+ table.datasource.load({
+ request: query,
+ callback: {
+ success: function(e) {
+ table.datasource.onDataReturnInitializeTable(e);
+ },
+ failure: function() {
+ Y.one('#datatable-container').setHTML(
+ 'The data could not be retrieved. Please <a href="?mock=true">try this
example with mocked data</a> instead.');
+ }
+ }
+ });
+ */
+ //--- slutt eksempel--//
- //... calback methods for handling ajax calls
- var ajaxResponseSuccess = function(o){
- message_delete =
o.responseText.toString().replace("\"","").replace("\"","");
- delete_content_div("message",1);
- if(message_delete != "")
- {
- oDiv=document.createElement("DIV");
- txtNode =
document.createTextNode(message_delete);
- oDiv.appendChild(txtNode);
- oDiv.style.color = '#009900';
- oDiv.style.fontWeight = 'bold';
- div_message.appendChild(oDiv);
-// alert(message_delete);
- message_delete = "";
- }
- var state = YAHOO.util.History.getCurrentState('state');
- handleHistoryNavigation(state);
- };
- var ajaxResponseFailure = function(o)
- {
- alert('feil');
- };
+ // baseUrl += '&results=' + pag.getRowsPerPage() + '&';
+ var dataSource = new Y.DataSource.IO({
+ source: baseUrl
+ });
+ var query = '&results=' + pag.getRowsPerPage() + '&';
-
- var delete_record = function(sUrl)
- {
- var callback = { success: function(o){
-
message_delete = o.responseText.toString().replace("\"","").replace("\"","");
- //shown
message if delete records
-
delete_content_div("message",1);
-
if(message_delete != "")
- {
-
oDiv=document.createElement("DIV");
-
txtNode = document.createTextNode(message_delete);
-
oDiv.appendChild(txtNode);
-
oDiv.style.color = '#009900';
-
oDiv.style.fontWeight = 'bold';
-
div_message.appendChild(oDiv);
-
message_delete = "";
- }
-
- var
state = YAHOO.util.History.getCurrentState('state');
-
handleHistoryNavigation(state);
- },
- failure:
function(o){window.alert('Server or your connection is dead.')},
- timeout: 10000
- };
- var request = YAHOO.util.Connect.asyncRequest('POST', sUrl,
callback);
- }
-
-
/********************************************************************************
- * Delete all message un DIV 'message'
- * type == 1 always delete div content
- * type == 2 depende of if exists "values_ds.message" values
- */
- var delete_content_div = function(mydiv,type)
- {
- div_message= YAHOO.util.Dom.get(mydiv);
- //flag borrar
- borrar = false;
- //depende of values_ds.message
- if(type == 2)
- {
- //FIXME
- if(window.values_ds.message &&
window.values_ds.message.length)
- {
- //delete content
- borrar = true;
+ dataSource.plug(Y.Plugin.DataSourceJSONSchema, {
+ schema: {
+ resultListLocator: "ResultSet.Result",
+ resultFields: fields,
+ metaFields: {
+ totalResultsAvailable:
"ResultSet.totalResultsAvailable",
+ startIndex: 'ResultSet.startIndex',
+ pageSize: 'ResultSet.pageSize',
+ sortKey: 'ResultSet.sortKey',
+ sortDir: 'ResultSet.sortDir'
}
}
-
- //always delete div content
- if(type == 1 || borrar)
- {
- if ( div_message.hasChildNodes() )
- {
- while ( div_message.childNodes.length >= 1 )
- {
- div_message.removeChild( div_message.firstChild
);
- }
- }
- }
- }
-
-
-
- /* End from Property*/
-
- var handlePagination = function(state) {
- var sortedBy = this.get("sortedBy");
- var newState = getState(sortedBy.key, sortedBy.dir,
state.recordOffset);
- History.navigate("state", newState);
- };
- pag.unsubscribe("changeRequest", myDataTable.onPaginatorChangeRequest);
- pag.subscribe("changeRequest", handlePagination, myDataTable, true);
-
- myDataTable.doBeforeLoadData = function(oRequest, oResponse, oPayload) {
- oPayload.totalRecords = oResponse.meta.totalResultsAvailable;
- oPayload.pagination = {
- rowsPerPage: oResponse.meta.pageSize || 10,
- recordOffset: oResponse.meta.startIndex || 0
- }
- oPayload.sortedBy = {
- key: oResponse.meta.sortKey || "id",
- dir: (oResponse.meta.sortDir) ? "yui-dt-" +
oResponse.meta.sortDir : "yui-dt-asc"
- };
- return true;
- }
-
- YAHOO.util.Event.on(
- YAHOO.util.Selector.query('select'), 'change', function (e) {
- //var val = this.value;
- var state = getState();
- YAHOO.util.Dom.setStyle('list_flash', 'display',
'none');
- History.navigate('state', state);
});
- YAHOO.util.Event.addListener('queryForm', "submit", function(e){
- YAHOO.util.Event.stopEvent(e);
- var state = getState();
- YAHOO.util.Dom.setStyle('list_flash', 'display', 'none');
- History.navigate('state', state);
- });
- YAHOO.util.Event.addListener('list_actions_form', "submit", function(e){
- YAHOO.util.Event.stopEvent(e);
- window.setTimeout(function() {
- var state = getState();
- var action = myDataSource.liveData + '&' + state;
- action = action.replace('&phpgw_return_as=json', '');
-
YAHOO.util.Dom.setAttribute(document.getElementById('list_actions_form'),
'action', action);
- document.getElementById('list_actions_form').submit();
- }, 0);
- });
+ table = new Y.DataTable({
+ columns: fields //FIXME: YAHOO.portico.columnDefs
+ // summary: "Pizza places near 98089",
+ // caption: "Table with JSON data from YQL"
+ // rowsPerPage: 10,
+ // paginatorLocation: ['header', 'footer']
- var History = YAHOO.util.History;
- var getState = function(skey, sdir, start) {
- var state = YAHOO.portico.serializeForm('queryForm');
- var sortedBy = myDataTable.get("sortedBy");
- skey = skey ? skey : sortedBy.key;
- sdir = sdir ? sdir : sortedBy.dir;
- sdir = sdir == 'yui-dt-asc' ? 'asc' : 'desc';
- start = start ? start : 0;
- state += '&sort=' + skey;
- state += '&dir=' + sdir;
- state += '&startIndex=' + start;
- return state;
- }
-
- var handleHistoryNavigation = function (state) {
- var params = YAHOO.portico.parseQS(state);
- YAHOO.portico.fillForm('queryForm', params);
- myDataSource.sendRequest(state, {success: function(sRequest,
oResponse, oPayload) {
- myDataTable.onDataReturnInitializeTable(sRequest,
oResponse, pag);
- }});
- };
-
- var initialRequest = History.getBookmarkedState("state") || getState();
- History.register("state", initialRequest, handleHistoryNavigation);
-/*
- History.onReady(function() {
- var state = YAHOO.util.History.getCurrentState('state');
- handleHistoryNavigation(state);
});
-*/
- History.initialize("yui-history-field", "yui-history-iframe");
+ table.plug(Y.Plugin.DataTableDataSource, {datasource: dataSource});
+ table.render("#datatable-container");
-};
-
-
-
-
- onDownloadClick = function()
- {
- var state = YAHOO.util.History.getCurrentState('state');
- uri = parseUri(YAHOO.portico.dataSourceUrl);
-
- var oArgs = uri.queryKey;
- oArgs.phpgw_return_as = '';
- oArgs.click_history = '';
-
- donwload_func = oArgs.menuaction;
- // modify actual function for "download" in path_values
- // for example: property.uilocation.index -->
property.uilocation.download
- tmp_array= donwload_func.split(".")
- tmp_array[2]="download"; //set function DOWNLOAD
- donwload_func = tmp_array.join('.');
- oArgs.menuaction=donwload_func;
- oArgs.allrows=1;
- oArgs.start=0;
-
-
- if(typeof(config_values) != 'undefined' &&
config_values.particular_download != 'undefined' &&
config_values.particular_download)
- {
- oArgs.menuaction = config_values.particular_download;
+ table.datasource.load({
+ request: query,
+ callback: {
+ success: function(e) {
+alert('hei');
+ },
+ failure: function() {
+ Y.one('#datatable-container').setHTML(
+ 'The data could not be retrieved.');
+ }
}
+ });
- var requestUrl = phpGWLink('index.php', oArgs);
-
- requestUrl += '&' + state;
+});
- window.open(requestUrl,'window');
- }
-
-
-YAHOO.util.Event.addListener(window, "load",
YAHOO.portico.initializeDataTable);
-
-
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [11988] more on yui3 for tables,
Sigurd Nes <=