include_once 'PhpExtUx/App/FitToParent.php'; global $ari; $ari->popup = 1; // no mostrar el main_frame //STORE PARA TRAER LA LISTA DE PERSPECTIVAS $store = new PhpExt_Data_JsonStore(); $store->setUrl("/admin/perspective/get_prespectives")->setRoot("topics")->setTotalProperty("totalCount")->setId("id")->setAutoLoad(true); //CAMPOS DEL STORE $store->addField(new PhpExt_Data_FieldConfigObject("name")); $store->addField(new PhpExt_Data_FieldConfigObject("path")); //SE AGREGAN LAS COLUMNAS A LA GRILLA $col_model = new PhpExt_Grid_ColumnModel(); $col_model->addColumn(PhpExt_Grid_ColumnConfigObject::createColumn("Nombre", "name", null, 80))->addColumn(PhpExt_Grid_ColumnConfigObject::createColumn("Ruta", "path", null, 250)); //GRILLA $grid = new PhpExt_Grid_GridPanel(); $grid->setColumnModel($col_model)->setStore($store)->setStripeRows(true)->setLoadMask(true); $grid->getPlugins()->add(new PhpExtUx_App_FitToParent()); $grid_render = "\n\nvar edit = function(){\n\nvar m = grid.getSelections();\n\nif(m.length ==1 ){\n\tvar id = 'id=' + m[0].get('name');\n\taddTab( 'Modificar Perpectiva', '/admin/perspective/update', true, id );\n}else{\n\tExt.MessageBox.alert('Emporika', 'Por favor seleccione \"un\" item');\n}\n\n}\n\nvar button1 = grid.getTopToolbar().items.find( function(c){ return ( c.text == 'Modificar') } );\nbutton1.on( 'click', edit );\n\n\ngrid.on( 'celldblclick', edit );\n\n"; $grid->setEnableKeyEvents(true); $grid->attachListener("render", new PhpExt_Listener(PhpExt_Javascript::functionDef(null, $grid_render, array("grid")))); //AGREGO EL BOTON MODIFICAR EN LA GRILLA $tb = $grid->getTopToolbar(); $tb->addButton("modificar", "Modificar", "images/edit.gif"); //RESULTADO $resultado = ''; $resultado .= $store->getJavascript(false, "store"); $resultado .= $grid->getJavascript(false, "contenido"); //RESULTADO $obj_comunication = new OOB_ext_comunication(); $obj_comunication->set_data($resultado); $obj_comunication->send(true);
$store->setUrl("/seguridad/group/get_groups")->setRoot("topics")->setTotalProperty("totalCount")->setId("id"); $store->addField(new PhpExt_Data_FieldConfigObject("id")); $store->addField(new PhpExt_Data_FieldConfigObject("name")); $store->addField(new PhpExt_Data_FieldConfigObject("description")); $check_select = new PhpExt_Grid_CheckboxSelectionModel(); $filter_plugin = new PhpExtUx_Grid_GridFilters(); $filter_plugin->addFilter(PhpExt_Grid_FilterConfigObject::createFilter("numeric", "id")); $filter_plugin->addFilter(PhpExt_Grid_FilterConfigObject::createFilter("string", "name")); $filter_plugin->addFilter(PhpExt_Grid_FilterConfigObject::createFilter("string", "description")); $col_model = new PhpExt_Grid_ColumnModel(); $col_model->addColumn($check_select)->addColumn(PhpExt_Grid_ColumnConfigObject::createColumn("Id", "id", null, 30))->addColumn(PhpExt_Grid_ColumnConfigObject::createColumn("Nombre", "name", null, 120))->addColumn(PhpExt_Grid_ColumnConfigObject::createColumn("Descripción", "description", null, 180)); $paging = new PhpExt_Toolbar_PagingToolbar(); $paging->setStore($store)->setPageSize($page_size)->setDisplayInfo(true)->setEmptyMessage("No se encontraron grupos"); $paging->getPlugins()->add($filter_plugin); $grid = new PhpExt_Grid_GridPanel(); $grid->setColumnModel($col_model)->setStore($store)->setStripeRows(true)->setSelectionModel($check_select)->setLoadMask(true); $grid->getPlugins()->add($filter_plugin); $grid->getPlugins()->add(new PhpExtUx_App_FitToParent()); $grid->setBottomToolbar($paging); $grid_render = "\n\nvar store = grid.getStore();\n\n// var tb = grid.getBottomToolbar();\n// tb.doLoad(tb.cursor);\n//nuevo grupo\nvar nuevo = function(){\n\tvar id = 'gid=' + grid.id;\n\taddTab( 'Nuevo Grupo', '/seguridad/group/new', true , id );\n}\n\n//modificar grupo\nvar edit = function(){\n\n\tvar id;\n\tvar m = grid.getSelections();\n\n\tif( m.length >= 1 ){\t\n\t\tfor( var i = 0, len = m.length; i < len; i++ ){\t\t\t\n\t\t\t\tvar id = 'id=' + m[i].get('id') + '&gid=' + grid.id;\n\t\t\t\taddTab( 'Modificar Grupo', '/seguridad/group/update', true, id );\n\t\t}\n\t}\n\telse\n\t{\n\t\tExt.MessageBox.alert('Emporika', 'Por favor seleccione un item');\n\t}\t\n\n}\n\n//eliminar grupo\nvar eliminar = function(){\n\n\t\tvar m = grid.getSelections();\n if(m.length > 0)\n {\n\t\t\tvar msg = 'Esta seguro que desea eliminar ' + ((m.length>1)?'los':'el') + ' grupo' + ((m.length>1)?'s':'') + '?';\n \tExt.MessageBox.confirm('Emporika', msg , function(btn){\n\t\t\t\tif( btn == 'yes' ){\n\t\t\t\t\tvar m = grid.getSelections();\n\t\t\t\t\tvar items = Array();\n\t\t\t\t\tfor( var i = 0, len = m.length; i < len; i++){ \n\t\t\t\t\t\tvar item = { id : m[i].get('id') }\n\t\t\t\t\t\titems.push(item);\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\tvar pag = grid.getStore().lastOptions.params['start'];\n\t\t\t\t\tstore.load({params:{ start : pag,\n \t\t\t\t\t limit : {$page_size},\n\t\t\t\t\t\t\t DeleteGroupData : Ext.encode(items)\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t});\t\t\t\t\t\n\t\t\t\t}\t\n\t\t\t},this );\t\n }\n else\n {\n \tExt.MessageBox.alert('Emporika', 'Por favor seleccione un item');\n }\n\n\n\n\n}\n\ngrid.on( 'celldblclick', edit );\n\nvar button1 = grid.getTopToolbar().items.find( function(c){ return ( c.text == 'Nuevo') } );\nbutton1.on( 'click', nuevo );\n\nvar button2 = grid.getTopToolbar().items.find( function(c){ return ( c.text == 'Modificar') } );\nbutton2.on( 'click', edit );\n\nvar button3 = grid.getTopToolbar().items.find( function(c){ return ( c.text == 'Eliminar') } );\nbutton3.on( 'click', eliminar );\n\n"; $grid->setEnableKeyEvents(true); $grid->attachListener("render", new PhpExt_Listener(PhpExt_Javascript::functionDef(null, $grid_render, array("grid")))); $tb = $grid->getTopToolbar(); $tb->addButton("new", "Nuevo", "images/add.png"); $tb->addSeparator("sep1"); $tb->addButton("modificar", "Modificar", "images/edit.gif"); $tb->addSeparator("sep2"); $tb->addButton("delete", "Eliminar", "images/no_.gif"); $resultado = ''; $resultado .= $check_select->getJavascript(false, "sm"); $resultado .= $store->getJavascript(false, "store_group_list");