I have passed some simple Yui-Ext functions(like menu,grid) test in OFBiz.
My step is:
1. Download yui-ext and unzip to [OFBiz]\framework\images\webapp\images\ext-
1.0.1
2. Add JavaScript and CSS file in
[OFBiz]\framework\common\widget\CommonScreens.xml\<screen
name="GlobalDecorator">
<set field="layoutSettings.styleSheets[+0]"
value="/images/ext-1.0.1/resources/css/ext-all.css" global="true"/>
<set field="layoutSettings.javaScripts[]"
value="/images/ext-1.0.1/adapter/yui/yui-utilities.js" global="true"/>
<set field="layoutSettings.javaScripts[]"
value="/images/ext-1.0.1/adapter/yui/ext-yui-adapter.js" global="true"/>
<set field="layoutSettings.javaScripts[]"
value="/images/ext-1.0.1/ext-all-debug.js" global="true"/>
3. Develop the JavaScript in freemarker file (ftl)
Below is my sample code:
<script type="text/javascript">
<#if partyList?has_content>
Ext.onReady(function(){
var myData = [
<#list partyList as partyRow>
['${partyRow.partyId}','<#if partyRow.lastName?has_content>${
partyRow.lastName}<#if partyRow.firstName?has_content>,
${partyRow.firstName}</#if><#elseif
partyRow.groupName?has_content>${partyRow.groupName}<#else><#assign
partyName = Static["org.ofbiz.party.party.PartyHelper"].getPartyName(partyRow,
true)><#if partyName?has_content>${partyName}<#else>(${
uiLabelMap.PartyNoNameFound})</#if></#if>'],
</#list>
[' ',' ']
];
var RecordDef = Ext.data.Record.create([
{name: 'partyId'},
{name: 'name'}
]);
// create the Data Store
var ds = new Ext.data.Store({
// load using HTTP
proxy: new Ext.data.MemoryProxy(myData),
reader: new Ext.data.ArrayReader({id: 0}, RecordDef)
});
var cm = new Ext.grid.ColumnModel([
{header: "ID", width: 200, dataIndex: 'partyId', sortable: true},
{header: "Name", width: 200, dataIndex: 'name', sortable: true}
]);
cm.defaultSortable = true;
// create the grid
var grid = new Ext.grid.Grid('grid-para', {
ds: ds,
cm: cm
});
grid.render();
ds.load();
});
</#if>
</script>
<div id="grid-para"></div>
Regards
Jason
2007/6/14, Krzysztof Podejma <[EMAIL PROTECTED]>:
I have integrated ZK library with satisfying result
Maybe you should consider this lib.
Krzysztof Podejma