Merge commit 'v7.10.18' into 8

Conflicts:
	docs/gotcha.txt
	docs/previousVersion.sql
	docs/templates.txt
	lib/WebGUI.pm
	lib/WebGUI/Asset/File.pm
	lib/WebGUI/Asset/Story.pm
	lib/WebGUI/Asset/Wobject/Calendar.pm
	lib/WebGUI/Asset/Wobject/Thingy.pm
	lib/WebGUI/AssetExportHtml.pm
	lib/WebGUI/Content/AssetManager.pm
	lib/WebGUI/Group.pm
	lib/WebGUI/Macro/AssetProxy.pm
	lib/WebGUI/Shop/PayDriver/PayPal/PayPalStd.pm
	lib/WebGUI/Storage.pm
	t/Asset/AssetExportHtml.t
	t/Asset/Story.t
	t/Shop/TaxDriver/Generic.t
	t/Storage.t
This commit is contained in:
Doug Bell 2011-06-21 16:03:49 -05:00
commit 0c5acb697b
75 changed files with 979 additions and 139 deletions

View file

@ -7,6 +7,7 @@
if ( typeof WebGUI == "undefined" ) {
WebGUI = {};
}
if ( typeof WebGUI.AssetManager == "undefined" ) {
WebGUI.AssetManager = {};
}
@ -82,37 +83,52 @@ WebGUI.AssetManager.findRow = function ( child ) {
}
};
WebGUI.AssetManager.assetActionCache = {};
/*---------------------------------------------------------------------------
WebGUI.AssetManager.formatActions ( )
Format the Edit and More links for the row
*/
WebGUI.AssetManager.formatActions = function ( elCell, oRecord, oColumn, orderNumber ) {
if ( oRecord.getData( 'actions' ) ) {
elCell.innerHTML
= '<a href="' + WebGUI.AssetManager.appendToUrl(oRecord.getData( 'url' ), 'func=edit;proceed=manageAssets') + '">'
+ WebGUI.AssetManager.i18n.get('Asset', 'edit') + '</a>'
+ ' | '
;
}
else {
elCell.innerHTML = "";
}
var more = document.createElement( 'a' );
elCell.appendChild( more );
more.appendChild( document.createTextNode( WebGUI.AssetManager.i18n.get('Asset','More' ) ) );
more.href = '#';
var data = oRecord.getData(),
id = data.assetId,
assets = WebGUI.AssetManager.assetActionCache,
asset = assets[id],
edit, more;
// Delete the old menu
if ( document.getElementById( 'moreMenu' + oRecord.getData( 'assetId' ) ) ) {
var oldMenu = document.getElementById( 'moreMenu' + oRecord.getData( 'assetId' ) );
oldMenu.parentNode.removeChild( oldMenu );
elCell.innerHTML = '';
if (!data.actions) {
return;
}
var options = WebGUI.AssetManager.buildMoreMenu(oRecord.getData( 'url' ), more, oRecord.getData( 'actions' ));
if (!asset) {
assets[id] = asset = {};
asset.data = data;
asset.bar = document.createTextNode(' | ');
var menu = new YAHOO.widget.Menu( "moreMenu" + oRecord.getData( 'assetId' ), options );
YAHOO.util.Event.onDOMReady( function () { menu.render( document.getElementById( 'assetManager' ) ); } );
YAHOO.util.Event.addListener( more, "click", function (e) { YAHOO.util.Event.stopEvent(e); menu.show(); menu.focus(); }, null, menu );
edit = asset.edit = document.createElement('a');
edit.href = WebGUI.AssetManager.appendToUrl(
data.url, 'func=edit;proceed=manageAssets'
);
edit.appendChild(document.createTextNode(
WebGUI.AssetManager.i18n.get('Asset', 'edit')
));
more = asset.more = document.createElement('a');
more.href = '#';
more.appendChild(document.createTextNode(
WebGUI.AssetManager.i18n.get('Asset','More')
));
YAHOO.util.Event.addListener(
more, 'click', WebGUI.AssetManager.onMoreClick, asset
);
}
elCell.appendChild(asset.edit);
elCell.appendChild(asset.bar);
elCell.appendChild(asset.more);
};
/*---------------------------------------------------------------------------
@ -171,13 +187,20 @@ WebGUI.AssetManager.formatRank = function ( elCell, oRecord, oColumn, orderNumbe
+ 'onchange="WebGUI.AssetManager.selectRow( this )" />';
};
/*---------------------------------------------------------------------------
WebGUI.AssetManager.DefaultSortedBy ( )
WebGUI.AssetManager.onMoreClick ( event, asset )
Event handler for the more menu's click event
*/
WebGUI.AssetManager.DefaultSortedBy = {
"key" : "lineage",
"dir" : YAHOO.widget.DataTable.CLASS_ASC
WebGUI.AssetManager.onMoreClick = function (e, a) {
var options, menu = a.menu, d = a.data;
YAHOO.util.Event.stopEvent(e);
if (!menu) {
options = WebGUI.AssetManager.buildMoreMenu(d.url, a.more, d.actions);
a.menu = menu = new YAHOO.widget.Menu('assetMenu'+d.assetId, options);
menu.render(document.getElementById('assetManager'));
}
menu.show();
menu.focus();
};
/*---------------------------------------------------------------------------
@ -283,7 +306,9 @@ WebGUI.AssetManager.initDataTable = function (o) {
{ key: 'childCount' }
],
metaFields: {
totalRecords: "totalAssets" // Access to value in the server response
totalRecords : 'totalAssets',
sortColumn : 'sort',
sortDirection : 'dir'
}
};
@ -298,13 +323,19 @@ WebGUI.AssetManager.initDataTable = function (o) {
initialRequest : 'recordOffset=0',
dynamicData : true,
paginator : assetPaginator,
sortedBy : WebGUI.AssetManager.DefaultSortedBy,
generateRequest : WebGUI.AssetManager.BuildQueryString
}
);
WebGUI.AssetManager.DataTable.handleDataReturnPayload = function(oRequest, oResponse, oPayload) {
oPayload.totalRecords = oResponse.meta.totalRecords;
var m = oResponse.meta;
oPayload.totalRecords = m.totalRecords;
this.set('sortedBy', {
key: m.sortColumn,
dir: m.sortDirection === 'desc' ?
YAHOO.widget.DataTable.CLASS_DESC :
YAHOO.widget.DataTable.CLASS_ASC
});
return oPayload;
};