[[TranslatedPages]] [[TOC]] = Create menus for clients computers user interface = The start menu of OpenGnSys clients is managed from the administrator console. There are two types of menus depending on the creation mode and the client interaction: * '''automatic menu''': * Generated by specifics actions in the administrator console (commands and tasks) * Administration server is notified by clicking the link and the server sends the command to the client. * Commands are monitored by action console. * '''customize menu''': * Generated by a html or php webpage, links embed OpenGNsys script calls or Linux bash commands. * Local commands are issued by clicking links without notifing the administrator console. The menu can have a public zone used for all users and a private zone that only can be used by operators and administrators. == Create New Menu == In the "'''tab Menu'''" right click on "'''Define New Menu'''" and enter the following: * '''Menu Name''': It will show in the administrator console. * '''Menu Title''': It will show in the strat menu of OpenGnSys client. * '''Background Image''' * '''Comments''' * '''Public or Private Menu Items''': * '''coordinate X and Y''': Menu position respect to the edge of the screen. * '''method''': Number of columns are distributed the icons of the items. * '''public menu url''': Customized menu url. [[Image(menu_nuevo.png)]] If we want to modify this options, only we have to access to "'''tab Menu'''" and click on "'''Properties'''" [[Image(menu_propiedades.png)]] == Automatic Menu == === Including procedures or menu tasks === En el menú podemos incluir procedimientos o tareas que tengamos definidos. La diferencia es que los procedimientos se ejecutan en el equipo donde estamos y la tarea se ejecuta en el ámbito donde ha sido definida. Por ello en general, los procedimientos aparecerán en la parte pública del menú y las tareas en la privada. La forma de incluir procedimientos o tareas desde la consola es prácticamente la misma. En la "'''pestaña Acciones'''" sobre el procedimiento o la tarea deseada pulsamos con el botón derecho "'''Gestión de menús'''". Nos aparece un listado de todos los menús existentes y podemos seleccionar los que queremos que contengan la acción. En cada caso tendremos que marcar el tipo (público o privado), el icono, el texto y orden de visualización dentro de cada menú. [[Image(menu_procedimiento.png)]] [[Image(menu_tarea.png)]] === Review Actions included in the Menu === En la "'''pestaña menús'''" sobre el menú deseado pulsamos con el botón derecho "'''Información menús'''". Nos aparece un listado con la siguiente información: * Equipos que tienen asignado este menú * Item públicos y privados * Valores para cada item: Código, orden de presentación, texto e imagen. [[Image(menu_informacion.png)]] === Modify Actions included in Menu === En la "'''pestaña menús'''" sobre el menú deseado pulsamos con el botón derecho "'''Gestionar items'''". Nos aparece un listado donde podremos modificar las opciones de cada ítem. [[Image(menu_item_gestion.png)]] == Create Customized Menu == === Customized Menu Characteristics === Opengnsys nos permite crear menú personalizados. Por defecto se sitúan en el directorio /opt/opengngsys/www/menus aunque podrían estar incluso en otro servidor. Son páginas web estandar, la única diferencia es que podemos incluir enlaces que llamen a un comando que se ejecutará sobre el cliente. La url del enlace tiene que tener el siguiente formato: {{{ Texto }}} Se puede ejecutar cualquier comando o script de bash, entre ellos los específicos de opengnsys (situados en /opt/opengnsys/client/script) . Las funciones incluidas en las librerías (ej: ogGetIpAddress) no se podrán ejecutar si no se llaman en un script. Tenemos un ejemplo de [source:trunk/admin/WebConsole/menus/menuejemplo.html menú personalizado] en la parte del código, al instalar opengnsys se copia como ejemplo en la carpeta adecuada. === Linking Customized Menu with Console Menu === En las propiedades del menú vacío definido en la consola tendremos que incluir la url completa de la página del menú personalizado. Observamos que existe una parte pública y otra privada, pudiendo definir un menú personalizado independiente para cada una de ellas. [[Image(formularioPropiedadesMenu.png)]] La configuración de menú personalizado se superpone a la automática, de forma que si existierán item automáticos no se mostrarían. == Menu Private Zone == En la zona privada del menú pueden entrar los usuarios administradores y los operadores de aulas. El menú en la parte pública mostrará un enlace llamado "administración" y al pinchar sobre él nos pedirá nombre y clave, si los datos son correctos veremos las operaciones de la zona privada del menú. Para salir de la zona privada daremos al enlace "volver"