/**
*	A LouGIS library by Lounaispaikka.
*	@copyright Lounaispaikka, www.lounaispaikka.fi <CC BY-SA 3.0>
*	@version 2011-12-19T20:49:30+02:00
*/
var userId,ownGroupStore,allGroupsStore,userStore,regWin=null,pwReqWin=null,CMSeditPanel;Ext.apply(Ext.form.VTypes,{password:function(a,d){if(d.initialPassField){var c=Ext.getCmp(d.initialPassField);return a==c.getValue()}return true},passwordText:t("")});
Ext.onReady(function(){Ext.QuickTips.init();Ext.form.Field.prototype.msgTarget=Ext.isGecko?"qtip":"side";var a=Ext.get("feedbacklink");a!=null&&a.on("click",function(){showFeedbackWindow()});a=Ext.get("userLogin");a!=null&&a.on("click",function(){showLoginAndRegistration("loginTab")});a=Ext.get("userRegister");a!=null&&a.on("click",function(){showLoginAndRegistration("registerTab")});a=Ext.get("userHelp");a!=null&&a.on("click",function(){showHelp("user")})});
function showLoginAndRegistration(a,d){if(a==null)a=0;if(Ext.get("regWin")==null){regWin=new Ext.Window({id:"regWin",title:t(""),layout:"fit",layoutConfig:{align:"stretch",pack:"start",animate:true},width:300,height:300,plain:true,border:false,resizable:true,maximizable:true,collapsible:true,closable:true});regTabPanel=new Ext.TabPanel({activeTab:a,frame:false,plain:false,border:false,autoScroll:true,defaults:{autoHeight:true,autoWidth:true}});var c=new Ext.form.FormPanel({title:t(""),id:"loginTab",
border:false,monitorValid:true,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;",keys:[{key:[Ext.EventObject.ENTER],handler:function(){login(Ext.getCmp("user_default_email_login").getRawValue(),Ext.getCmp("user_password_login").getRawValue(),d)}}]}),b=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/user_go.png",formBind:true,handler:function(){login(Ext.getCmp("user_default_email_login").getRawValue(),Ext.getCmp("user_password_login").getRawValue(),d)}}),e=new Ext.form.FormPanel({title:t(""),
id:"registerTab",border:false,monitorValid:true,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;"}),j=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/user_go.png",formBind:true,handler:function(){e.getForm().submit({method:"POST",url:"/run/ug/saveUser/",text:t(""),waitMsg:t(""),submitEmptyText:false,success:function(k,f){var g=Ext.decode(f.response.responseText);if(g.success){login(Ext.getCmp("user_default_email_register").getRawValue(),Ext.getCmp("user_password_register").getRawValue(),
d);regWin.close();notify(t(""),t(""))}else Ext.Msg.alert("Status",t("")+": "+g.msg)},failure:function(k,f){var g=Ext.decode(f.response.responseText);Ext.Msg.alert("Status",t("")+": "+g.msg)}})}}),l=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/email_go.png",formBind:false,handler:function(){showNewPasswordRequestWindow()}});c.addButton(l);c.addButton(b);e.addButton(j);regTabPanel.add(c);regTabPanel.add(e);regWin.add(regTabPanel);regWin.show();growlRequest({url:"/run/ug/loginForm/",success:function(k){k=
Ext.decode(k.responseText);c.add(k.items);regWin.doLayout()}});growlRequest({url:"/run/ug/registerForm/",success:function(k){k=Ext.decode(k.responseText);e.add(k.items);regWin.doLayout()}})}}
function showNewPasswordRequestWindow(){if(Ext.get("pwReqWin")==null){pwReqWin=(new Ext.Window({id:"pwReqWin",title:t(""),layout:"fit",layoutConfig:{align:"stretch",pack:"start",animate:true},width:300,height:300,plain:true,border:false,resizable:true,maximizable:true,collapsible:true,closable:true})).show();var a=new Ext.form.FormPanel({id:"pwEmailForm",title:t(""),border:false,monitorValid:true,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;",items:[{fieldLabel:t(""),name:"reqEmail",
id:"reqEmail",vtype:"email"}]}),d=new Ext.Button({text:t(""),formBind:true,handler:function(){a.getForm().submit({method:"POST",url:"/run/password/requestNewPassword/",text:t(""),waitMsg:t(""),submitEmptyText:false,success:function(c,b){var e=Ext.decode(b.response.responseText);if(e.success){e=t("")+"<br />"+t("")+"<i>"+e.expires+"</i><br />"+t("");pwReqWin.close();Ext.Msg.alert("Status",e)}else{e=Ext.decode(b.response.responseText);pwReqWin.close();Ext.Msg.alert("Status",t("")+": "+e.msg)}},failure:function(c,
b){var e=Ext.decode(b.response.responseText);pwReqWin.close();Ext.Msg.alert("Status",t("")+": "+e.msg)}})}});a.addButton(d);pwReqWin.add(a);pwReqWin.doLayout()}}
function showAdditionalInfoWindow(){if(Ext.get("userWin")==null){var a=(new Ext.Window({id:"userWin",title:t(""),layout:"fit",layoutConfig:{align:"stretch",pack:"start",animate:true},width:500,height:maxElementHeight(680),plain:true,border:false,resizable:true,maximizable:true,collapsible:true,closable:true,plugins:[new Ext.ux.plugins.WindowDrawer({xtype:"windowdrawer",side:"e",animate:true,resizable:true,width:340,minWidth:150,height:300,header:false,bodyStyle:"padding: 4px;"})]})).show(),d=new Ext.TabPanel({activeTab:"userInfoForm",
frame:false,plain:false,border:false,autoScroll:true,defaults:{autoHeight:true,autoWidth:true}});d.on("tabchange",function(i,p){a.drawers.e.hide();p.doLayout()});var c=new Ext.form.FormPanel({id:"userInfoForm",title:t(""),border:false,monitorValid:true,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;",fileUpload:true,autoWidth:true}),b=new Ext.form.FieldSet({autoWidth:true,cls:"photoPanel",id:"profilePictureSet",header:false,border:false}),e=new Ext.form.FieldSet({title:t(""),labelWidth:150,
id:"profilePicture",defaults:{xtype:"textfield"},autoHeight:true,autoWidth:true}),j=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/disk.png",formBind:true,cls:"rightAligned",handler:function(){c.getForm().submit({method:"POST",url:"/run/ug/saveUser/",text:t(""),waitMsg:t(""),submitEmptyText:false,success:function(i,p){notify(t(""),t(""));createProfilePictureControls(b,p.result.image)},failure:function(){Ext.Msg.alert(t(""),t(""))}})}}),l=new Ext.form.FieldSet({title:t(""),labelWidth:150,defaults:{xtype:"textfield"},
autoHeight:true,autoWidth:true}),k=new Ext.form.FieldSet({title:t(""),labelWidth:150,defaults:{xtype:"textfield"},autoHeight:true,autoWidth:true}),f=new Ext.form.FormPanel({id:"passwordForm",title:t(""),border:false,monitorValid:true,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;"}),g=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/disk.png",formBind:true,handler:function(){buttonSubmitter(f,"/run/ug/changePassword/",t(""),t(""))}}),m=new Ext.form.FieldSet({title:t(""),labelWidth:150,
defaults:{xtype:"textfield"},autoHeight:true}),h=new Ext.FormPanel({title:t(""),border:false,monitorValid:true,labelWidth:150,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;"}),q=new Ext.form.FieldSet({autoHeight:true,layout:"fit",collapsible:false,hideLabels:true,title:t("")});ownGroupStore=new Ext.data.JsonStore({url:"/run/ug/getGroupsByUser/",storeId:"userGroupStore",root:"GroupsByUser",fields:[{name:"id",type:"int"},{name:"name",type:"string"},{name:"description",type:"string"},
{name:"admin",type:"boolean"},{name:"userCount",type:"int"},{name:"subGroupCount",type:"int"}],sortInfo:{field:"name",direction:"ASC"}});var o=new Ext.grid.GridPanel({store:ownGroupStore,anchor:"100%",autoExpandColumn:1,enableHdMenu:false,hidden:true,viewCongig:{autoFill:true},colModel:new Ext.grid.ColumnModel({defaults:{sortable:true},columns:[{header:t(""),dataIndex:"name"},{header:t(""),dataIndex:"userCount",renderer:function(i,p,n){i=i+" "+(i!=1?t(""):t(""));n=n.get("subGroupCount");if(n>0)i+=
", "+n+" "+(n!=1?t(""):t(""));return i}},{header:t(""),width:35,dataIndex:"admin",resizable:false,align:"center",renderer:function(i){return i?'<img src="/img/silkicons/silk/table_edit.png" class="clickableIcon"/>':""}},{header:t(""),width:20,align:"center",renderer:function(){return'<img src="/img/silkicons/silk/table_go.png" class="clickableIcon"/>'}}]}),viewConfig:{forceFit:true},height:190,autoScroll:true}),r=new Ext.form.Label({text:t(""),hidden:true});o.on("cellclick",function(i,p,n){var s=
i.getStore().getAt(p);i=s.get("id");p=s.get("name");s=s.get("admin");if(n==2&&s){a.drawers.e.hide();showGroupAdmin(i,p)}else showGroupInfo(i,p,a.drawers.e)});ownGroupStore.on("load",function(){if(ownGroupStore.getCount()<1){o.setVisible(false);r.setVisible(true)}else{o.setVisible(true);r.setVisible(false)}});var u=new Ext.form.FieldSet({autoHeight:true,layout:"fit",collapsible:false,hideLabels:true,title:t("")});allGroupsStore=new Ext.data.JsonStore({url:"/run/ug/getPublicGroupsByName/",storeId:"allGroupStore",
root:"groups",fields:[{name:"id",type:"int"},{name:"name",type:"string"},{name:"description",type:"string"},{name:"userCount",type:"int"},{name:"subGroupCount",type:"int"}],autoLoad:true,sortInfo:{field:"name",direction:"ASC"}});var v=new Ext.grid.GridPanel({store:allGroupsStore,anchor:"100%",autoExpandColumn:0,colModel:new Ext.grid.ColumnModel({defaults:{sortable:true},columns:[{header:t(""),dataIndex:"name"},{header:t(""),dataIndex:"userCount",renderer:function(i,p,n){i=i+" "+(i!=1?t(""):t(""));
n=n.get("subGroupCount");if(n>0)i+=", "+n+" "+(n!=1?t(""):t(""));return i}},{header:t(""),width:20,align:"center",renderer:function(){return'<img src="/img/silkicons/silk/table_go.png" class="clickableIcon"/>'}}]}),viewConfig:{forceFit:true},height:250,autoScroll:true});v.on("cellclick",function(i,p){var n=i.getStore().getAt(p),s=n.get("id");n=n.get("name");showGroupInfo(s,n,a.drawers.e)});var w=new Ext.Button({text:t(""),cls:"rightAligned",icon:"/img/silkicons/silk/add.png",handler:function(){a.drawers.e.hide();
showNewGroupWindow()}});q.add(o);q.add(r);ownGroupStore.load();u.add(v);f.add(m);f.addButton(g);h.add(q);h.add(u);h.add(w);d.add(c);d.add(f);d.add(h);a.add(d);growlRequest({url:"/run/ug/userForm/",method:"POST",params:{id:userId},success:function(i){i=Ext.decode(i.responseText);l.add(i.basicItems);k.add(i.additionalItems);createProfilePictureControls(b,i.oldImage);e.add(b);e.add(i.imageUpload);c.add(l);c.add(e);c.add(k);c.add(j);c.doLayout()}});growlRequest({url:"/run/ug/changePasswordForm/",method:"POST",
success:function(i){i=Ext.decode(i.responseText);m.add(i.items);a.doLayout()}})}}var selectedGroupId;
function createProfilePictureControls(a,d){a.removeAll();if(d){var c=new Ext.Panel({border:false,header:false,id:"profilePicturePanel",html:"<img src='/run/ug/profilePicture/?width=120&nocache' />",width:150}),b=new Ext.Button({icon:"/img/silkicons/silk/cross.png",text:t(""),id:"deleteImageButton",hidden:!d,style:{marginLeft:"20px"},handler:function(){Ext.Msg.confirm(t(""),t(""),function(){Ext.Ajax.request({url:"/run/ug/deleteProfilePicture/",success:function(){createProfilePictureControls(a,false)}})})}});
a.add(c);a.add(b)}else{c=new Ext.form.Label({html:"<i>"+t("")+"</i>"});a.add(c)}a.setVisible(true);a.doLayout()}
function showGroupInfo(a,d,c){if(!(selectedGroupId==a&&c.isVisible())){selectedGroupId=a;c.hide();c.removeAll();Ext.Ajax.request({url:"/run/ug/getGroupInfo/",method:"POST",params:{groupId:a},success:function(b){var e=Ext.decode(b.responseText);if(e.success){b=new Ext.form.FormPanel({title:d,html:e.html,border:false});if(e.member&&!e.founder){var j=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/user_delete.png",handler:function(){c.hide();quitGroup(a,d)}});b.addButton(j)}else if(!e.member){j=
new Ext.Button({text:t(""),icon:"/img/silkicons/silk/user_add.png",handler:function(){c.hide();joinGroup(a,d)}});b.addButton(j)}if(e.founder){e=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/delete.png",handler:function(){c.hide();removeGroup(a,d)}});b.addButton(e)}c.add(b);c.show()}}})}}function updateGroupList(){empty(ownGroupStore)||ownGroupStore.load();empty(allGroupsStore)||allGroupsStore.load()}function updateUserList(){ownGroupStore.load();allGroupsStore.load();userStore.load()}
function showNewGroupWindow(){if(Ext.get("newGroupWin")==null){var a=(new Ext.Window({id:"newGroupWin",title:t(""),layout:"form",layoutConfig:{align:"stretch",pack:"start",animate:true},width:500,height:600,plain:true,border:false,resizable:true,maximizable:true,collapsible:true,closable:true})).show(),d=new Ext.form.FormPanel({border:false,monitorValid:true,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;"}),c=new Ext.data.JsonStore({storeId:"userStore",fields:["user_id","group_id",
"name",{name:"admin",defaultValue:false}]}),b=new Ext.Button({text:t(""),formBind:true,cls:"rightAligned",style:{marginRight:"7px"},icon:"/img/silkicons/silk/disk.png",handler:function(){var g=getJsonOfStore(c);d.getForm().submit({method:"POST",url:"/run/ug/createGroup/",text:"Save",waitMsg:t(""),submitEmptyText:false,params:{users:g},success:function(m,h){updateGroupList();notify(t(""),h.result.msg);empty(a)||a.close()},failure:function(m,h){Ext.Msg.alert(t(""),h.result.msg)}})}}),e=new Ext.form.FieldSet({title:t(""),
labelWidth:100,defaults:{xtype:"textfield"},autoHeight:true}),j=new Ext.form.FieldSet({title:t(""),labelWidth:410,labelSeparator:" ",defaults:{xtype:"textfield"},autoHeight:true}),l=new Ext.form.FieldSet({title:t(""),labelWidth:150,defaults:{xtype:"textfield"},autoHeight:true}),k=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/group_add.png",handler:function(){new Ext.ux.LouGIS.Window.AddUsers({addHandler:function(g){for(var m=0;m<g.length;m++){var h=g[m],q=h.get("name"),o=h.get("user_id"),r=
h.get("group_id");if(o!=""&&c.findExact("user_id",o)!=-1)return;if(r!=""&&c.findExact("group_id",r)!=-1)return;if(o!="")q+=" &lt;"+h.get("details")+"&gt;";h=new c.recordType({user_id:o,group_id:r,name:q});c.add(h)}},source:"group",windowTitle:t(""),createGroupEnabled:false})}}),f=new Ext.grid.EditorGridPanel({id:"groupUsersGrid",store:c,colModel:new Ext.grid.ColumnModel({defaults:{sortable:true},columns:[{header:t(""),dataIndex:"name",renderer:function(g,m,h){g=h.get("user_id");h=h.get("name");return'<img src="'+
(g==null||g==""?"/img/silkicons/silk/group.png":"/img/silkicons/silk/user.png")+'" class="gridIcon"/>'+h}},{header:t(""),editable:false,id:"admin",width:25,align:"center",renderer:function(g,m,h){if(h.get("group_id")!=null&&h.get("group_id")!="")return"";if(h.get("admin"))return'<input type="checkbox" class="gridBox" checked />';return'<input type="checkbox" class="gridBox" />'}},{header:t(""),width:30,align:"center",renderer:function(){return'<img src="/img/silkicons/silk/cross.png" class="clickableIcon"/>'}}]}),
viewConfig:{forceFit:true,autoFill:true},height:140,autoScroll:true});f.on("cellclick",function(g,m,h){var q=g.getColumnModel().getColumnId(h),o=g.getStore().getAt(m);g=o.get("name");m=o.get("admin");var r=o.get("user_id");q=="admin"&&r!=null&&o.set("admin",!m);if(h==2){h=t("",g);Ext.Msg.confirm(t(""),h,function(u){u==="yes"&&c.remove(o)})}});l.addButton(k);d.add(e);d.add(j);d.add(l);a.add(d);a.add(b);growlRequest({url:"/run/ug/newGroupForm/",method:"POST",success:function(g){g=Ext.decode(g.responseText);
j.add(g.grpItems);e.add(g.descItems);l.add(f);a.doLayout()}})}}function createGroupLists(){return adminGroups}
function showGroupAdmin(a,d){if(Ext.get("infoWin_"+a)==null){groupInfoWin=(new Ext.Window({title:t("",d),id:"infoWin_"+a,layout:"fit",layoutConfig:{align:"stretch",pack:"start",animate:true},width:470,height:600,plain:true,border:false,resizable:true,maximizable:true,collapsible:true,closable:true})).show();var c=new Ext.FormPanel({header:false,border:false,monitorValid:true,labelWidth:120,defaults:{xtype:"textfield"},bodyStyle:"padding: 10px 10px 0 10px;"});groupInfoWin.add(c);growlRequest({url:"/run/ug/groupInfoForm/",
method:"POST",params:{groupId:a},success:function(b){b=Ext.decode(b.responseText);createGroupInfo(c,b,a);groupInfoWin.doLayout()}})}}
function createGroupInfo(a,d,c){var b=new Ext.form.FieldSet({title:t(""),labelWidth:100,defaults:{xtype:"textfield",anchor:"100%"},autoHeight:true,items:d.basicItems}),e=new Ext.form.FieldSet({title:t(""),labelWidth:360,defaults:{xtype:"textfield"},autoHeight:true,items:d.settingItems,labelSeparator:" "});d=new Ext.form.FieldSet({title:t(""),labelWidth:150,defaults:{xtype:"textfield"},autoHeight:true});a.add(b);a.add(e);a.add(d);var j=new Ext.data.JsonStore({url:"/run/ug/getMembersOfGroup/",baseParams:{groupId:c},
storeId:"groupMemberStore",root:"MembersOfGroup",autoLoad:true,fields:[{name:"user_id",type:"string"},{name:"group_id",type:"string"},{name:"name",type:"string"},{name:"admin",type:"boolean"}],sortInfo:{field:"name",direction:"ASC"}});b=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/disk.png",formBind:true,handler:function(){a.getForm().submit({method:"POST",url:"/run/ug/updateGroupSettings/",params:{groupId:c,userStore:getJsonOfStore(j)},text:t(""),waitMsg:t(""),submitEmptyText:false,success:function(l,
k){var f=Ext.decode(k.response.responseText);f.success?notify(t("","Properties of the group saved successfully.")):Ext.Msg.alert("Error!",f.msg)}})}});a.addButton(b);b=new Ext.grid.EditorGridPanel({store:j,colModel:new Ext.grid.ColumnModel({defaults:{sortable:true},columns:[{header:t(""),dataIndex:"name",editable:false,renderer:function(l,k,f){l=f.get("user_id");f=f.get("name");return'<img src="'+(l==null||l==""?"/img/silkicons/silk/group.png":"/img/silkicons/silk/user.png")+'" class="gridIcon"/>'+
f}},{header:t(""),editable:false,id:"admin",width:25,align:"center",renderer:function(l,k,f){if(f.get("group_id")!=null&&f.get("group_id")!="")return"";if(f.get("admin"))return'<input type="checkbox" class="gridBox" checked />';return'<input type="checkbox" class="gridBox" />'}},{header:t(""),editable:false,id:"remove",width:20,align:"center",renderer:function(){return'<img src="/img/silkicons/silk/cross.png" class="clickableIcon"/>'}}]}),viewConfig:{forceFit:true},autoScroll:true,height:135});b.on("cellclick",
function(l,k,f){f=l.getColumnModel().getColumnId(f);var g=l.getStore().getAt(k);k=g.get("user_id");var m=g.get("name"),h=g.get("admin");f=="remove"&&Ext.Msg.show({title:t(""),msg:t("",m),buttons:Ext.Msg.YESNO,fn:function(q){q=="yes"&&l.getStore().remove(g)},animEl:"elId",icon:Ext.MessageBox.QUESTION});f=="admin"&&k!=null&&g.set("admin",!h)});d.add(b);b=new Ext.Button({text:t(""),icon:"/img/silkicons/silk/group_add.png",handler:function(){new Ext.ux.LouGIS.Window.AddUsers({addHandler:function(l){for(var k=
0;k<l.length;k++){var f=l[k],g=f.get("name"),m=f.get("user_id"),h=f.get("group_id");if(m!=""&&j.findExact("user_id",m)!=-1)return;if(h!=""&&j.findExact("group_id",h)!=-1)return;if(m!="")g+=" &lt;"+f.get("details")+"&gt;";f=new j.recordType({user_id:m,group_id:h,name:g,admin:false});j.add(f)}},source:t(""),windowTitle:t(""),createGroupEnabled:true})}});d.addButton(b);j.load()}
function buttonSubmitter(a,d,c,b,e,j){if(c==undefined)c=t("");if(b==undefined)b=t("");if(e==undefined)e=t("");if(j==undefined)j=t("");a.getForm().submit({method:"POST",url:d,text:t(""),waitMsg:t(""),submitEmptyText:false,success:function(l,k){var f=Ext.decode(k.response.responseText);f.success?notify(c,b):Ext.Msg.alert(e,j+f.msg)}})}
function removeGroup(a,d){Ext.Msg.show({title:t(""),msg:t("",d),buttons:Ext.Msg.YESNO,fn:function(c){processRemove(c,a,d)},animEl:"elId",icon:Ext.MessageBox.QUESTION})}function processRemove(a,d,c){a=="yes"&&growlRequest({url:"/run/ug/removeGroup/",method:"POST",params:{groupId:d},success:function(b){b=Ext.decode(b.responseText);if(b.success){notify(t(""),t("",c));updateGroupList();groupInfoWin.close()}else Ext.Msg.alert("Status",t("")+": "+b.msg)}})}
function joinGroup(a,d){Ext.Msg.show({title:t(""),msg:t("",d),buttons:Ext.Msg.YESNO,fn:function(c){processJoin(c,a,d)},animEl:"elId",icon:Ext.MessageBox.QUESTION})}function processJoin(a,d,c){a=="yes"&&growlRequest({url:"/run/ug/joinGroup/",method:"POST",params:{groupId:d},success:function(b){b=Ext.decode(b.responseText);if(b.success){notify(t(""),t("",c));updateGroupList();groupInfoWin.close()}else Ext.Msg.alert("Status",t("")+": "+b.msg)}})}
function quitGroup(a,d){Ext.Msg.show({title:t(""),msg:t("",d),buttons:Ext.Msg.YESNO,fn:function(c){processQuit(c,a,d)},animEl:"elId",icon:Ext.MessageBox.QUESTION})}function processQuit(a,d,c){a=="yes"&&growlRequest({url:"/run/ug/quitGroup/",method:"POST",params:{groupId:d},success:function(b){b=Ext.decode(b.responseText);if(b.success){notify(t(""),t("",c));updateGroupList();groupInfoWin.close()}else Ext.Msg.alert("Status",t("")+": "+b.msg)}})}
function updateAdminStatusOfGroup(a,d,c,b){var e=t("",c);b||(e=t("",c));Ext.Msg.show({title:t(""),msg:e,buttons:Ext.Msg.YESNO,fn:function(j){processUserAdmin(j,a,d,c,b)},animEl:"elId",icon:Ext.MessageBox.QUESTION})}function processUserAdmin(a,d,c,b,e){a=="yes"?growlRequest({url:"/run/ug/adminUser/",method:"POST",params:{groupId:d,userId:c,isAdmin:e},success:function(j){j=Ext.decode(j.responseText);j.success?notify(t(""),t("",b)):Ext.Msg.alert("Status",t("")+j.msg)}}):userStore.load()}
function removeFromGroup(a,d,c){Ext.Msg.show({title:t(""),msg:t("",d),buttons:Ext.Msg.YESNO,fn:function(b){processUserRemoval(b,a,d,c)},animEl:"elId",icon:Ext.MessageBox.QUESTION})}function processUserRemoval(a,d,c,b){a=="yes"&&growlRequest({url:"/run/ug/removeUserFromGroup/",method:"POST",params:{groupId:b,userId:d},success:function(e){e=Ext.decode(e.responseText);if(e.success){notify(t(""),t("",c));updateUserList()}else Ext.Msg.alert("Status",t("")+": "+e.msg)}})}
function login(a,d,c){Ext.Ajax.request({url:"/run/ug/login/",method:"POST",params:{default_email:a,password:d},success:function(b){b=Ext.decode(b.responseText);if(b.success){userId=b.id;notify(t(""),t("",b.name));Ext.get("userLinksList").update("<li><b>"+b.name+"</b><li>|</li></li><li id='userInfo'>"+t("")+"</li><li>|</li><li id='logout'>"+t("")+"</li><li>|</li><li id='userHelp'>"+t("")+"</li>");Ext.get("userInfo").on("click",function(){showAdditionalInfoWindow()});Ext.get("logout").on("click",function(){logout()});
Ext.get("userHelp").on("click",function(){showHelp("registered")});var e=Ext.getCmp("lgMaptree");e!=null&&e.getRootNode().reload();switch(c){case "datasetWin":showDatasetWindow();break;case "myDatasetsWindow":showMyDatasetsWindow();break;case "metaInfoWindow":showMetaInfoWindow();break}if(b.site_admin){Ext.get("modulePickerList").insertHtml("beforeEnd","<li><a href='#' id='adminTools'>"+t("")+"</a></li>");Ext.get("adminTools").on("click",function(){showAdminWindow()});Ext.get("userHelp").removeAllListeners();
Ext.get("userHelp").on("click",function(){showHelp("admin")})}regWin!=null&&regWin.close()}else Ext.Msg.alert("Status",t(""))},failure:function(){Ext.Msg.alert("Status",t(""))}})}function islogged(){if(userId!=undefined&&userId>0)return true;return false}function logout(){userId=false;Ext.Ajax.request({url:"/run/ug/logout/",success:function(){location.reload(true)}})}
function showHelp(a){var d=Ext.get("helpWin"),c;switch(a){case "registered":c=t("");break;case "admin":c=t("");break;default:c=t("");break}if(d==null){helpWin=(new Ext.Window({title:c,id:"helpWin",layout:"fit",layoutConfig:{align:"stretch",pack:"start",animate:true},width:800,height:600,plain:true,border:false,resizable:true,maximizable:true,collapsible:true,closable:true,autoScroll:true})).show();helpWin.load({url:"/run/cms/loadHelpHtml/",params:{mode:a,lid:"fi"},text:t(""),scripts:true})}}
function getPublicGroupsByName(){return new Ext.data.JsonStore({url:"/run/ug/getPublicGroupsByName/",storeId:"groups",root:"groups",fields:[{name:"id",type:"int"},{name:"name",type:"string"},{name:"description",type:"string"}]})}
function showFeedbackWindow(){win=Ext.get("feedbackWin");if(win==null){var a=new Ext.data.SimpleStore({fields:["value","name"],data:[["1",t("")],["2",t("")],["3",t("")],["4",t("")]]}),d=new Ext.FormPanel({border:false,monitorValid:true,defaults:{xtype:"textfield",width:250},bodyStyle:"padding: 10px 10px 0 10px;",items:[{fieldLabel:t(""),id:"name",name:"name",allowBlank:false},{fieldLabel:t(""),name:"email",id:"email",vtype:"email",allowBlank:false},{xtype:"combo",fieldLabel:t(""),name:"subject",store:a,
mode:"local",displayField:"name",valueField:"value",allowBlank:false,triggerAction:"all",value:1},{xtype:"textarea",fieldLabel:t(""),name:"message",height:200,width:350,allowBlank:false,flex:1}],buttons:[{text:t(""),formBind:true,handler:function(){d.getForm().submit({method:"POST",url:"/run/cms/sendFeedback/",waitTitle:t(""),waitMsg:t(""),success:function(b){Ext.decode(b.responseText);c.close();notify(t(""),t(""))}})}}]});d.setAutoScroll(false);var c=(new Ext.Window({id:"feedbackWin",layout:"fit",
width:500,height:400,closable:true,resizable:true,plain:true,border:false,title:t(""),items:[d]})).show();Ext.Ajax.request({url:"/run/ug/userInfo/",method:"POST",success:function(b){b=Ext.decode(b.responseText);if(!empty(b.email)){Ext.getCmp("name").setValue(b.firstname+" "+b.lastname);Ext.getCmp("email").setValue(b.email)}}})}}
function createDatasetToolbox(){if(Ext.getCmp("lgDatasetPanel")==null){new Ext.Panel({id:"lgDatasetPanel",title:t(""),region:"south",animate:false,border:false,collapsible:true,collapsed:true,collapseMode:"mini",padding:"10 0 0 0",autoWidth:true,height:245,cls:"dataset-panel",items:[{id:"datasetButton",xtype:"button",text:t(""),icon:"/img/silkicons/silk/folder_wrench.png",anchor:"100%",iconAlign:"top",width:150,height:45,cls:"dataset-button",handler:function(){showDatasetWindow()}}]});Ext.getCmp("lgMapWestPanel").add(materialPanel);
Ext.getCmp("lgMapWestPanel").doLayout()}};

