Ext.namespace('administration_viewport');

administration_viewport = function(){
	administration_viewport.superclass.constructor.call(this, {
		
	});
};

Ext.extend(administration_viewport, Ext.TabPanel, {
	initEvents : function(){
		administration_viewport.superclass.initEvents.call(this);
	},
	loadAdmin: function(){

		
		adminGetAllGroups.on('beforeload', function() {
		     adminGetAllGroups.baseParams = {
		          'limit':'50'
		          ,'sort':'last_name'
		          ,'dir':'ASC'
		          ,user_id:_loggedInuserId 
		          ,role_id:_loggedInRight_id
		          ,prog_lang: params.lang
			};
		});
		
		
		var administration_tabPanel = new Ext.TabPanel({
			activeTab: 1
			,plain:true
			,activeTab: 0
			,monitorResize:true
			,frame:true
			,bodyStyle:'border:none;'
			,style:'border:none;'
			,deferredRender: true
			,layoutOnTabChange: true
			,ctCls: 'fr-tabpanel'
			,defaults: {
				 autoScroll: true
				,frame:true
		    }
		});
		
		var administration_panel = new Ext.Panel({
			layout: 'border',
			frame:true,
			monitorValid:true,
			monitorResize:true,
		    id:'administration_viewport',
		    items: [
			    {
			        region: 'center',
				    frame:false,
				    bodyStyle:'border:none;',
				    style:'border:none;',
			        layout:'fit',
			        height:'100%',
			        items:[administration_tabPanel]
				}
			]
		});
		
		
		function getModules(idd){
			_idde = idd;
			_admin_group_access_tree = new Ext.tree.TreePanel({
				width:500,
				region:'center',
				layout:'fit',
				height:300,
				checkModel: 'cascade',   // cascade check
				onlyLeafCheckable: false,// all node have checkbox
				animate: false,
				rootVisible: true,
				autoScroll:true,
				loader: new Ext.tree.TreeLoader({
	            	dataUrl:ServerUrl + '' + modul_admin + '/getAllModules.php?group_id=' + idd,
	                baseAttrs: { uiProvider: Ext.tree.TreeCheckNodeUI }
			    }),
			    root: new Ext.tree.AsyncTreeNode({ id:'0',text: _lang.access_modules_txt })
			});
			_admin_group_access_tree.on("check",function(node,checked){
		              //alert(node.text+" = "+checked);
					Ext.Ajax.request({
						waitMsg: _lang.please_wait,
						url: ServerUrl + '' + modul_admin + '/getAllModules.php'
						,params:{prog_lang: params.lang,todo:'setModules',group_id:_idde,setThis:node.id,makeThis:checked}
						,failure:function(response,options){
							Ext.example.msg(_lang.failure,_lang.failure);
						},
						success:function(response,options){
							//Ext.example.msg(_lang.success,'&auml;nderung erfolgreich durchgeführt. Durch erneutes einloggen sehen Sie die &auml;nderung auch auf der Startseite!');
						}
					});
		    });
		}
		
	    function generate_admin_group_window(){
	    	
			_admin_group_window = new Ext.Window({
				title: _lang.edit_group
				,height:500
				,closable:false
				,modal:true
				,width:500
				,frame:true
				,region:'center'
				,layout:'fit'
				,items:[
					new Ext.form.FormPanel({
						frame:true
						,defaultType: 'textfield'
						,items:[
							new Ext.form.Hidden({
								hideLabel:true,
								name:'group_id_save',
								id:'group_id_save',
								value:''
							}),
							{
								fieldLabel: _lang.group_name + '*',
								name: 'group_name_save',
								id:'group_name_save',
								allowBlank:false
							},
							_admin_group_access_tree
						]
					})
				],
				buttons:[
					{
						text: _lang.close
						,handler: function(){
							_admin_group_window.destroy();
							//_admin_group_access_tree.remove();
						}
					},
					{
						text: _lang.save_and_close
						,handler: function(){
							Ext.Ajax.request({
								waitMsg: _lang.please_wait,
								url: ServerUrl + '' + modul_admin + '/getAllModules.php'
								,params:{prog_lang: params.lang,todo:'updateGroupName',group_id:_idde,group_name:document.getElementById('group_name_save').value}
								,failure:function(response,options){
									Ext.example.msg(_lang.failure,_lang.failure);
								},
								success:function(response,options){
									admin_group_grid_store.reload();
									adminGetAllGroups.reload();
									//Ext.example.msg(_lang.success,'&auml;nderung erfolgreich durchgeführt. Durch erneutes einloggen sehen Sie die &auml;nderung auch auf der Startseite!');
								}
							});
							_admin_group_window.destroy();
						}
					}
				]
			});
		}
		
		var admin_group_grid = new Ext.grid.GridPanel({
	        store: admin_group_grid_store,
			autoScroll:true,
			disabled:false,
			loadMask: true,
			frame:false,
			bodyStyle:'border:1px solid #D0D0D0;',
			disableSelection:false,
	        columns: [
	        	{
	            	id:'group_id',
		        	menuDisabled:true,
		        	sortable:false,
		        	hide:true,
		        	hidden:true,
	            	dataIndex: 'group_id'
	            },
	            {
	            	id:'group_name',
	            	header: _lang.group_name, 
	            	width: 150, 
		        	menuDisabled:true,
		        	sortable:false,
	            	dataIndex: 'group_name'
	            },
	            {
	            	id:'access',
	            	header: _lang.access_to, 
	            	width: 400, 
		        	menuDisabled:true,
		        	sortable:false,
	            	dataIndex: 'access'
	            }
	        ],
	        stripeRows: true,
	        viewConfig: {
            	forceFit:true
				//,emptyText: 'Bitte w&auml;hlen Sie eine Benutzergruppe. <br>Ihre Suche hat keine Ergebnisse geliefert. Bitte verallgemeinern Sie Ihre Suche.'
	        },
	        height:'300',
	        layout: 'fit',
	        tbar: [
				new Ext.Button({
					text: _lang.set_new_group
					,icon:'/bin/images/icons/add.png'
					,iconCls:'def'
					,handler: function(){
						new Ext.Window({
							title: _lang.set_new_group
							,width:500
							,id:'add_group_window'
							,height:150
							,closable:false
							,modal:true
							,items:[
								new Ext.form.FormPanel({
									frame:true
									,defaultType: 'textfield'
									,items:[
										{
											fieldLabel: _lang.group_name + '*',
											name: 'group_name_save',
											id:'group_name_save_new',
											allowBlank:false,
											width:350
										},
										{
											fieldLabel: _lang.access_to,
											value: _lang.rights_can_set_txt,
											allowBlank:true,
											readOnly:true,
											width:350
										}
									],
									buttons:[
										{
											text: _lang.close
											,handler: function(){
												Ext.getCmp('add_group_window').destroy();
											}
										},
										{
											text: _lang.save_and_close
											,handler: function(){
												Ext.Ajax.request({
													waitMsg: _lang.please_wait,
													url: ServerUrl + '' + modul_admin + '/getAllModules.php'
													,params:{prog_lang: params.lang,todo:'newGroupName',group_name:document.getElementById('group_name_save_new').value}
													,failure:function(response,options){
														Ext.example.msg(_lang.failure,_lang.failure);
													},
													success:function(response,options){
														admin_group_grid_store.reload();
														adminGetAllGroups.reload();
													}
												});
												Ext.getCmp('add_group_window').destroy();
											}
										}
									]
								})
							]
						}).show();
					}
				})
			],
	        bbar: new Ext.PagingToolbar({
	            pageSize: 25,
	            id:'admin_group_grid_store_search_res_bbar',
	            store: admin_group_grid_store,
	            displayInfo: true,
	            displayMsg: ' {0} - {1} von {2}',
	            emptyMsg: _lang.no_data
	        })
	    }); 
	    admin_group_grid.on('render', function(sm, rowIdx, r) {
			//alert("asd");
	    	admin_group_grid_store.on('beforeload', function() {
			     admin_group_grid_store.baseParams = {
			          'sort':'login'
			          ,limit:25
			          ,'dir':'ASC'
			          ,search_string:''
			          ,user_id:_loggedInuserId 
			          ,role_id:_loggedInRight_id
			          ,prog_lang: params.lang
				};
			});
			admin_group_grid_store.load();
		});
		
		admin_group_grid.on('rowdblclick', function(sm, rowIdx, r) {
			var selectionModel = admin_group_grid.getSelectionModel();
			//get the selected record
			var r = selectionModel.getSelected();
			getModules(r.data.group_id);
			generate_admin_group_window();
			Ext.getCmp('group_id_save').value = r.data.group_id;
			Ext.getCmp('group_name_save').value = r.data.group_name;
			_admin_group_window.show();
			_admin_group_window.doLayout();
			_admin_group_access_tree.render();
			_admin_group_access_tree.expandAll();
		});
		
		
	    function generate_admin_user_window_new(){
	    	_pwd_gen = ZufallsString(5);
			_admin_user_window_new = new Ext.Window({
				title: _lang.add_user
				,height:500
				,closable:false
				,id:'_admin_user_window_new'
				,modal:true
				,width:500
				,frame:true
				,region:'center'
				,layout:'fit'
				,items:[
					new Ext.form.FormPanel({
						frame:true
						,labelWidth: 200
						,defaults: {width: 230}
						,defaultType: 'textfield'
						,items:[
							new Ext.form.ComboBox({
				                fieldLabel: _lang.lead_sal + '*',
								emptyText: _lang.sel_sal,
								store: new Ext.data.SimpleStore({
							        fields: ['sal_name','sal_id'], 
							        data: [
							        	['keine','0']
							        	,['Herr','1']
							        	,['Frau','2']
							        	,['Firma','3']
							        ]
						        }),
						        allowBlank: false,
				                stateful : true,
				                valueField:'sal_id',
								displayField:'sal_name',
								typeAhead: true,
								mode: 'local',
								id:'sal',
								name:'salutation',
								triggerAction: 'all',
								selectOnFocus:true,
								forceSelection:true
							})
							
							,{
								fieldLabel: _lang.lead_first_name + '*',
								name: 'first_name',
								id:'user_first_name_new',
								allowBlank:false
							},
							{
								fieldLabel: _lang.lead_last_name + '*',
								name: 'last_name',
								id:'user_last_name_new',
								allowBlank:false
							},
							{
								fieldLabel: _lang.login + '*',
								name: 'login',
								id:'user_login_new',
								allowBlank:false,
								enableKeyEvents:true,
								listeners: {
								  keyup: function(e) {
								   document.getElementById('email_sys_local_part').value = document.getElementById('user_login_new').value;
								  },
								  blur: function(e) {
								   document.getElementById('user_mail_leadM_new').value = document.getElementById('user_login_new').value + '@global-prefer.com';
								  }
								}
							},
							{
								fieldLabel: _lang.passwd + '*',
								name: 'passwd',
								id:'user_pwd_new',
								allowBlank:false,
								value:_pwd_gen
							},
							new Ext.form.ComboBox({
				               allowBlank: false,
				               stateful : true,
				               fieldLabel: _lang.user_act_inact + '*',
				               id:'user_active_new',
				               store: new Ext.data.SimpleStore({
							        fields: ['a_operator_name','a_operator_val'], 
							        data: [
							        	['Inaktiv','0']
							        	,['Aktiv','1']
							        ]
						        }),
				               	valueField:'a_operator_val',
								displayField:'a_operator_name',
								typeAhead: true,
								mode: 'local',
								value:'1',
								name:'active',
								triggerAction: 'all',
								selectOnFocus:true,
								forceSelection:true
				           }),
							new Ext.form.ComboBox({
				               allowBlank: false,
				               stateful : true,
				               fieldLabel: _lang.group_to + '*',
				               id:'user_group_new',
				               name:'role_id',
				               store:adminGetAllGroups,
				               	valueField:'group_id',
								displayField:'group_name',
								typeAhead: true,
								mode: 'remote',
								triggerAction: 'all',
								selectOnFocus:true,
								forceSelection:true
				           }),
							{
								fieldLabel: _lang.mail_in_lead_sys,
								name: 'email',
								id:'user_mail_leadM_new',
								allowBlank:false
							},
							{
					            xtype:'fieldset',
					            id:'set_sys_mail',
					            checkboxToggle:true,
					            title: _lang.gpb_mail_add,
					            collapsible: true,
					            autoHeight:true,
					            width:'95%',
					            defaults: {width: 210},
					            defaultType: 'textfield',
					            items :[{
					                    fieldLabel: 'E-Mail User*',
					                    name: 'email_sys_local_part',
					                    id:'email_sys_local_part'
					                },{
					                    fieldLabel: 'Domain*',
					                    name: 'email_sys_domain',
					                    id:'email_sys_domain',
					                    value:'@global-prefer.com',
					                    readOnly:true
					                },{
					                    fieldLabel: 'Passwort*',
					                    name: 'email_sys_pwd',
					                    id:'email_sys_pwd',
					                    value:_pwd_gen
					                }
					            ]
					        }
						]
					})
				],
				buttons:[
					{
						text: _lang.close
						,handler: function(){
							_admin_user_window_new.destroy();
							//_admin_group_access_tree.remove();
						}
					},
					{
						text: _lang.save_and_close
						,handler: function(){
							Ext.Ajax.request({
								waitMsg: _lang.please_wait,
								//url: mailBridgeUrl + '/module/config/email/sql/BRIDGE_mailbox.sql.php'
								url: ServerUrl + '' + modul_admin + '/mail_Bridge.php'
								,params:{prog_lang: params.lang,
										sys_email_local_part:Ext.getCmp('email_sys_local_part').getValue(),
										sys_email_domain:Ext.getCmp('email_sys_domain').getValue(),
										sys_email_pwd:Ext.getCmp('email_sys_pwd').getValue(),
										contract_id:'1063',
										todo:'new'
								}
								,failure:function(response,options){
									//Ext.example.msg(_lang.failure,_lang.failure);
								},
								success:function(response,options){
									if(Ext.util.JSON.decode(response.responseText).success == "false"){
										Ext.example.msg(_lang.failure,'Die Global-Prefer E-Mail Adresse konnte NICHT angelegt werden! Sie ist bereits vorhanden');
									}else{
										//Ext.example.msg(_lang.success,'Die Global-Prefer E-Mail Adresse wurde angelegt!');
									}
								}
							});
							Ext.Ajax.request({
								waitMsg: _lang.please_wait,
								url: ServerUrl + '' + modul_admin + '/newUser.php'
								,params:{prog_lang: params.lang,
										todo:'new',
										salutation:Ext.getCmp('sal').getValue(),
										first_name:document.getElementById('user_first_name_new').value,
										last_name:document.getElementById('user_last_name_new').value,
										login:document.getElementById('user_login_new').value,
										pwd:document.getElementById('user_pwd_new').value,
										active:Ext.getCmp('user_active_new').getValue(),
										group_id:Ext.getCmp('user_group_new').getValue(),
										email:Ext.getCmp('user_mail_leadM_new').getValue(),
										sys_email_local_part:Ext.getCmp('email_sys_local_part').getValue(),
										sys_email_domain:Ext.getCmp('email_sys_domain').getValue(),
										sys_email_pwd:Ext.getCmp('email_sys_pwd').getValue()
								}
								,failure:function(response,options){
									Ext.example.msg(_lang.failure,_lang.failure);
								},
								success:function(response,options){
									admin_user_grid_store.reload();
									_admin_user_window_new.destroy();
									Ext.example.msg(_lang.success,_lang.user_add_ready + ' Bitte beachten Sie das &auml;nderungen an den E-Mail Adressen nur unter http://config.dynamicware.de m&ouml;glich sind!');
								}
							});
						}
					}
				]
			});
		}
		
		function generate_admin_user_window(){
	    	
			_admin_user_window = new Ext.Window({
				title: _lang.edit_user
				,height:350
				,closable:false
				,id:'_admin_user_window'
				,modal:true
				,width:500
				,frame:true
				,region:'center'
				,layout:'fit'
				,items:[
					new Ext.form.FormPanel({
						frame:true
						,labelWidth: 200
						,defaults: {width: 230}
						,defaultType: 'textfield'
						,items:[
							new Ext.form.Hidden({
								hideLabel:true,
								name:'user_id_save',
								id:'user_id_save',
								value:''
							}),
							{
								fieldLabel: _lang.lead_first_name + '*',
								name: 'user_first_name_save',
								id:'user_first_name_save',
								allowBlank:false,
								readOnly:true
							},
							{
								fieldLabel: _lang.lead_last_name + '*',
								name: 'user_last_name_save',
								id:'user_last_name_save',
								allowBlank:false,
								readOnly:true
							},
							{
								fieldLabel: _lang.login + '*',
								name: 'user_login_save',
								id:'user_login_save',
								allowBlank:false
							},
							{
								fieldLabel: _lang.passwd + '*',
								name: 'user_pwd_save',
								id:'user_pwd_save',
								allowBlank:false
							},
							new Ext.form.ComboBox({
				               allowBlank: false,
				               stateful : true,
				               fieldLabel: _lang.user_act_inact + '*',
				               id:'user_active_save',
				               store: new Ext.data.SimpleStore({
							        fields: ['a_operator_name','a_operator_val'], 
							        data: [
							        	['Inaktiv','0']
							        	,['Aktiv','1']
							        ]
						        }),
				               	valueField:'a_operator_val',
								displayField:'a_operator_name',
								typeAhead: true,
								mode: 'local',
								triggerAction: 'all',
								selectOnFocus:true,
								forceSelection:true
				           }),
							new Ext.form.ComboBox({
				               allowBlank: false,
				               stateful : true,
				               fieldLabel: _lang.group_to + '*',
				               id:'user_group_save',
				               store:adminGetAllGroups,
				               	valueField:'group_id',
								displayField:'group_name',
								typeAhead: true,
								mode: 'local',
								triggerAction: 'all',
								selectOnFocus:true,
								forceSelection:true
				           })
						]
					})
				],
				buttons:[
					{
						text: _lang.close
						,handler: function(){
							_admin_user_window.destroy();
							//_admin_group_access_tree.remove();
						}
					},
					{
						text: _lang.save_and_close
						,handler: function(){
							Ext.Ajax.request({
								waitMsg: _lang.please_wait,
								url: ServerUrl + '' + modul_admin + '/updateUsers.php'
								,params:{prog_lang: params.lang,
										todo:'update',
										user_id:document.getElementById('user_id_save').value,
										group_id:Ext.getCmp('user_group_save').getValue(),
										login:document.getElementById('user_login_save').value,
										pwd:document.getElementById('user_pwd_save').value,
										active:Ext.getCmp('user_active_save').getValue()}
								,failure:function(response,options){
									Ext.example.msg(_lang.failure,_lang.failure);
								},
								success:function(response,options){
									admin_user_grid_store.reload();
									_admin_user_window.destroy();
									//Ext.example.msg(_lang.success,'&auml;nderung erfolgreich durchgeführt. Durch erneutes einloggen sehen Sie die &auml;nderung auch auf der Startseite!');
								}
							});
							_admin_user_window.destroy();
						}
					}
				]
			});
		}
		
		function admin_delete_user(btn) {
			if(btn=='yes')
			{
				//GetValues(admin_user_grid.selModel.selections.items[0]);
				var selectedRows = admin_user_grid.selModel.selections.items;
				var selectedKeys = admin_user_grid.selModel.selections.keys; 
				var selectedVals = admin_user_grid.selModel.selections.values; 
				var encoded_keys = Ext.encode(selectedKeys);
				var encoded_values = Ext.encode(selectedVals);
				//GetValues(encoded_keys);
				Ext.Ajax.request({
					waitMsg: 'Speichern...',
					url:  ServerUrl + '' + modul_admin + '/updateUsers.php',
					params: { 
						task: "delete", //pass task to do to the server script
						user_id: encoded_keys//the unique id(s)
					},
					success:function(response,options){
						admin_user_grid.store.reload();
					}
				});
			}
		
		}
		
		var admin_user_grid = new Ext.grid.GridPanel({
	        store: admin_user_grid_store,
			autoScroll:true,
			disabled:false,
			loadMask: true,
			frame:false,
			bodyStyle:'border:1px solid #D0D0D0;',
			disableSelection:false,
	        columns: [
	        	{
	            	id:'user_id',
		        	menuDisabled:false,
		        	sortable:false,
	            	dataIndex: 'user_id',
	            	hidden:true,
	            	hide:true
	            },
	            {
	            	id:'group_id',
		        	menuDisabled:false,
		        	sortable:false,
	            	dataIndex: 'group_id',
	            	hidden:true,
	            	hide:true
	            },
	            {
	            	id:'first_name',
	            	header: _lang.lead_first_name, 
	            	width: 150, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'first_name'
	            },
	            {
	            	id:'last_name',
	            	header: _lang.lead_last_name, 
	            	width: 150, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'last_name'
	            },
	            {
	            	id:'retry',
	            	header: _lang.fail_logins, 
	            	width: 150, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'retry'
	            },
	            {
	            	id:'login',
	            	header:  _lang.username, 
	            	width: 150, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'login'
	            },
	            {
	            	id:'passwd',
	            	header: _lang.passwd, 
	            	width: 150, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'crypt'
	            },
	            {
	            	id:'last_login',
	            	header: _lang.last_login, 
	            	width: 150, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'last_login'
	            },
	            {
	            	id:'active',
	            	header: 'Aktiv', 
	            	width: 50, 
		        	menuDisabled:false,
		        	sortable:true,
	            	dataIndex: 'active'
	            }
	        ],
	        stripeRows: true,
	        viewConfig: {
            	forceFit:true,
				emptyText: _lang.no_sel_1 + '<br>' + _lang.no_sel_2
	        },
	        height:'300',
	        layout: 'fit',
	        tbar: [
	            _lang.fast_search + ': ',  
	            new Ext.app.SearchField_for_Manager_search({
	                store: admin_user_grid_store,
	                id:'search_string',
	                paramName:'search_string',
	                emptyText: _lang.admin_fast_search_empty,
	                width:240,
	                listeners: {
	                	'blur': function(){
	                		Ext.getCmp('search_string').emptyText = '';
							Ext.getCmp('search_string').applyEmptyText();
	                	}
	                }
	            }) 
	            ,' ','-',
	            new Ext.form.ComboBox({
	           		id:'admin_user_group',
	               	allowBlank: true,
	               	store: adminGetAllGroups,
	               	tpl: tpl_adminGetAllGroups,
	               	valueField:'group_id',
					displayField:'group_name',
					mode: 'remote',
					triggerAction: 'all',
			    	editable:false,
					selectOnFocus:true,
					forceSelection:true,
					emptyText:_lang.show_groups,
					listeners: {
					select: {
						fn: function(record){
							Ext.getCmp('search_string').reset();
							admin_user_grid_store.removeAll();
							admin_user_grid_store.clearFilter(true);
							admin_user_grid_store.on('beforeload', function() {
							     admin_user_grid_store.baseParams = {
							          'sort':'login'
							          ,'dir':'ASC'
							          ,search_string:''
							          ,user_id:_loggedInuserId 
							          ,role_id:_loggedInRight_id
							          ,prog_lang: params.lang
							          ,show_u: Ext.getCmp('admin_user_group').value
								};
							});
							admin_user_grid_store.load({params:{search_string:'',start:0,'sort':'login','dir':'ASC',user_id:_loggedInuserId,role_id:_loggedInRight_id,prog_lang: params.lang,show_u: Ext.getCmp('admin_user_group').value}});
						},scope: this
					}
				}
	           }),' ','-',
	           new Ext.Button({
	           		text: _lang.admin_add_new_user
	           		,iconCls:'def'
	           		,icon:'/bin/images/icons/add.png'
	           		,handler : function(){
	           			adminGetAllGroups.load();
	           			generate_admin_user_window_new();
						_admin_user_window_new.show();
						_admin_user_window_new.doLayout();
	           		}
	           }),' ','-',
	           new Ext.Button({
	           		text: _lang.admin_del_sel_user
	           		,iconCls:'def'
	           		,icon:'/bin/images/icons/delete.png'
	           		,handler : function(){
                		var selectedKeys = admin_user_grid.selModel.selections.keys; 
						if(selectedKeys.length > 0)
						{
							Ext.MessageBox.confirm(_lang.message,_lang.delete_message + 'ACHTUNG: Die bei DynamicWare registrierte E-Mail Adresse f&uuml;r diesen Benutzer wird ebenfalls gel&ouml;scht!', admin_delete_user);
						}
            		}
	           })
	        ],
	        bbar: new Ext.PagingToolbar({
	            pageSize: 25,
	            id:'search_res_bbar',
	            store: admin_user_grid_store,
	            displayInfo: true,
	            displayMsg: ' {0} - {1} von {2}',
	            emptyMsg: _lang.no_data,
	            plugins: [new Ext.ux.PageSizePlugin()]
	        })
	    }); 
		
	    admin_user_grid.on('rowdblclick', function(sm, rowIdx, r) {
			generate_admin_user_window();
			var selectionModel = admin_user_grid.getSelectionModel();
			//get the selected record
			var r = selectionModel.getSelected();
			Ext.getCmp('user_id_save').value = r.data.user_id;
			Ext.getCmp('user_first_name_save').value = r.data.first_name;
			Ext.getCmp('user_last_name_save').value = r.data.last_name;
			Ext.getCmp('user_login_save').value = r.data.login;
			Ext.getCmp('user_pwd_save').value = r.data.crypt;
			Ext.getCmp('user_active_save').value = r.data.active;
			adminGetAllGroups.load();
			Ext.getCmp('user_group_save').value = r.data.group_id;
			_admin_user_window.show();
			_admin_user_window.doLayout();
		});
	    
		if(_loggedInRight_id == 21 || _loggedInRight_id == 22){
			var admin_o_panel = new Ext.Panel({
				title:_lang.txt_on_start_page
				,frame:true
				,region:'center'
				,layout:'fit'
				,items:[
					new Ext.ux.HTMLEditor({
			          width: '100%',
			          height: 250,
			          id:'adminGlobalInfo',
			          styles: ['htmleditor.css'],
			          plugins: new Ext.ux.HTMLEditorImage()
			        }),
		        	new Ext.Button({
		        		text: _lang.save
						,listeners: {
							'click': {
								fn: function(node){
									Ext.Ajax.request({
										waitMsg: _lang.please_wait,
										url: ServerUrl + '' + modul_admin + '/getGlobalAdminInfo.php'
										,params:{prog_lang: params.lang,text:document.getElementById('adminGlobalInfo').value,todo:'update'}
										,failure:function(response,options){
											Ext.example.msg(_lang.failure,_lang.failure);
										},
										success:function(response,options){
											Ext.example.msg(_lang.success,_lang.admin_save_spec);
										}
									});
								}
							}
						}
		        	})
		        ]
			});
			admin_o_panel.on('render', function() {
				Ext.Ajax.request({
					waitMsg: _lang.please_wait,
					url: ServerUrl + '' + modul_admin + '/getGlobalAdminInfo.php',
					params:{prog_lang: params.lang},
					failure:function(response,options){
						Ext.example.msg(_lang.failure,_lang.failure);
					},
					success:function(response,options){
						//GetValues(response);
						//GetValues(Ext.getCmp('adminGlobalInfo'));
						Ext.getCmp('adminGlobalInfo').setRawValue(response.responseText);
						Ext.getCmp('adminGlobalInfo').setValue(response.responseText);
					}
				});
			});
			
		}
		
		Ext.Ajax.request({
			waitMsg: _lang.please_wait,
			url: ServerUrl + '' + modul_login + '/getModuleById.php',
			params:{prog_lang: params.lang, mod_id:_admin_portal_mod_id, right_id:_loggedInRight_id},
			failure:function(response,options){
				Ext.example.msg(_lang.failure,_lang.failure);
				return false;
			},
			success: function(response,options){
				var res = Ext.util.JSON.decode(response.responseText);
				c = count(res)-1;
					for(i=0;i<c;i++){
						if(res[i].mod_url == "user_management" && res[i].show == "1"){
				   			administration_tabPanel.add({
									title: _lang.admin_user_management
									,id:'admin_usermanagement_tab'
									,region:'center'
									,layout:'fit'
									,items:[admin_user_grid]
							});
				   		}
						if(res[i].mod_url == "group_management" && res[i].show == "1"){
				   			administration_tabPanel.add({
									title: _lang.admin_group_management
									,id:'admin_groupManagement_tab'
									,region:'center'
									,layout:'fit'
									,items:[admin_group_grid]
							});
				   		}
						if(res[i].mod_url == "other_admin_tasks" && res[i].show == "1"){
							administration_tabPanel.add({
								title: _lang.other_admin_task,
								items:[admin_o_panel]
						    });
				   		}	
					}
				
			}
		});
		
		administration_tabPanel.activate('admin_usermanagement_tab');
		return administration_panel;
		
		
	 }
 
 });
 
