function loginAdmin() {
Ext
.onReady(function() {
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
var login = new Ext.FormPanel(
{
labelWidth : 50,
labelAlign : 'right',
waitMsgTarget : true,
url : 'adminLoginJs.php',
frame : true,
items : [
{
xtype : 'label',
html : '
'
}, {
xtype : 'textfield',
fieldLabel : 'E-mail',
name : 'email',
allowBlank : false,
anchor : '92%'
}, {
xtype : 'textfield',
fieldLabel : 'Clave',
name : 'clave',
inputType : 'password',
allowBlank : false,
anchor : '92%'
} ]
});
var win = new Ext.Window( {
layout : 'fit',
width : 300,
title : 'Meta Cruises Server - ADMINISTRACION',
height : 250,
closable : false,
resizable : false,
modal : true,
plain : true,
items : [ login ],
buttons : [ {
text : 'Entrar',
scale : 'medium',
iconCls : 'icoEntrar',
formBind : true,
handler : function() {
if (login.form.isValid()) {
login.getForm().submit( {
method : 'POST',
waitTitle : 'Meta Cruises Server - Login ADMINISTRACION',
waitMsg : 'Autenticando datos...',
success : function(form, action) {
win.hide();
verEntorno();
},
failure : function(form, action) {
if (action.failureType == 'server') {
obj = Ext.util.JSON.decode(action.response.responseText);
Ext.Msg.alert('Login Error!', obj.errors.reason);
} else {
Ext.Msg.alert('Warning!', 'Authentication server is unreachable : ' + action.response.responseText);
}
login.getForm().reset();
}
});
} else {
login.form.markInvalid( [ {
id : 'loginEmail',
msg : 'Campo obligatorio!'
}, {
id : 'loginClave',
msg : 'Campo obligatorio!'
} ]);
Ext.Msg.show( {
title : 'login',
msg : 'Por favor complete todos lo campos.',
buttons : Ext.Msg.OK,
animEl : document.body
});
}
}
}, {
text : 'Recuperar Clave',
iconCls : 'icoRecuperar',
scale : 'medium',
handler : function() {
verRecuperar();
}
} ]
});
win.show();
});
}
function adminLogout() {
Ext.MessageBox.wait('Cerrando sesión', 'Meta Cruises Server - Administrador');
var conn = new Ext.data.Connection();
conn.request( {
url : 'adminLogoutJs.php',
method : 'POST',
params : {
"estado" : 1
},
success : function(responseObject) {
location.href = "index.php";
},
failure : function() {
location.href = "index.php";
}
});
}function verRecuperar() {
Ext.onReady(function() {
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
var login = new Ext.FormPanel( {
labelWidth : 40,
waitMsgTarget : true,
labelAlign : 'right',
title : 'Ingresa tu e-mail y te enviaremos tu clave.',
url : 'recuperar.php',
frame : true,
// Specific attributes for the text fields for username / password.
// The "name" attribute defines the name of variables sent to the
// server.
items : [ {
xtype : 'textfield',
fieldLabel : 'e-mail',
name : 'email',
allowBlank : false,
anchor : '94%'
} ]
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winLogin = new Ext.Window(
{
layout : 'fit',
width : 300,
title : 'Meta Cruises Server - Recuperar mi clave',
height : 150,
closable : true,
resizable : true,
modal : true,
plain : true,
items : [ login ],
// All the magic happens after the user clicks the
// button
buttons : [
{
text : 'Recuperar',
formBind : true,
// Function that fires when user clicks the
// button
handler : function() {
if (login.form.isValid()) {
login
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Meta Cruises Server - Recuperar mi clave',
waitMsg : 'Recuperando clave...',
success : function(
form,
action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
Ext.Msg
.alert(
'Meta Cruises Server',
'Te enviamos tu clave, en unos instantes la recibirás en tu E-mail!',
function(
btn,
text) {
if (btn == 'ok') {
winLogin
.hide();
}
},
{
minWidth : 300
});
},
failure : function(
form,
action) {
Ext.Msg
.alert(
'Meta Cruises Server',
'El E-mail que ingresaste no esta registrado, por favor vuelva a intentar!',
function(
btn,
text) {
},
{
minWidth : 300
});
login
.getForm()
.reset();
}
});
} else {
login.form.markInvalid( [ {
id : 'email',
msg : 'Campo obligatorio!'
} ]);
Ext.Msg
.show( {
title : 'Meta Cruises Server - Recupero de Clave',
msg : 'Por favor ingrese su E-mail.',
buttons : Ext.Msg.OK,
minWidth : 250,
animEl : document.body
});
}
}
}, {
text : 'Cancelar',
handler : function() {
winLogin.hide();
}
} ]
});
winLogin.show();
});
}var paneles = new Array();
function verEntorno() {
Ext
.onReady(function() {
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
var viewport = new Ext.Viewport(
{
layout : 'border',
items : [
{ // raw
// element
region : 'north',
id : 'barraSuperior',
style : 'background:#969594',
border : false,
html : '',
height : 60
},
{
region : 'center',
xtype : 'grouptabpanel',
tabWidth : 150,
activeGroup : 0,
items : [ {
id : 'panelesSecciones',
items : [
{
title : 'Secciones',
iconCls : 'x-icon-configuration'
}, paneles ],
listeners : {
beforeRender : function handleActivate() {
setTimeout(
function() {
Ext
.getCmp(
'panelesSecciones')
.setActiveTab(
paneles[0]);
}, 500);
},
beforetabchange : function handleActivate(
t, item, activeItem) {
if (item.title == "Secciones") {
return false;
}
}
}
} ]
} ]
});
new Ext.Button(
{
text : 'Cerrar Sesión',
border : false,
scale : 'medium',
iconCls : 'icoCerrarSesion',
listeners : {
click : function() {
Ext.MessageBox
.show( {
title : 'Meta Cruises Server - Adminitrador',
msg : 'Está seguro que desea cerrar la sesión?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
adminLogout();
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
}
}).render('barraSuperior', 'botonCerrar');
new Ext.Button( {
text : 'Cuenta Administrador',
border : false,
iconCls : 'icoCuentaAdmin',
scale : 'medium',
listeners : {
click : function() {
cuentaAdmin();
}
}
}).render('barraSuperior', 'botonCuentaAdmin');
new Ext.Button( {
text : 'Emails de Contacto',
border : false,
iconCls : 'icoEmailsContacto',
scale : 'medium',
listeners : {
click : function() {
mailsConfiguracionesContacto();
}
}
}).render('barraSuperior', 'botonEmailsContacto');
});
}
function formatEstado(value, p, record) {
if (value == 0) {
return String
.format(
'',
value);
} else if (value == 1) {
return String
.format(
'',
value);
}
}
if(Ext.ux.ValidationStatus){
Ext.apply(Ext.ux.ValidationStatus.prototype, {
showText : 'El formulario tiene errores (haga clic para obtener detalles ...)',
hideText : 'Haga clic de nuevo para ocultar la lista de errores',
submitText : 'Guardando...'
});
}
if ((typeof Range !== "undefined") && !Range.prototype.createContextualFragment) {
Range.prototype.createContextualFragment = function(html) {
var frag = document.createDocumentFragment(), div = document.createElement("div");
frag.appendChild(div);
div.outerHTML = html;
return frag;
};
}function eliminarRegistro(idValor, storeReturn, archivo) {
Ext.MessageBox
.show( {
title : 'Meta Cruises Server - Eliminar Registro',
msg : 'Está seguro que desea eliminar este Registro?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait(
'Eliminando Registro, por favor espere...',
'Meta Cruises Server - Eliminar Registro');
var conn = new Ext.data.Connection();
conn
.request( {
url : archivo,
method : 'POST',
params : {
'id' : idValor
},
success : function(responseObject) {
storeReturn.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert('Error de conexión, por favor recargue el administrador y vuelva a intentar.');
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
function cambiarEstadoRegistro(idValor, nuevoEstado, storeReturn, archivo) {
if (nuevoEstado == 0) {
Ext.MessageBox.show( {
title : 'Meta Cruises Server - Desactivar Registro',
msg : 'Está seguro que desea Desactivar este Registro?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait('Desactivando, por favor espere...',
'Meta Cruises Server - Cambiar Estado');
var conn = new Ext.data.Connection();
conn.request( {
url : archivo,
method : 'POST',
params : {
'id' : idValor
},
success : function(responseObject) {
storeReturn.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert();
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
} else {
Ext.MessageBox.show( {
title : 'Meta Cruises Server - Activar Registro',
msg : 'Está seguro que desea Activar este Registro?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait('Activando, por favor espere...',
'Meta Cruises Server - Cambiar Estado');
var conn = new Ext.data.Connection();
conn.request( {
url : archivo,
method : 'POST',
params : {
'id' : idValor
},
success : function(responseObject) {
storeReturn.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert();
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
}
function eliminarImagen(idImagen, storeGaleriaImagenes, idNombre, galeria) {
Ext.MessageBox.show( {
title : 'Meta Cruises Server - Eliminar Imagen',
msg : 'Está seguro que desea eliminar esta Imagen?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait('Eliminando Imagen, por favor espere...',
'Meta Cruises Server - Galeria de Imagen');
var conn = new Ext.data.Connection();
conn.request( {
url : 'galeriaImagenesEliminar.php',
method : 'POST',
params : {
"idNombre" : idNombre,
"idImagen" : idImagen,
"galeria" : galeria
},
success : function(responseObject) {
storeGaleriaImagenes.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert();
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
function cambiarEstadoImagen(idImagen, storeGaleriaImagenes, idNombre, galeria,
nuevoEstado) {
if (nuevoEstado == 0) {
Ext.MessageBox.show( {
title : 'Meta Cruises Server - Desactivar Imagen',
msg : 'Está seguro que desea Desactivar el Imagen?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait('Desactivando, por favor espere...',
'Meta Cruises Server - Cambiar Estado Imagen');
var conn = new Ext.data.Connection();
conn.request( {
url : 'galeriaImagenesCambiarEstado.php',
method : 'POST',
params : {
"idNombre" : idNombre,
"idImagen" : idImagen,
"galeria" : galeria
},
success : function(responseObject) {
storeGaleriaImagenes.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert();
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
} else {
Ext.MessageBox.show( {
title : 'Meta Cruises Server - Activar Imagen',
msg : 'Está seguro que desea Activar el Imagen?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait('Activar, por favor espere...',
'Meta Cruises Server - Cambiar Estado Imagen');
var conn = new Ext.data.Connection();
conn.request( {
url : 'galeriaImagenesCambiarEstado.php',
method : 'POST',
params : {
"idNombre" : idNombre,
"idImagen" : idImagen,
"galeria" : galeria
},
success : function(responseObject) {
storeGaleriaImagenes.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert();
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
}
var idLineaActualizar = new Array(1, 3, 5, 6,8,12,18,19,20,25);
var linea = new Array("Royal Caribbean, Azamara y Celebrity", "Costa", "Ibero","MSC","NCL", "Oceania Cruises","Regent","Crystal Cruises","Paul Gauguin","Silversea");
//var idLineaActualizar = new Array(1,8);
//var linea = new Array("Royal Caribbean, Azamara y Celebrity","NCL");
var i = 0;
var intento = 1;
var mensaje = "";
function pricingActualizarPeriodo(idDestino, fecha, storeReturn) {
Ext.MessageBox
.show( {
title : 'Meta Cruises Server - Actualizar cruceros',
msg : 'Está seguro que desea Actualizar este Periodo?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
i = 0;
mensaje = "";
pricingActualizarPeriodoLinea(idDestino, fecha,
storeReturn, 0);
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
function pricingActualizarPeriodoLinea(idDestino, fecha, storeReturn, i) {
if (idLineaActualizar.length > i) {
if (intento == 1) {
Ext.MessageBox.wait(
'Actualizando ' + linea[i] + ', por favor espere...',
'Meta Cruises Server - Actualizar cruceros periodo '+fecha);
} else {
Ext.MessageBox.wait('Actualizando ' + linea[i] + ' (intento: '
+ intento + '/3), por favor espere...',
'Meta Cruises Server - Actualizar cruceros periodo '+fecha);
}
var conn = new Ext.data.Connection();
conn
.request( {
url : 'pricingfeedActualizar.php',
method : 'POST',
params : {
'idDestino' : idDestino,
'fecha' : fecha,
'idLinea' : idLineaActualizar[i]
},
success : function(responseObject) {
Ext.MessageBox.hide();
mensaje = mensaje + "" + linea[i] + ":
"
+ responseObject.responseText + "
";
i++;
intento = 1;
pricingActualizarPeriodoLinea(idDestino, fecha,
storeReturn, i);
},
failure : function() {
if (intento < 3) {
intento++;
pricingActualizarPeriodoLinea(idDestino, fecha,
storeReturn, i);
} else {
storeReturn.reload();
Ext.MessageBox.hide();
mensaje = mensaje
+ ""
+ linea[i]
+ ":
Error de conexión, por favor recargue el administrador y vuelva a intentar.
";
i++;
intento = 1;
pricingActualizarPeriodoLinea(idDestino, fecha,
storeReturn, i);
}
}
});
} else {
if (actualizarPeriodos == "") {
storeReturn.reload();
Ext.Msg.alert('Actualizar cruceros', mensaje);
} else {
mensajeTotal+='
Periodo: '+fecha+'
'+mensaje+'
';
siguientePeriodo(idDestino, fecha, storeReturn);
}
}
}
var mensajeTotal="";
var p = 0;
var actualizarPeriodos="";
var periodos = new Array('',
'201303', '201304', '201305', '201306', '201307',
'201308', '201309', '201310', '201311', '201312',
'201401', '201402', '201403', '201404', '201405', '201406', '201407', '201408', '201409', '201410', '201411', '201412');
function siguientePeriodo(idDestino, fecha, storeReturn) {
p++;
if (periodos.length > p) {
i = 0;
mensaje = "";
pricingActualizarPeriodoLinea(idDestino, periodos[p],
storeReturn, 0);
}else{
actualizarPeriodos="";
storeReturn.reload();
Ext.Msg.alert('Actualizar cruceros', ''+mensajeTotal+'
');
}
}
var recargarAutomatico="";
function recargarStoreAutomatico(storeReturn){
if(recargarAutomatico==1){
storeReturn.reload();
setTimeout(function(){
recargarStoreAutomatico(storeReturn);
},30000);
}
}
function pricingResetearPeriodo(idDestino, fecha, storeReturn) {
Ext.MessageBox
.show( {
title : 'Meta Cruises Server - Eliminar cruceros',
msg : 'Está seguro que desea Eliminar este Periodo?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait(
'Actualizando Cruceros, por favor espere...',
'Meta Cruises Server - Eliminar cruceros');
var conn = new Ext.data.Connection();
conn
.request( {
url : 'pricingfeedEliminar.php',
method : 'POST',
params : {
'idDestino' : idDestino,
'fecha' : fecha
},
success : function(responseObject) {
storeReturn.reload();
Ext.MessageBox.hide();
},
failure : function() {
alert('Error de conexión, por favor recargue el administrador y vuelva a intentar.');
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}
function enviarMailBienvenida(id) {
Ext.MessageBox.show( {
title : 'Meta Cruises Server - Enviar email de Bienvenida',
msg : 'Está seguro que desea Enviar el Mail de Bienvenida?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
Ext.MessageBox.wait('Enviando, por favor espere...', 'Meta Cruises Server - Enviar email de Bienvenida');
var conn = new Ext.data.Connection();
conn.request( {
url : 'agenciasEnviarMailBienvenida.php',
method : 'POST',
params : {
'id' : id
},
success : function(responseObject) {
Ext.Msg.alert('Enviar email de Bienvenida', 'Email enviado con exito!');
},
failure : function() {
Ext.Msg.alert('Enviar email de Bienvenida', 'Error de envio');
}
});
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
}function cuentaAdmin(){
Ext.onReady(function(){
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
var admin = new Ext.FormPanel({
waitMsgTarget: true,
labelWidth:50,
labelAlign:'right',
url:'adminGuardar.php',
frame:true,
// Specific attributes for the text fields for username / password.
// The "name" attribute defines the name of variables sent to the server.
items: [{
xtype:'textfield',
fieldLabel: 'E-mail',
name: 'email',
allowBlank: false,
anchor:'92%'
}, {
xtype:'textfield',
fieldLabel: 'Clave',
name: 'clave',
inputType:'password',
allowBlank: false,
anchor:'92%'
}],
listeners:{
render:function() {
admin.getForm().load({
method : 'GET',
url : 'adminCargar.php',
params : { 'idAdmin': 1},
waitMsg : 'Cargando...',
success :function(form, action) {
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var win = new Ext.Window({
layout:'fit',
width:300,
title:'Meta Cruises Server - Cuenta Administrador',
height:150,
closable: false,
resizable: false,
modal:true,
plain: true,
items: [admin],
// All the magic happens after the user clicks the button
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( admin.form.isValid() ) {
admin.getForm().submit({
method:'POST',
waitTitle:'Meta Cruises Server - Administrador',
waitMsg:'Guardando Datos...',
success:function(form, action){
obj = Ext.util.JSON.decode(action.response.responseText);
Ext.Msg.alert('Meta Cruises Server', 'Los datos fueron guardados con éxito!', function(btn, text){
if (btn == 'ok'){
win.hide();
}
},{minWidth: 300});
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
admin.getForm().reset();
}
});
}else{
admin.form.markInvalid();
Ext.Msg.show({
title:'Cuenta Administrador',
msg: 'Por favor complete todos lo campos.',
buttons: Ext.Msg.OK,
animEl: document.body
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
win.hide();
}
}]
});
win.show();
});
}function mailsConfiguracionesContacto(){
Ext.onReady(function(){
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
var admin = new Ext.FormPanel({
waitMsgTarget: true,
labelWidth:50,
labelAlign:'right',
url:'mailsConfiguracionesGuardar.php',
frame:true,
// Specific attributes for the text fields for username / password.
// The "name" attribute defines the name of variables sent to the server.
items: [{
xtype:'textarea',
fieldLabel: 'E-mails',
name: 'emails',
allowBlank: false,
anchor:'92%'
}, {
xtype:'label',
html: 'Ingrese un email o una lista separada por punto y comas
Ej: info@susitio.com;jperez@susitio.com;cperez@susutio.com
'
}],
listeners:{
render:function() {
admin.getForm().load({
method : 'GET',
url : 'mailsConfiguracionesCargar.php',
params : { },
waitMsg : 'Cargando...',
success :function(form, action) {
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var win = new Ext.Window({
layout:'fit',
width:500,
title:'Meta Cruises Server - Emails de Contacto',
height:200,
closable: false,
resizable: false,
modal:true,
plain: true,
items: [admin],
// All the magic happens after the user clicks the button
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( admin.form.isValid() ) {
admin.getForm().submit({
method:'POST',
waitTitle:'Meta Cruises Server - Administrador',
waitMsg:'Guardando Datos...',
success:function(form, action){
obj = Ext.util.JSON.decode(action.response.responseText);
Ext.Msg.alert('Meta Cruises Server', 'Los emails fueron guardados con éxito!', function(btn, text){
if (btn == 'ok'){
win.hide();
}
},{minWidth: 300});
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
admin.getForm().reset();
}
});
}else{
admin.form.markInvalid();
Ext.Msg.show({
title:'Emails de Contacto',
msg: 'Por favor complete todos lo campos.',
buttons: Ext.Msg.OK,
animEl: document.body
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
win.hide();
}
}]
});
win.show();
});
}function verAclaraciones(idAclaracion, storeReturn) {
var storeLinea = new Ext.data.JsonStore( {
url : 'lineasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLinea.load( {
params : {}
});
var storeDestino = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestino.load( {
params : {}
});
var formAclaracion = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'aclaracionesGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [
new Ext.form.ComboBox( {
fieldLabel : 'Linea',
hiddenName : 'idLinea',
store : storeLinea,
valueField : 'idLinea',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Destino',
hiddenName : 'idDestino',
store : storeDestino,
valueField : 'idDestino',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'Título',
name : 'titulo',
id : 'titulo'
}, {
xtype : 'htmleditor',
id : 'detalle',
fieldLabel : 'Detalle',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
enableFormat : false,
defaultValue : '',
height : 200
}, {
xtype : 'radiogroup',
fieldLabel : 'Seleccione el tipo de Aclaración',
name : 'tipo',
id : 'tipo',
value : 0,
items : [ {
boxLabel : 'Tarifas',
name : 'tipo',
inputValue : 0,
autoWidth : true
}, {
boxLabel : 'Cruceros',
name : 'tipo',
inputValue : 1,
autoWidth : true
}, {
boxLabel : 'Condiciones Generales',
name : 'tipo',
inputValue : 2,
autoWidth : true
} ]
} ],
listeners : {
render : function() {
if (idAclaracion > 0) {
formAclaracion.getEl().mask();
formAclaracion
.getForm()
.load(
{
method : 'GET',
url : 'aclaracionesCargar.php',
params : {
'idAclaracion' : idAclaracion
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var tipoRadio = Ext
.getCmp('tipo');
tipoRadio.items
.each(function(item) {
if (item.inputValue == obj.data.tipo) {
item
.setValue(true);
}
});
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formAclaracion.getEl()
.unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winAclaracion = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Aclaraciones',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formAclaracion ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formAclaracion.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formAclaracion.getEl().mask();
formAclaracion
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Aclaraciones',
params : {
'idAclaracion' : idAclaracion
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winAclaracion
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formAclaracion
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winAclaracion.destroy();
}
} ]
});
winAclaracion.show();
}
function verAclaracionesReservas(idAclaracion, storeReturn) {
var storeLinea = new Ext.data.JsonStore( {
url : 'lineasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLinea.load( {
params : {}
});
var storeDestino = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestino.load( {
params : {}
});
var formAclaracion = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'aclaracionesGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [
new Ext.form.ComboBox( {
fieldLabel : 'Linea',
hiddenName : 'idLinea',
store : storeLinea,
valueField : 'idLinea',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Destino',
hiddenName : 'idDestino',
store : storeDestino,
valueField : 'idDestino',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'Título',
name : 'titulo',
id : 'titulo'
}, {
xtype : 'htmleditor',
id : 'detalle',
fieldLabel : 'Detalle',
enableColors : false,
enableAlignments : true,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
} ],
listeners : {
render : function() {
if (idAclaracion > 0) {
formAclaracion.getEl().mask();
formAclaracion
.getForm()
.load(
{
method : 'GET',
url : 'aclaracionesCargar.php',
params : {
'idAclaracion' : idAclaracion
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formAclaracion.getEl()
.unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winAclaracion = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Aclaraciones',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formAclaracion ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formAclaracion.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formAclaracion.getEl().mask();
formAclaracion
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Aclaraciones',
params : {
'idAclaracion' : idAclaracion,
'tipo' : 3
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winAclaracion
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formAclaracion
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winAclaracion.destroy();
}
} ]
});
winAclaracion.show();
}function verAgencias(idAgencia, storeReturn) {
var storeProvincia = new Ext.data.JsonStore( {
url : 'provinciasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idProvincia',
mapping : 'idProvincia'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeProvincia.load( {
params : {}
});
var storeMoneda = new Ext.data.JsonStore( {
url : 'monedasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idMoneda',
mapping : 'idMoneda'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeMoneda.load( {
params : {}
});
var formAgencia = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'agenciasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side'
},
width : 950,
items : [
{
layout : 'column',
items : [
{
columnWidth : .18,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombre',
id : 'nombre'
}, {
xtype : 'textfield',
fieldLabel : 'Apellido',
name : 'apellido',
id : 'apellido'
}, {
xtype : 'textfield',
fieldLabel : 'Razon Social',
name : 'razonSocial',
id : 'razonSocial'
}, {
xtype : 'textfield',
fieldLabel : 'Cuit',
name : 'cuit',
id : 'cuit'
}, {
xtype : 'textfield',
fieldLabel : 'Legajo',
name : 'legajo',
id : 'legajo'
} ]
},
{
columnWidth : .18,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Dirección',
name : 'direccion',
id : 'direccion'
}, {
xtype : 'textfield',
fieldLabel : 'Ciudad',
name : 'ciudad',
id : 'ciudad'
}, {
xtype : 'textfield',
fieldLabel : 'Cp',
name : 'cp',
id : 'cp'
}, new Ext.form.ComboBox( {
fieldLabel : 'Provincia',
hiddenName : 'idProvincia',
store : storeProvincia,
valueField : 'idProvincia',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'Teléfono',
name : 'telefono',
id : 'telefono'
},{
xtype : 'textfield',
fieldLabel : 'Celular',
name : 'celular',
id : 'celular'
} ]
},
{
columnWidth : .18,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Email',
name : 'email',
id : 'email'
}, {
xtype : 'textfield',
fieldLabel : 'Clave API (ojo con cambiar!)',
name : 'clave',
id : 'clave'
}, new Ext.form.ComboBox( {
fieldLabel : 'Moneda',
hiddenName : 'idMoneda',
store : storeMoneda,
valueField : 'idMoneda',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'Cambio',
name : 'cambio',
id : 'cambio'
}, {
xtype : 'textfield',
fieldLabel : 'Clave Administrador de Agencia',
name : 'claveAdmin',
id : 'claveAdmin'
} ]
},
{
columnWidth : .26,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [
{
xtype : 'checkbox',
fieldLabel : 'Version Light',
name : 'light',
id : 'light',
inputValue : 1
},
{
xtype : 'checkbox',
fieldLabel : 'Publicar precio en moneda de origen',
name : 'monedaOrigen',
id : 'monedaOrigen',
inputValue : 1
},{
xtype : 'checkbox',
fieldLabel : 'Sumar NCCF a los Resultados',
name : 'sumarNCCF',
id : 'sumarNCCF',
inputValue : 1
},
{
xtype : 'textfield',
fieldLabel : 'Dominio (sin www. ej: metacruisesserver.com)',
name : 'ipAgencia',
id : 'ipAgencia'
},
{
xtype : 'textfield',
fieldLabel : 'Url de Reservas (url completa ej: http://www.metacruisesserver.com/demo',
name : 'urlReservas',
id : 'urlReservas'
} ]
},{
columnWidth : .18,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Mail Host',
name : 'mailHost',
id : 'mailHost'
}, {
xtype : 'textfield',
fieldLabel : 'Mail From',
name : 'mailFrom',
id : 'mailFrom'
}, {
xtype : 'textfield',
fieldLabel : 'Mail Username',
name : 'mailUsername',
id : 'mailUsername'
}, {
xtype : 'textfield',
fieldLabel : 'Mail Password',
name : 'mailPassword',
id : 'mailPassword'
} ]
} ]
} ],
listeners : {
render : function() {
if (idAgencia > 0) {
formAgencia.getEl().mask();
formAgencia
.getForm()
.load(
{
method : 'GET',
url : 'agenciasCargar.php',
params : {
'idAgencia' : idAgencia
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formAgencia.getEl()
.unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winAgencia = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Agencias',
width : 950,
autoHeight : true,
closable : true,
plain : true,
items : [ formAgencia ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formAgencia.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formAgencia.getEl().mask();
formAgencia
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Agencias',
params : {
'idAgencia' : idAgencia
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winAgencia
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formAgencia
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winAgencia.destroy();
}
} ]
});
winAgencia.show();
}
var storeAgencias = new Ext.data.JsonStore( {
url : 'agenciasCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idAgencia',
mapping : 'idAgencia'
}, {
name : 'email',
mapping : 'email'
}, {
name : 'clave',
mapping : 'clave'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'apellido',
mapping : 'apellido'
}, {
name : 'razonSocial',
mapping : 'razonSocial'
}, {
name : 'cuit',
mapping : 'cuit'
}, {
name : 'legajo',
mapping : 'legajo'
}, {
name : 'direccion',
mapping : 'direccion'
}, {
name : 'ciudad',
mapping : 'ciudad'
}, {
name : 'idProvincia',
mapping : 'idProvincia'
}, {
name : 'cp',
mapping : 'cp'
}, {
name : 'telefono',
mapping : 'telefono'
}, {
name : 'celular',
mapping : 'celular'
}, {
name : 'iframe',
mapping : 'iframe'
}, {
name : 'fechaAlta',
mapping : 'fechaAlta'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeAgencias.load( {
params : {
start : 0,
limit : 20
}
});
var agenciasGrid = new Ext.grid.GridPanel(
{
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Agencias...'
},
store : storeAgencias,
columns : [
{
header : 'Id#',
width : 20,
sortable : true,
dataIndex : 'idAgencia'
},{
header : 'Email',
width : 50,
sortable : true,
dataIndex : 'email'
}, {
header : 'Clave',
width : 50,
sortable : true,
dataIndex : 'clave'
}, {
header : 'Nombre',
width : 50,
sortable : true,
dataIndex : 'nombre'
}, {
header : 'Apellido',
width : 50,
sortable : true,
dataIndex : 'apellido'
}, {
header : 'Razon Social',
width : 50,
sortable : true,
dataIndex : 'razonSocial'
}, {
header : 'Cuit',
width : 50,
sortable : true,
dataIndex : 'cuit'
}, {
header : 'Legajo',
width : 50,
sortable : true,
dataIndex : 'legajo'
}, {
header : 'Dirección',
width : 50,
sortable : true,
dataIndex : 'direccion'
}, {
header : 'Ciudad',
width : 50,
sortable : true,
dataIndex : 'ciudad'
}, {
header : 'Provincia',
width : 50,
sortable : true,
dataIndex : 'idProvincia'
}, {
header : 'Cp',
width : 50,
sortable : true,
dataIndex : 'cp'
}, {
header : 'Teléfono',
width : 50,
sortable : true,
dataIndex : 'telefono'
}, {
header : 'Celular',
width : 50,
sortable : true,
dataIndex : 'celular'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoAgencias',
text : 'Agregar Agencia',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verAgencias('', storeAgencias);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeAgencias,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoAgencias',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idAgencia, 1,
storeAgencias,
'agenciasCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoAgencias',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idAgencia, 0,
storeAgencias,
'agenciasCambiarEstado.php');
}
}
}
agenciasGrid.menu = new Ext.menu.Menu(
{
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarAgencias',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verAgencias(idAgencia,
storeAgencias);
}
},{
id : 'textosAgencias',
text : 'Textos Resevas y Presupuestos',
iconCls : '',
scope : this,
handler : function() {
verAgenciasTextos(idAgencia,
storeAgencias);
}
},
{
id : 'eliminarAgencias',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idAgencia,
storeAgencias,
'agenciasEliminar.php');
}
},
'-',
{
id : 'RelAgenciasLineas',
text : 'Lineas Habilitadas',
iconCls : 'icoLineas',
scope : this,
handler : function() {
verRelagenciaslineasGrid(idAgencia);
}
},
'-',
{
id : 'iframeAgencias',
text : 'Generar Código Iframe',
iconCls : 'icoIframe',
scope : this,
handler : function() {
Ext.MessageBox
.show( {
title : 'Meta Cruises Server - Código Iframe',
msg : iframe,
width : 900,
fn : function(btn,
text) {
},
buttons : Ext.MessageBox.OK,
animEl : 'mb3'
});
}
},'-',{
id : 'enviarMailBienvenidaAgencias',
text : 'Enviar email de Bienvenida',
iconCls : 'icoEmailsContacto',
scope : this,
handler : function() {
enviarMailBienvenida(idAgencia);
}
}, estadoBoton ],
listeners : {
hide : function() {
agenciasGrid.menu.destroy();
}
}
});
agenciasGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verAgencias(idAgencia, storeAgencias);
}
}
});
var idAgencia;
var estado;
var iframe;
agenciasGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idAgencia = r.get("idAgencia");
estado = r.get("estado");
iframe = r.get("iframe");
});
paneles.push(new Ext.Panel( {
title : 'Agencias',
iconCls : 'tabAgencias',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Agencias',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ agenciasGrid ]
} ],
listeners : {
beforeshow : function() {
storeAgencias.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verAgenciasTextos(idAgencia, storeReturn) {
var formAgencia = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'agenciasTextosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side'
},
width : 900,
items : [
{
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [ {
xtype : 'htmleditor',
id : 'encabezadoReservas',
fieldLabel : 'Encabezado Reservas',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
enableFormat : true,
defaultValue : '',
height : 200
},{
xtype : 'htmleditor',
id : 'aclaracionesReservas',
fieldLabel : 'Aclaraciones Reservas',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
enableFormat : true,
defaultValue : '',
height : 200
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '92%'
},
items : [ {
xtype : 'htmleditor',
id : 'encabezadoPresupuestos',
fieldLabel : 'Encabezado Presupuestos',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
enableFormat : true,
defaultValue : '',
height : 200
},{
xtype : 'htmleditor',
id : 'aclaracionesPresupuestos',
fieldLabel : 'Aclaraciones Presupuestos',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
enableFormat : true,
defaultValue : '',
height : 200
} ]
} ]
} ],
listeners : {
render : function() {
if (idAgencia > 0) {
formAgencia.getEl().mask();
formAgencia
.getForm()
.load(
{
method : 'GET',
url : 'agenciasCargar.php',
params : {
'idAgencia' : idAgencia
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formAgencia.getEl()
.unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winAgencia = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Agencias',
width : 900,
autoHeight : true,
closable : true,
plain : true,
items : [ formAgencia ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formAgencia.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formAgencia.getEl().mask();
formAgencia
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Agencias',
params : {
'idAgencia' : idAgencia
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winAgencia
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formAgencia
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winAgencia.destroy();
}
} ]
});
winAgencia.show();
}var storeAclaracionesReservas = new Ext.data.JsonStore( {
url : 'aclaracionesCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idAclaracion',
mapping : 'idAclaracion'
}, {
name : 'idAgencia',
mapping : 'idAgencia'
}, {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'titulo',
mapping : 'titulo'
}, {
name : 'detalle',
mapping : 'detalle'
}, {
name : 'tipo',
mapping : 'tipo'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
var aclaracionesGridReservas = new Ext.grid.GridPanel( {
title : 'Aclaraciones de Reservas',
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Aclaraciones...'
},
store : storeAclaracionesReservas,
columns : [
{
header : 'Linea',
width : 50,
sortable : true,
dataIndex : 'idLinea'
}, {
header : 'Destino',
width : 50,
sortable : true,
dataIndex : 'idDestino'
}, {
header : 'Título',
width : 50,
sortable : true,
dataIndex : 'titulo'
}, {
header : 'Detalle',
width : 80,
sortable : true,
dataIndex : 'detalle'
}, {
header : 'Tipo',
width : 30,
sortable : true,
dataIndex : 'tipo'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoAclaracionesReservas',
text : 'Agregar Aclaracion',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verAclaracionesReservas('', storeAclaracionesReservas);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoAclaraciones',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idAclaracion, 1,
storeAclaracionesReservas,
'aclaracionesCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoAclaraciones',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idAclaracion, 0,
storeAclaracionesReservas,
'aclaracionesCambiarEstado.php');
}
}
}
aclaracionesGridReservas.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarAclaraciones',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verAclaracionesReservas(idAclaracion,
storeAclaracionesReservas);
}
},
{
id : 'eliminarAclaraciones',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idAclaracion,
storeAclaracionesReservas,
'aclaracionesEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
aclaracionesGridReservas.menu.destroy();
}
}
});
aclaracionesGridReservas.menu.showAt(e.getXY());
},
dblclick : function(e) {
verAclaracionesReservas(idAclaracion, storeAclaracionesReservas);
}
}
});
var idAclaracion;
var estado;
var idAgencia;
aclaracionesGridReservas.getSelectionModel().on('rowselect',
function(sm, rowIdx, r) {
idAclaracion = r.get("idAclaracion");
estado = r.get("estado");
idAgencia = r.get("idAgencia");
});
var tabsAclaraciones = new Ext.TabPanel( {
xtype : 'tabpanel',
id : 'tabPanel',
name : 'tabPanel',
activeTab : 0,
height : 600,
items : [ aclaracionesGridReservas ]
});
var storeDestino = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestino.load( {
params : {}
});
var storeLinea = new Ext.data.JsonStore( {
url : 'lineasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLinea.load( {
params : {}
});
var panelFiltrosAclaraciones = new Ext.FormPanel( {
labelAlign : 'top',
frame : true,
fit : true,
waitMsgTarget : true,
items : [
new Ext.form.ComboBox( {
fieldLabel : 'Destino',
hiddenName : 'idDestino',
id : 'filtroIdDestino',
store : storeDestino,
valueField : 'idDestino',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Linea',
id : 'filtroIdLinea',
hiddenName : 'idLinea',
store : storeLinea,
valueField : 'idLinea',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.Button( {
text : 'Aplicar Filtro',
iconCls : 'icoBuscar',
scale : 'medium',
style : 'margin:0px 3px',
handler : function() {
filtroIdDestino = Ext.getCmp('filtroIdDestino').getValue();
filtroIdLinea = Ext.getCmp('filtroIdLinea').getValue();
storeAclaracionesReservas.load( {
params : {
tipo : 'reservas',
idDestino : filtroIdDestino,
idLinea : filtroIdLinea
}
});
}
}) ],
listeners : {
render : function() {
}
}
});
paneles.push(new Ext.Panel( {
title : 'Aclaraciones de Reservas',
iconCls : 'tabAclaraciones',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'west',
title : 'Lista de Aclaraciones',
collapsible : true,
split : true,
width : 250,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ panelFiltrosAclaraciones ]
}, {
region : 'center',
collapsible : false,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ tabsAclaraciones ]
}
],
listeners : {
beforeshow : function() {
storeAclaracionesReservas.load( {
tipo : 'reservas'
});
}
}
}));function verBarcos(idBarco, storeReturn) {
var storeLinea = new Ext.data.JsonStore( {
url : 'lineasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLinea.load( {
params : {}
});
var formBarco = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'barcosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .40,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ new Ext.form.ComboBox({
fieldLabel: 'Linea',
hiddenName:'idLinea',
store: storeLinea,
valueField:'idLinea',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}), {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombre',
id : 'nombre'
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Imagen',
name : 'imagen'
}, {
xtype : 'textfield',
fieldLabel : 'ShipCode',
name : 'shipCode',
id : 'shipCode'
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Plano',
name : 'plano'
}, {
xtype : 'textfield',
fieldLabel : 'Video Youtube(Codigo solo Ej: t1a2Geljg7Y)',
name : 'video',
id : 'video'
} ]
}, {
columnWidth : .60,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'htmleditor',
id : 'descripcion',
fieldLabel : 'Descripción',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 220
} ]
} ]
} ],
listeners : {
render : function() {
if (idBarco > 0) {
formBarco.getEl().mask();
formBarco
.getForm()
.load(
{
method : 'GET',
url : 'barcosCargar.php',
params : {
'idBarco' : idBarco
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formBarco.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winBarco = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Barcos',
width : 800,
autoHeight : true,
closable : true,
plain : true,
items : [ formBarco ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formBarco.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formBarco.getEl().mask();
formBarco
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Barcos',
params : {
'idBarco' : idBarco
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winBarco
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formBarco.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winBarco.destroy();
}
} ]
});
winBarco.show();
}
var storeBarcos = new Ext.data.JsonStore( {
url : 'barcosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idBarco',
mapping : 'idBarco'
}, {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'shipCode',
mapping : 'shipCode'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'imagen',
mapping : 'imagen'
}, {
name : 'plano',
mapping : 'plano'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ],
listeners : {
load : function() {
if (idBarco) {
}
}
}
});
storeBarcos.load( {
params : {
start : 0,
limit : 20
}
});
var barcosGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Barcos...'
},
store : storeBarcos,
columns : [
{
header : 'Linea',
width : 50,
sortable : true,
dataIndex : 'idLinea'
}, {
header : 'ShipCode',
width : 50,
sortable : true,
dataIndex : 'shipCode'
}, {
header : 'Nombre',
width : 50,
sortable : true,
dataIndex : 'nombre'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}, {
header : 'Imagen',
width : 50,
sortable : false,
dataIndex : 'imagen'
}, {
header : 'Plano',
width : 50,
sortable : false,
dataIndex : 'plano'
}
],
tbar : [ {
id : 'nuevoBarcos',
text : 'Agregar Barco',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verBarcos('', storeBarcos);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeBarcos,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoBarcos',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idBarco, 1, storeBarcos, 'barcosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoBarcos',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idBarco, 0, storeBarcos, 'barcosCambiarEstado.php');
}
}
}
barcosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [ {
id : 'modificarBarcos',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verBarcos(idBarco, storeBarcos);
}
}, {
id : 'eliminarBarcos',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idBarco, storeBarcos, 'barcosEliminar.php');
}
}, '-', {
id : 'imagenesBarcos',
text : 'Galería de Imagenes',
iconCls : 'icoGaleria',
scope : this,
handler : function() {
verBarcosimagenesGrid(idBarco);
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
barcosGrid.menu.destroy();
}
}
});
barcosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verBarcos(idBarco, storeBarcos);
}
}
});
var idBarco;
var estado;
barcosGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idBarco = r.get("idBarco");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Barcos',
iconCls : 'tabBarcos',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Barcos',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ barcosGrid ]
}
],
listeners : {
beforeshow : function() {
storeBarcos.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verBarcoscaracteristicas(idBarcoCaracteristica, storeReturn, idBarcoCaracteristicaTipo) {
var storeBarcoCaracteristicaTipo = new Ext.data.JsonStore({
url: 'barcocaracteristicatiposCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idBarcoCaracteristicaTipo', mapping : 'idBarcoCaracteristicaTipo'},
{name: 'nombre', mapping : 'nombre'}]
});
storeBarcoCaracteristicaTipo.load({params: {}});
var formBarcocaracteristica = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'barcoscaracteristicasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 600,
items: [{
xtype:'textfield',
fieldLabel: 'Título',
name: 'titulo',
id: 'titulo'
},{
xtype:'textfield',
fieldLabel: 'Detalle',
name: 'detalle',
id: 'detalle'
}
],
listeners:{
render:function() {
if(idBarcoCaracteristica>0){
formBarcocaracteristica.getEl().mask();
formBarcocaracteristica.getForm().load({
method : 'GET',
url : 'barcoscaracteristicasCargar.php',
params : { 'idBarcoCaracteristica': idBarcoCaracteristica},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formBarcocaracteristica.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winBarcocaracteristica = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Barcoscaracteristicas',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [formBarcocaracteristica],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formBarcocaracteristica.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formBarcocaracteristica.getEl().mask();
formBarcocaracteristica.getForm().submit({
method:'POST',
waitTitle:'Crear Barcoscaracteristicas',
params : { 'idBarcoCaracteristica': idBarcoCaracteristica,'idBarcoCaracteristicaTipo':idBarcoCaracteristicaTipo},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winBarcocaracteristica
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formBarcocaracteristica.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winBarcocaracteristica.destroy();
}
}]
});
winBarcocaracteristica.show();
}function verBarcoscaracteristicasGrid(idBarcoCaracteristicaTipo){
var storeBarcoscaracteristicas = new Ext.data.JsonStore({
url: 'barcoscaracteristicasCargarGrid.php',
remoteSort: true,
root: 'datos',
totalProperty: 'total',
fields: [
{name: 'idBarcoCaracteristica', mapping : 'idBarcoCaracteristica'},
{name: 'idBarcoCaracteristicaTipo', mapping : 'idBarcoCaracteristicaTipo'},
{name: 'titulo', mapping : 'titulo'},
{name: 'detalle', mapping : 'detalle'},
{name: 'estado', mapping : 'estado',renderer:formatEstado}
]
});
storeBarcoscaracteristicas.load({params: {start:0,limit:20,idBarcoCaracteristicaTipo:idBarcoCaracteristicaTipo}});
var barcoscaracteristicasGrid = new Ext.grid.GridPanel({
autoHeight:true,
viewConfig: {
forceFit: true
},
loadMask: {msg:'Cargando Barcoscaracteristicas...'},
store: storeBarcoscaracteristicas,
columns: [
{header: 'Título', width: 50,sortable: true, dataIndex: 'titulo'},
{header: 'Detalle', width: 50,sortable: true, dataIndex: 'detalle'},
{header: "Estado", width: 20, sortable: true, dataIndex: 'estado',renderer: formatEstado}
],
tbar: [{
id:'nuevoBarcoscaracteristicas',
text: 'Agregar Barcoscaracteristica',
iconCls: 'icoNuevo',
scale: 'medium',
scope: this,
handler : function(){
verBarcoscaracteristicas('',storeBarcoscaracteristicas,idBarcoCaracteristicaTipo);
}
}],
sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
bbar: new Ext.PagingToolbar({
pageSize: 20,
store: storeBarcoscaracteristicas,
displayInfo: true
}),
listeners:{
rowcontextmenu : function(ts,rI, e){
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if(estado==0){
var estadoBoton={
id:'estadoBarcoscaracteristicas',
text: 'Activar',
iconCls: 'icoActivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idBarcoCaracteristica,1,storeBarcoscaracteristicas,'barcoscaracteristicasCambiarEstado.php');
}
}
}else{
var estadoBoton={
id:'estadoBarcoscaracteristicas',
text: 'Desactivar',
iconCls: 'icoDesactivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idBarcoCaracteristica,0,storeBarcoscaracteristicas,'barcoscaracteristicasCambiarEstado.php');
}
}
}
barcoscaracteristicasGrid.menu = new Ext.menu.Menu({
id:'feeds-ctx',
width:'200',
items: [{
id:'modificarBarcoscaracteristicas',
text: 'Modificar',
iconCls: 'icoModificar',
scope: this,
handler : function(){
verBarcoscaracteristicas(idBarcoCaracteristica,storeBarcoscaracteristicas,idBarcoCaracteristicaTipo);
}
},{
id:'eliminarBarcoscaracteristicas',
text: 'Eliminar',
iconCls: 'icoEliminar',
scope: this,
handler : function(){
eliminarRegistro(idBarcoCaracteristica,storeBarcoscaracteristicas,'barcoscaracteristicasEliminar.php');
}
},'-',estadoBoton],
listeners:{
hide:function() {
barcoscaracteristicasGrid.menu.destroy();
}
}
});
barcoscaracteristicasGrid.menu.showAt(e.getXY());
},
dblclick : function(e){
verBarcoscaracteristicas(idBarcoCaracteristica,storeBarcoscaracteristicas,idBarcoCaracteristicaTipo);
}
}
});
var idBarcoCaracteristica;
var estado;
barcoscaracteristicasGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idBarcoCaracteristica=r.get("idBarcoCaracteristica");
estado=r.get("estado");
});
var panelBarcoscaracteristicas = new Ext.Window({
buttonAlign: 'center',
modal:true,
title:'Barcoscaracteristicas',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [barcoscaracteristicasGrid],
// All the magic happens after the user clicks the button
buttons:[{
text:'Cerrar',
handler:function(){
panelBarcoscaracteristicas.destroy();
}
}]
});
panelBarcoscaracteristicas.show();
}
;function verBarcoscaracteristicastipos(idBarcoCaracteristicaTipo,storeReturn){
var storeBarco = new Ext.data.JsonStore({
url: 'barcosCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idBarco', mapping : 'idBarco'},
{name: 'nombre', mapping : 'nombre'}]
});
storeBarco.load({params: {}});
var formBarcoscaracteristicastipo = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'barcoscaracteristicastiposGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 600,
items: [
new Ext.form.ComboBox({
fieldLabel: 'Barco',
hiddenName:'idBarco',
store: storeBarco,
valueField:'idBarco',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}),{
xtype:'textfield',
fieldLabel: 'Nombre',
name: 'nombre',
id: 'nombre'
}
],
listeners:{
render:function() {
if(idBarcoCaracteristicaTipo>0){
formBarcoscaracteristicastipo.getEl().mask();
formBarcoscaracteristicastipo.getForm().load({
method : 'GET',
url : 'barcoscaracteristicastiposCargar.php',
params : { 'idBarcoCaracteristicaTipo': idBarcoCaracteristicaTipo},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formBarcoscaracteristicastipo.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winBarcoscaracteristicastipo = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Barcoscaracteristicastipos',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [formBarcoscaracteristicastipo],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formBarcoscaracteristicastipo.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formBarcoscaracteristicastipo.getEl().mask();
formBarcoscaracteristicastipo.getForm().submit({
method:'POST',
waitTitle:'Crear Barcoscaracteristicastipos',
params : { 'idBarcoCaracteristicaTipo': idBarcoCaracteristicaTipo},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winBarcoscaracteristicastipo
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formBarcoscaracteristicastipo.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winBarcoscaracteristicastipo.destroy();
}
}]
});
winBarcoscaracteristicastipo.show();
}var storeBarcoscaracteristicastipos = new Ext.data.JsonStore(
{
url : 'barcoscaracteristicastiposCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idBarcoCaracteristicaTipo',
mapping : 'idBarcoCaracteristicaTipo'
}, {
name : 'idBarco',
mapping : 'idBarco'
}, {
name : 'barco',
mapping : 'barco'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ],
listeners : {
load : function() {
if (idBarcoCaracteristicaTipo) {
}
}
}
});
storeBarcoscaracteristicastipos.load( {
params : {
start : 0,
limit : 20
}
});
var barcoscaracteristicastiposGrid = new Ext.grid.GridPanel(
{
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Barcoscaracteristicastipos...'
},
store : storeBarcoscaracteristicastipos,
columns : [
{
header : 'Barco',
width : 50,
sortable : true,
dataIndex : 'barco'
}, {
header : 'Nombre',
width : 50,
sortable : true,
dataIndex : 'nombre'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoBarcoscaracteristicastipos',
text : 'Agregar Barcoscaracteristicastipo',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verBarcoscaracteristicastipos('',
storeBarcoscaracteristicastipos);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeBarcoscaracteristicastipos,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoBarcoscaracteristicastipos',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(
idBarcoCaracteristicaTipo, 1,
storeBarcoscaracteristicastipos,
'barcoscaracteristicastiposCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoBarcoscaracteristicastipos',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(
idBarcoCaracteristicaTipo, 0,
storeBarcoscaracteristicastipos,
'barcoscaracteristicastiposCambiarEstado.php');
}
}
}
barcoscaracteristicastiposGrid.menu = new Ext.menu.Menu(
{
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarBarcoscaracteristicastipos',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verBarcoscaracteristicastipos(
idBarcoCaracteristicaTipo,
storeBarcoscaracteristicastipos);
}
},
{
id : 'eliminarBarcoscaracteristicastipos',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(
idBarcoCaracteristicaTipo,
storeBarcoscaracteristicastipos,
'barcoscaracteristicastiposEliminar.php');
}
},
'-',
{
id : 'verBarcoscaracteristicas',
text : 'Caracteristicas Items',
iconCls : 'icoCaracteristicas',
scope : this,
handler : function() {
verBarcoscaracteristicasGrid(idBarcoCaracteristicaTipo);
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
barcoscaracteristicastiposGrid.menu
.destroy();
}
}
});
barcoscaracteristicastiposGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verBarcoscaracteristicastipos(idBarcoCaracteristicaTipo,
storeBarcoscaracteristicastipos);
}
}
});
var idBarcoCaracteristicaTipo;
var estado;
barcoscaracteristicastiposGrid
.getSelectionModel()
.on(
'rowselect',
function(sm, rowIdx, r) {
idBarcoCaracteristicaTipo = r
.get("idBarcoCaracteristicaTipo");
idBarco = r.get("idBarco");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Barcos Ficha Tecnica',
iconCls : 'tabBarcoscaracteristicastipos',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Barcoscaracteristicastipos',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ barcoscaracteristicastiposGrid ]
}
],
listeners : {
beforeshow : function() {
storeBarcoscaracteristicastipos.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verBarcosimagenes(idBarcoImagen, storeReturn, idBarco) {
var formBarcoimagen = new Ext.FormPanel( {
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'barcosimagenesGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [ {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Imagen',
name : 'imagen'
}, {
xtype : 'htmleditor',
id : 'descripcion',
fieldLabel : 'Descripción',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
} ],
listeners : {
render : function() {
if (idBarcoImagen > 0) {
formBarcoimagen.getEl().mask();
formBarcoimagen.getForm().load( {
method : 'GET',
url : 'barcosimagenesCargar.php',
params : {
'idBarcoImagen' : idBarcoImagen
},
success : function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formBarcoimagen.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winBarcoimagen = new Ext.Window( {
modal : true,
title : 'Meta Cruises Server - Barcosimagenes',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formBarcoimagen ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [ {
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formBarcoimagen.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formBarcoimagen.getEl().mask();
formBarcoimagen.getForm().submit( {
method : 'POST',
waitTitle : 'Crear Barcosimagenes',
params : {
'idBarcoImagen' : idBarcoImagen,idBarco:idBarco
},
success : function(form, action) {
if (storeReturn) {
storeReturn.reload();
}
sb.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(function() {
winBarcoimagen.destroy();
}, 1600);
},
failure : function(form, action) {
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formBarcoimagen.getForm().reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winBarcoimagen.destroy();
}
} ]
});
winBarcoimagen.show();
}function verBarcosimagenesGrid(idBarco) {
var storeBarcosimagenes = new Ext.data.JsonStore({
url : 'barcosimagenesCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idBarcoImagen',
mapping : 'idBarcoImagen'
}, {
name : 'idBarco',
mapping : 'idBarco'
}, {
name : 'imagen',
mapping : 'imagen'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeBarcosimagenes.load({
params : {
start : 0,
limit : 5,
idBarco : idBarco
}
});
var barcosimagenesGrid = new Ext.grid.GridPanel({
autoHeight : true,
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Barcosimagenes...'
},
store : storeBarcosimagenes,
columns : [
{
header : 'Imagen',
width : 50,
sortable : true,
dataIndex : 'imagen'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoBarcosimagenes',
text : 'Agregar Barcoimagen',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verBarcosimagenes('', storeBarcosimagenes, idBarco);
}
} ],
sm : new Ext.grid.RowSelectionModel({
singleSelect : true
}),
bbar : new Ext.PagingToolbar({
pageSize : 5,
store : storeBarcosimagenes,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoBarcosimagenes',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idBarcoImagen, 1,
storeBarcosimagenes,
'barcosimagenesCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoBarcosimagenes',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idBarcoImagen, 0,
storeBarcosimagenes,
'barcosimagenesCambiarEstado.php');
}
}
}
barcosimagenesGrid.menu = new Ext.menu.Menu({
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarBarcosimagenes',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verBarcosimagenes(idBarcoImagen,
storeBarcosimagenes, idBarco);
}
},
{
id : 'eliminarBarcosimagenes',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idBarcoImagen,
storeBarcosimagenes,
'barcosimagenesEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
barcosimagenesGrid.menu.destroy();
}
}
});
barcosimagenesGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verBarcosimagenes(idBarcoImagen, storeBarcosimagenes, idBarco);
}
}
});
var idBarcoImagen;
var estado;
barcosimagenesGrid.getSelectionModel().on('rowselect',
function(sm, rowIdx, r) {
idBarcoImagen = r.get("idBarcoImagen");
estado = r.get("estado");
});
var panelBarcosimagenes = new Ext.Window({
buttonAlign : 'center',
modal : true,
title : 'Barcosimagenes',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ barcosimagenesGrid ],
// All the magic happens after the user clicks the button
buttons : [ {
text : 'Cerrar',
handler : function() {
panelBarcosimagenes.destroy();
}
} ]
});
panelBarcosimagenes.show();
};function verCategorias(idCategoria, storeReturn) {
Ext.namespace('Ext.inOut');
Ext.inOut.states = [ [ "I", 'Interna' ], [ "E", 'Externa' ],[ "B", 'Con Balcon' ], [ "S", 'Suite' ]
];
var formCategoria = new Ext.FormPanel( {
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'categoriasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'CabinCat',
name : 'cabinCat',
id : 'cabinCat'
}, {
xtype : 'htmleditor',
id : 'descripcion',
fieldLabel : 'Descripción',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Imagen',
name : 'imagen'
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombre',
id : 'nombre'
}, {
xtype : 'textfield',
fieldLabel : 'Ocupacion',
name : 'ocupacion',
id : 'ocupacion'
}, new Ext.form.ComboBox( {
fieldLabel : 'InOut',
hiddenName : 'inOut',
store : new Ext.data.SimpleStore( {
fields : [ 'id', 'nombre' ],
data : Ext.inOut.states
}),
valueField : 'id',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}),{
xtype : 'textfield',
fieldLabel : 'Color',
name : 'color',
id : 'color'
} ]
} ]
} ],
listeners : {
render : function() {
if (idCategoria > 0) {
formCategoria.getEl().mask();
formCategoria.getForm().load( {
method : 'GET',
url : 'categoriasCargar.php',
params : {
'idCategoria' : idCategoria
},
success : function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formCategoria.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winCategoria = new Ext.Window( {
modal : true,
title : 'Meta Cruises Server - Categorias',
width : 800,
autoHeight : true,
closable : true,
plain : true,
items : [ formCategoria ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [ {
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formCategoria.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formCategoria.getEl().mask();
formCategoria.getForm().submit( {
method : 'POST',
waitTitle : 'Crear Categorias',
params : {
'idCategoria' : idCategoria
},
success : function(form, action) {
if (storeReturn) {
storeReturn.reload();
}
sb.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(function() {
winCategoria.destroy();
}, 1600);
},
failure : function(form, action) {
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formCategoria.getForm().reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winCategoria.destroy();
}
} ]
});
winCategoria.show();
}var storeCategorias = new Ext.data.JsonStore( {
url : 'categoriasCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idCategoria',
mapping : 'idCategoria'
}, {
name : 'cabinCat',
mapping : 'cabinCat'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'ocupacion',
mapping : 'ocupacion'
}, {
name : 'imagen',
mapping : 'imagen'
}, {
name : 'inOut',
mapping : 'inOut'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
}, {
name : 'idBarco',
mapping : 'idBarco'
} ],
listeners : {
load : function() {
if (idCategoria) {
}
}
}
});
storeCategorias.load( {
params : {
start : 0,
limit : 20
}
});
var categoriasGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Categorias...'
},
store : storeCategorias,
columns : [ {
header : 'Id',
width : 50,
sortable : true,
dataIndex : 'idCategoria'
}, {
header : 'CabinCat',
width : 50,
sortable : true,
dataIndex : 'cabinCat'
}, {
header : 'Nombre',
width : 50,
sortable : true,
dataIndex : 'nombre'
}, {
header : 'Deck (Barco)',
width : 50,
sortable : true,
dataIndex : 'idBarco'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}, {
header : 'Imagen',
width : 50,
sortable : false,
dataIndex : 'imagen'
}
],
tbar : [ {
id : 'nuevoCategorias',
text : 'Agregar Categoria',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verCategorias('', storeCategorias);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeCategorias,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoCategorias',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idCategoria, 1, storeCategorias,
'categoriasCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoCategorias',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idCategoria, 0, storeCategorias,
'categoriasCambiarEstado.php');
}
}
}
categoriasGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarCategorias',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verCategorias(idCategoria, storeCategorias);
}
},
{
id : 'eliminarCategorias',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idCategoria, storeCategorias,
'categoriasEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
categoriasGrid.menu.destroy();
}
}
});
categoriasGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verCategorias(idCategoria, storeCategorias);
}
}
});
var idCategoria;
var idBarco;
var estado;
categoriasGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idCategoria = r.get("idCategoria");
idBarco = r.get("idBarco");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Categorias',
iconCls : 'tabCategorias',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Categorias',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ categoriasGrid ]
}
],
listeners : {
beforeshow : function() {
storeCategorias.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verCruceros(idCrucero, storeReturn) {
var storeDestino = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestino.load( {
params : {}
});
var storePuerto = new Ext.data.JsonStore( {
url : 'puertosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storePuerto.load( {
params : {}
});
var storeBarco = new Ext.data.JsonStore( {
url : 'barcosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idBarco',
mapping : 'idBarco'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeBarco.load( {
params : {}
});
var formCrucero = new Ext.FormPanel( {
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'crucerosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ new Ext.form.ComboBox( {
fieldLabel : 'Destino',
hiddenName : 'idDestino',
store : storeDestino,
valueField : 'idDestino',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Barco',
hiddenName : 'idBarco',
store : storeBarco,
valueField : 'idBarco',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'Duracion',
name : 'duracion',
id : 'duracion'
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ new Ext.form.ComboBox( {
fieldLabel : 'Puerto',
hiddenName : 'idPuerto',
store : storePuerto,
valueField : 'idPuerto',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'PackageId',
name : 'packageId',
id : 'packageId'
}, {
xtype : 'htmleditor',
id : 'itinerarioDescripcion',
fieldLabel : 'Itinerario Descripcion',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
} ]
} ]
} ],
listeners : {
render : function() {
if (idCrucero > 0) {
formCrucero.getEl().mask();
formCrucero.getForm().load( {
method : 'GET',
url : 'crucerosCargar.php',
params : {
'idCrucero' : idCrucero
},
success : function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formCrucero.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winCrucero = new Ext.Window( {
modal : true,
title : 'Meta Cruises Server - Cruceros',
width : 800,
autoHeight : true,
closable : true,
plain : true,
items : [ formCrucero ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [ {
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formCrucero.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formCrucero.getEl().mask();
formCrucero.getForm().submit( {
method : 'POST',
waitTitle : 'Crear Cruceros',
params : {
'idCrucero' : idCrucero
},
success : function(form, action) {
if (storeReturn) {
storeReturn.reload();
}
sb.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(function() {
winCrucero.destroy();
}, 1600);
},
failure : function(form, action) {
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formCrucero.getForm().reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winCrucero.destroy();
}
} ]
});
winCrucero.show();
}var storeCruceros = new Ext.data.JsonStore( {
url : 'crucerosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idCrucero',
mapping : 'idCrucero'
}, {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'idBarco',
mapping : 'idBarco'
}, {
name : 'packageId',
mapping : 'packageId'
}, {
name : 'duracion',
mapping : 'duracion'
}, {
name : 'itinerarioDescripcion',
mapping : 'itinerarioDescripcion'
}, {
name : 'fechaActualizacion',
mapping : 'fechaActualizacion'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeCruceros.load( {
params : {
start : 0,
limit : 20
}
});
var storeLineaCombo = new Ext.data.JsonStore( {
url : 'lineasCargarGridCombo.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLineaCombo.load( {
params : {}
});
var crucerosGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Cruceros...'
},
store : storeCruceros,
columns : [
{
header : 'Destino',
width : 50,
sortable : true,
dataIndex : 'idDestino'
}, {
header : 'Puerto',
width : 50,
sortable : true,
dataIndex : 'idPuerto'
}, {
header : 'Barco',
width : 50,
sortable : true,
dataIndex : 'idBarco'
}, {
header : 'PackageId',
width : 50,
sortable : true,
dataIndex : 'packageId'
}, {
header : 'Duracion',
width : 50,
sortable : true,
dataIndex : 'duracion'
}, {
header : 'Actualizado',
width : 50,
sortable : true,
dataIndex : 'fechaActualizacion'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ 'Linea: ', new Ext.form.ComboBox( {
fieldLabel : 'Linea',
id : 'idLineaFiltro',
hiddenName : 'idLinea',
store : storeLineaCombo,
valueField : 'idLinea',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
id : 'filtrarCruceros',
text : 'Filtrar',
iconCls : 'icoRecargar',
scale : 'medium',
scope : this,
handler : function() {
idLinea = Ext.getCmp('idLineaFiltro').getValue();
storeCruceros.load( {
params : {
idLinea : idLinea
}
});
}
},'-', {
id : 'nuevoCruceros',
text : 'Agregar Crucero',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verCruceros('', storeCruceros);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeCruceros,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoCruceros',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idCrucero, 1, storeCruceros,
'crucerosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoCruceros',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idCrucero, 0, storeCruceros,
'crucerosCambiarEstado.php');
}
}
}
crucerosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarCruceros',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verCruceros(idCrucero, storeCruceros);
}
},
{
id : 'eliminarCruceros',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idCrucero, storeCruceros,
'crucerosEliminar.php');
}
}
, '-', {
id : 'itinerarioCruceros',
text : 'Itinerario',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verCrucerositinerariosGrid(idCrucero);
}
}, '-', {
id : 'precioCruceros',
text : 'Fechas',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verCrucerospreciosGrid(idCrucero);
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
crucerosGrid.menu.destroy();
}
}
});
crucerosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verCruceros(idCrucero, storeCruceros);
}
}
});
var idCrucero;
var estado;
crucerosGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idCrucero = r.get("idCrucero");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Cruceros',
iconCls : 'tabCruceros',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Cruceros',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ crucerosGrid ]
} ],
listeners : {
beforeshow : function() {
storeCruceros.load( {
params : {
start : 0,
limit : 20
}
});
storeLineaCombo.load( {
params : {}
});
}
}
}));function verCrucerositinerarios(idItinerario, storeReturn,idCrucero) {
var storePuerto = new Ext.data.JsonStore( {
url : 'puertosCargarGridCombo.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storePuerto.load( {
params : {}
});
Ext.namespace('Ext.dia');
Ext.dia.states = [ [ 1, 'Dia 1' ], [ 2, 'Dia 2' ], [ 3, 'Dia 3' ], [ 4, 'Dia 4' ], [ 5, 'Dia 5' ], [ 6, 'Dia 6' ], [ 7, 'Dia 7' ], [ 8, 'Dia 8' ], [ 9, 'Dia 9' ], [10, 'Dia 10' ],
[11, 'Dia 11' ], [ 12, 'Dia 12' ], [ 13, 'Dia 13' ], [ 14, 'Dia 14' ], [ 15, 'Dia 15' ],[ 16, 'Dia 16' ], [ 17, 'Dia 17' ], [ 18, 'Dia 18' ], [ 19, 'Dia 19' ], [ 20, 'Dia 20' ],
[ 21, 'Dia 21' ], [ 22, 'Dia 22' ], [ 23, 'Dia 23' ], [ 24, 'Dia 24' ], [25, 'Dia 25' ], [26, 'Dia 26' ], [ 27, 'Dia 27' ], [ 28, 'Dia 28' ], [ 29, 'Dia 29' ], [ 30, 'Dia 30' ],
[ 31, 'Dia 31' ], [ 32, 'Dia 32' ], [ 33, 'Dia 33' ], [ 34, 'Dia 34' ], [35, 'Dia 35' ], [36, 'Dia 36' ], [ 37, 'Dia 37' ], [ 38, 'Dia 38' ], [ 39, 'Dia 39' ], [ 40, 'Dia 40' ],
[ 41, 'Dia 31' ], [ 42, 'Dia 42' ], [ 43, 'Dia 43' ], [ 44, 'Dia 44' ], [45, 'Dia 45' ], [46, 'Dia 46' ], [ 47, 'Dia 47' ], [ 48, 'Dia 48' ], [ 49, 'Dia 49' ], [ 50, 'Dia 50' ],
[ 51, 'Dia 51' ], [ 52, 'Dia 52' ], [ 53, 'Dia 53' ], [ 54, 'Dia 54' ], [55, 'Dia 55' ], [56, 'Dia 56' ], [ 57, 'Dia 57' ], [ 58, 'Dia 58' ], [ 59, 'Dia 59' ], [ 60, 'Dia 60' ],
[ 61, 'Dia 61' ], [ 62, 'Dia 62' ], [ 63, 'Dia 63' ], [ 64, 'Dia 64' ], [65, 'Dia 65' ], [66, 'Dia 66' ], [ 67, 'Dia 67' ], [ 68, 'Dia 68' ], [ 69, 'Dia 69' ], [ 70, 'Dia 70' ],
[ 71, 'Dia 71' ], [ 72, 'Dia 72' ], [ 73, 'Dia 73' ], [ 74, 'Dia 74' ], [75, 'Dia 75' ], [76, 'Dia 76' ], [ 77, 'Dia 77' ], [ 78, 'Dia 78' ], [ 79, 'Dia 79' ], [ 80, 'Dia 80' ],
[ 81, 'Dia 81' ], [ 82, 'Dia 82' ], [ 83, 'Dia 83' ], [ 84, 'Dia 84' ], [85, 'Dia 85' ], [86, 'Dia 86' ], [ 87, 'Dia 87' ], [ 88, 'Dia 88' ], [ 89, 'Dia 89' ], [ 90, 'Dia 90' ],
[ 91, 'Dia 91' ], [ 92, 'Dia 92' ], [ 93, 'Dia 93' ], [ 94, 'Dia 94' ], [95, 'Dia 95' ], [96, 'Dia 96' ], [ 97, 'Dia 97' ], [ 98, 'Dia 98' ], [ 99, 'Dia 99' ], [ 100, 'Dia 100' ],
[ 101, 'Dia 101' ], [ 102, 'Dia 102' ], [ 103, 'Dia 103' ], [ 104, 'Dia 104' ], [105, 'Dia 105' ], [106, 'Dia 106' ], [ 107, 'Dia 107' ], [ 108, 'Dia 108' ], [ 109, 'Dia 109' ], [ 110, 'Dia 110' ]
];
Ext.namespace('Ext.llegada');
Ext.llegada.states = [ [ '00000', '---' ],[ '00301', '00:30' ],[ '01001', '01:00' ],[ '01301', '01:30' ],[ '02001', '02:00' ],[ '02301', '02:30' ],[ '03001', '03:00' ],[ '03301', '03:30' ],[ '04001', '04:00' ],[ '04301', '04:30' ],[ '05001', '05:00' ],[ '05301', '05:30' ],[ '06001', '06:00' ],[ '06301', '06:30' ],[ '07001', '07:00' ],[ '07301', '07:30' ],[ '08001', '08:00' ],[ '08301', '08:30' ], [ '09001', '09:00' ],[ '09301', '09:30' ], [ '10001', '10:00' ],[ '10301', '10:30' ], [ '11001', '11:00' ],[ '11301', '11:30' ], [ '12001', '12:00' ],[ '12301', '12:30' ], [ '13001', '13:00' ],[ '13301', '13:30' ], [ '14001', '14:00' ],[ '14301', '14:30' ], [ '15001', '15:00' ],[ '15301', '15:30' ], [ '16001', '16:00' ],[ '16301', '16:30' ], [ '17001', '17:00' ],[ '17301', '17:30' ], [ '18001', '18:00' ],[ '18301', '18:30' ], [ '19001', '19:00' ],[ '19301', '19:30' ], [ '20001', '20:00' ],[ '20301', '20:30' ], [ '21001', '21:00' ],[ '21301', '21:30' ], [ '22001', '22:00' ],[ '22301', '22:30' ], [ '23001', '23:00' ],[ '2301', '23:30' ], [ '00001', '00:00' ]
];
Ext.namespace('Ext.salida');
Ext.salida.states = [ [ '00000', '---' ],[ '00301', '00:30' ],[ '01001', '01:00' ],[ '01301', '01:30' ],[ '02001', '02:00' ],[ '02301', '02:30' ],[ '03001', '03:00' ],[ '03301', '03:30' ],[ '04001', '04:00' ],[ '04301', '04:30' ],[ '05001', '05:00' ],[ '05301', '05:30' ],[ '06001', '06:00' ],[ '06301', '06:30' ],[ '07001', '07:00' ],[ '07301', '07:30' ],[ '08001', '08:00' ],[ '08301', '08:30' ], [ '09001', '09:00' ],[ '09301', '09:30' ], [ '10001', '10:00' ],[ '10301', '10:30' ], [ '11001', '11:00' ],[ '11301', '11:30' ], [ '12001', '12:00' ],[ '12301', '12:30' ], [ '13001', '13:00' ],[ '13301', '13:30' ], [ '14001', '14:00' ],[ '14301', '14:30' ], [ '15001', '15:00' ],[ '15301', '15:30' ], [ '16001', '16:00' ],[ '16301', '16:30' ], [ '17001', '17:00' ],[ '17301', '17:30' ], [ '18001', '18:00' ],[ '18301', '18:30' ], [ '19001', '19:00' ],[ '19301', '19:30' ], [ '20001', '20:00' ],[ '20301', '20:30' ], [ '21001', '21:00' ],[ '21301', '21:30' ], [ '22001', '22:00' ],[ '22301', '22:30' ], [ '23001', '23:00' ],[ '2301', '23:30' ], [ '00001', '00:00' ]
];
Ext.namespace('Ext.actividad');
Ext.actividad.states = [ [ 1, 'Puerto' ], [ 2, 'Dato 2' ]
];
var formCruceroitinerario = new Ext.FormPanel( {
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'crucerositinerariosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [
new Ext.form.ComboBox( {
fieldLabel : 'Puerto',
hiddenName : 'idPuerto',
store : storePuerto,
valueField : 'idPuerto',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Llegada',
hiddenName : 'llegada',
store : new Ext.data.SimpleStore( {
fields : [ 'id', 'nombre' ],
data : Ext.llegada.states
}),
valueField : 'id',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Dia',
hiddenName : 'dia',
store : new Ext.data.SimpleStore( {
fields : [ 'id', 'nombre' ],
data : Ext.dia.states
}),
valueField : 'id',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), new Ext.form.ComboBox( {
fieldLabel : 'Salida',
hiddenName : 'salida',
store : new Ext.data.SimpleStore( {
fields : [ 'id', 'nombre' ],
data : Ext.salida.states
}),
valueField : 'id',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}) ],
listeners : {
render : function() {
if (idItinerario > 0) {
formCruceroitinerario.getEl().mask();
formCruceroitinerario.getForm().load( {
method : 'GET',
url : 'crucerositinerariosCargar.php',
params : {
'idItinerario' : idItinerario
},
success : function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formCruceroitinerario.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winCruceroitinerario = new Ext.Window( {
modal : true,
title : 'Meta Cruises Server - Crucerositinerarios',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formCruceroitinerario ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [ {
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formCruceroitinerario.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formCruceroitinerario.getEl().mask();
formCruceroitinerario.getForm().submit( {
method : 'POST',
waitTitle : 'Crear Crucerositinerarios',
params : {
'idItinerario' : idItinerario,'idCrucero':idCrucero
},
success : function(form, action) {
if (storeReturn) {
storeReturn.reload();
}
sb.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(function() {
winCruceroitinerario.destroy();
}, 1600);
},
failure : function(form, action) {
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formCruceroitinerario.getForm().reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winCruceroitinerario.destroy();
}
} ]
});
winCruceroitinerario.show();
}function verCrucerositinerariosGrid(idCrucero) {
var storeCrucerositinerarios = new Ext.data.JsonStore( {
url : 'crucerositinerariosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idItinerario',
mapping : 'idItinerario'
}, {
name : 'idCrucero',
mapping : 'idCrucero'
}, {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'dia',
mapping : 'dia'
}, {
name : 'llegada',
mapping : 'llegada'
}, {
name : 'salida',
mapping : 'salida'
}, {
name : 'actividad',
mapping : 'actividad'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeCrucerositinerarios.load( {
params : {
start : 0,
limit : 20,
idCrucero : idCrucero
}
});
var crucerositinerariosGrid = new Ext.grid.GridPanel(
{
autoHeight : true,
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Crucerositinerarios...'
},
store : storeCrucerositinerarios,
columns : [
{
header : 'Puerto',
width : 50,
sortable : true,
dataIndex : 'idPuerto'
}, {
header : 'Dia',
width : 50,
sortable : true,
dataIndex : 'dia'
}, {
header : 'Llegada',
width : 50,
sortable : true,
dataIndex : 'llegada'
}, {
header : 'Salida',
width : 50,
sortable : true,
dataIndex : 'salida'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
tbar : [ {
id : 'nuevoItinerario',
text : 'Agregar Itinerario',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verCrucerositinerarios('', storeCrucerositinerarios, idCrucero)
}
} ],
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeCrucerositinerarios,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoCrucerositinerarios',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idItinerario, 1,
storeCrucerositinerarios,
'crucerositinerariosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoCrucerositinerarios',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idItinerario, 0,
storeCrucerositinerarios,
'crucerositinerariosCambiarEstado.php');
}
}
}
crucerositinerariosGrid.menu = new Ext.menu.Menu(
{
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarCrucerositinerarios',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verCrucerositinerarios(
idItinerario,
storeCrucerositinerarios,
idCrucero);
}
},
{
id : 'eliminarCrucerositinerarios',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(
idItinerario,
storeCrucerositinerarios,
'crucerositinerariosEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
crucerositinerariosGrid.menu
.destroy();
}
}
});
crucerositinerariosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verCrucerositinerarios(idItinerario,
storeCrucerositinerarios, idCrucero);
}
}
});
var idItinerario;
var estado;
crucerositinerariosGrid.getSelectionModel().on('rowselect',
function(sm, rowIdx, r) {
idItinerario = r.get("idItinerario");
estado = r.get("estado");
});
var panelCrucerositinerarios = new Ext.Window( {
buttonAlign : 'center',
modal : true,
title : 'Crucerositinerarios',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ crucerositinerariosGrid ],
// All the magic happens after the user clicks the button
buttons : [ {
text : 'Cerrar',
handler : function() {
panelCrucerositinerarios.destroy();
}
} ]
});
panelCrucerositinerarios.show();
};function verCrucerosprecios(idPrecio, storeReturn, idCrucero) {
var formCruceroprecio = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'crucerospreciosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [ {
xtype : 'datefield',
format : 'd/m/Y',
fieldLabel : 'Fecha Salida',
name : 'fechaSalida',
id : 'fechaSalida',
anchor : '45%'
}, {
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Precio Interno',
name : 'precioI',
id : 'precioI'
}, {
xtype : 'textfield',
fieldLabel : 'Precio Externo',
name : 'precioE',
id : 'precioE'
}, {
xtype : 'textfield',
fieldLabel : 'Precio con Balcon',
name : 'precioB',
id : 'precioB'
}, {
xtype : 'textfield',
fieldLabel : 'Precio Suite',
name : 'precioS',
id : 'precioS'
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Rate Interno',
name : 'rateI',
id : 'rateI'
}, {
xtype : 'textfield',
fieldLabel : 'Rate Externo',
name : 'rateE',
id : 'rateE'
}, {
xtype : 'textfield',
fieldLabel : 'Rate con Balco',
name : 'rateB',
id : 'rateB'
}, {
xtype : 'textfield',
fieldLabel : 'Rate Suite',
name : 'rateS',
id : 'rateS'
} ]
} ]
} ],
listeners : {
render : function() {
if (idPrecio > 0) {
formCruceroprecio.getEl().mask();
formCruceroprecio
.getForm()
.load(
{
method : 'GET',
url : 'crucerospreciosCargar.php',
params : {
'idPrecio' : idPrecio
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus({
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formCruceroprecio.getEl()
.unmask();
},
failure : function(form, action) {
alert('Failure: '
+ action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winCruceroprecio = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Crucerosprecios',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formCruceroprecio ],
bbar : new Ext.ux.StatusBar({
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus({
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formCruceroprecio.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formCruceroprecio.getEl().mask();
formCruceroprecio
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Crucerosprecios',
params : {
'idPrecio' : idPrecio,
'idCrucero' : idCrucero
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus({
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winCruceroprecio
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formCruceroprecio
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winCruceroprecio.destroy();
}
} ]
});
winCruceroprecio.show();
}function verCrucerospreciosGrid(idCrucero) {
var storeCrucerosprecios = new Ext.data.JsonStore( {
url : 'crucerospreciosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPrecio',
mapping : 'idPrecio'
}, {
name : 'idCrucero',
mapping : 'idCrucero'
}, {
name : 'precioI',
mapping : 'precioI'
}, {
name : 'precioE',
mapping : 'precioE'
}, {
name : 'precioB',
mapping : 'precioB'
}, {
name : 'precioS',
mapping : 'precioS'
}, {
name : 'fechaSalida',
mapping : 'fechaSalida'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeCrucerosprecios.load( {
params : {
start : 0,
limit : 10,
idCrucero : idCrucero
}
});
var crucerospreciosGrid = new Ext.grid.GridPanel( {
autoHeight : true,
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Crucerosprecios...'
},
store : storeCrucerosprecios,
columns : [
{
header : 'Precio Interior',
width : 50,
sortable : true,
dataIndex : 'precioI'
}, {
header : 'Precio Exterior',
width : 50,
sortable : true,
dataIndex : 'precioE'
}, {
header : 'Precio con Balcon',
width : 50,
sortable : true,
dataIndex : 'precioB'
}, {
header : 'Precio Suite',
width : 50,
sortable : true,
dataIndex : 'precioS'
}, {
header : 'Fecha Salida',
width : 50,
sortable : true,
dataIndex : 'fechaSalida'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoCrucerosprecios',
text : 'Agregar Fecha',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verCrucerosprecios('', storeCrucerosprecios, idCrucero);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 10,
store : storeCrucerosprecios,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoCrucerosprecios',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPrecio, 1, storeCrucerosprecios, 'crucerospreciosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoCrucerosprecios',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPrecio, 0, storeCrucerosprecios, 'crucerospreciosCambiarEstado.php');
}
}
}
crucerospreciosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [ {
id : 'modificarCrucerosprecios',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verCrucerosprecios(idPrecio, storeCrucerosprecios, idCrucero);
}
}, {
id : 'eliminarCrucerosprecios',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idPrecio, storeCrucerosprecios, 'crucerospreciosEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
crucerospreciosGrid.menu.destroy();
}
}
});
crucerospreciosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verCrucerosprecios(idPrecio, storeCrucerosprecios, idCrucero);
}
}
});
var idPrecio;
var estado;
crucerospreciosGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idPrecio = r.get("idPrecio");
estado = r.get("estado");
});
var panelCrucerosprecios = new Ext.Window( {
buttonAlign : 'center',
modal : true,
title : 'Crucerosprecios',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ crucerospreciosGrid ],
// All the magic happens after the user clicks the button
buttons : [ {
text : 'Cerrar',
handler : function() {
panelCrucerosprecios.destroy();
}
} ]
});
panelCrucerosprecios.show();
};function verDecks(idDeck, storeReturn) {
var storeBarco = new Ext.data.JsonStore({
url : 'barcosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idBarco',
mapping : 'idBarco'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeBarco.load({
params : {}
});
var formDeck = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'decksGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 1000,
items : [ {
layout : 'column',
items : [ {
columnWidth : .2,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ new Ext.form.ComboBox({
fieldLabel : 'Barco',
hiddenName : 'idBarco',
store : storeBarco,
valueField : 'idBarco',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'DeckCode',
name : 'deckCode',
id : 'deckCode'
},{
xtype : 'textfield',
fieldLabel : 'ShipCode',
name : 'shipCode',
id : 'shipCode'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombre',
id : 'nombre'
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Plano',
name : 'plano'
} ]
},{
columnWidth : .4,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'htmleditor',
id : 'camarotesInterior',
fieldLabel : 'Camarotes Interior',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}, {
xtype : 'htmleditor',
id : 'camarotesExterior',
fieldLabel : 'Camarotes Exterior',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}]
}, {
columnWidth : .4,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'htmleditor',
id : 'camarotesBalcon',
fieldLabel : 'Camarotes Balcon',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}, {
xtype : 'htmleditor',
id : 'camarotes Suite',
fieldLabel : 'Camarotes Suite',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}]
} ]
} ],
listeners : {
render : function() {
if (idDeck > 0) {
formDeck.getEl().mask();
formDeck
.getForm()
.load(
{
method : 'GET',
url : 'decksCargar.php',
params : {
'idDeck' : idDeck
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus({
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formDeck.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: '
+ action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winDeck = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Decks',
width : 1000,
autoHeight : true,
closable : true,
plain : true,
items : [ formDeck ],
bbar : new Ext.ux.StatusBar({
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus({
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formDeck.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formDeck.getEl().mask();
formDeck
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Decks',
params : {
'idDeck' : idDeck
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus({
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winDeck
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formDeck.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winDeck.destroy();
}
} ]
});
winDeck.show();
}
var storeDecks = new Ext.data.JsonStore({
url: 'decksCargarGrid.php',
remoteSort: true,
root: 'datos',
totalProperty: 'total',
fields: [
{name: 'idDeck', mapping : 'idDeck'},
{name: 'idBarco', mapping : 'idBarco'},
{name: 'shipCode', mapping : 'shipCode'},
{name: 'deckCode', mapping : 'deckCode'},
{name: 'nombre', mapping : 'nombre'},
{name: 'camarotes', mapping : 'camarotes'},
{name: 'areasPublicas', mapping : 'areasPublicas'},
{name: 'imagen', mapping : 'imagen'},
{name: 'plano', mapping : 'plano'},
{name: 'estado', mapping : 'estado',renderer:formatEstado}
],
listeners:{
load: function(){
if(idDeck){
window.frames['previewDeck'].location.href=plano;
}
}
}
});
storeDecks.load({params: {start:0,limit:20}});
var decksGrid = new Ext.grid.GridPanel({
viewConfig: {
forceFit: true
},
loadMask: {msg:'Cargando Decks...'},
store: storeDecks,
columns: [
{header: 'Barco', width: 50,sortable: true, dataIndex: 'idBarco'},
{header: 'DeckCode', width: 50,sortable: true, dataIndex: 'deckCode'},
{header: 'Nombre', width: 50,sortable: true, dataIndex: 'nombre'},
{header: "Estado", width: 20, sortable: true, dataIndex: 'estado',renderer: formatEstado}
],
tbar: [{
id:'nuevoDecks',
text: 'Agregar Deck',
iconCls: 'icoNuevo',
scale: 'medium',
scope: this,
handler : function(){
verDecks('',storeDecks);
}
}],
sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
bbar: new Ext.PagingToolbar({
pageSize: 20,
store: storeDecks,
displayInfo: true
}),
listeners:{
rowcontextmenu : function(ts,rI, e){
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if(estado==0){
var estadoBoton={
id:'estadoDecks',
text: 'Activar',
iconCls: 'icoActivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idDeck,1,storeDecks,'decksCambiarEstado.php');
}
}
}else{
var estadoBoton={
id:'estadoDecks',
text: 'Desactivar',
iconCls: 'icoDesactivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idDeck,0,storeDecks,'decksCambiarEstado.php');
}
}
}
decksGrid.menu = new Ext.menu.Menu({
id:'feeds-ctx',
width:'200',
items: [{
id:'modificarDecks',
text: 'Modificar',
iconCls: 'icoModificar',
scope: this,
handler : function(){
verDecks(idDeck,storeDecks);
}
},{
id:'eliminarDecks',
text: 'Eliminar',
iconCls: 'icoEliminar',
scope: this,
handler : function(){
eliminarRegistro(idDeck,storeDecks,'decksEliminar.php');
}
},'-',estadoBoton],
listeners:{
hide:function() {
decksGrid.menu.destroy();
}
}
});
decksGrid.menu.showAt(e.getXY());
},
dblclick : function(e){
verDecks(idDeck,storeDecks);
}
}
});
var idDeck;
var estado;
var plano;
decksGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idDeck=r.get("idDeck");
estado=r.get("estado");
plano=r.get("plano");
window.frames['previewDeck'].location.href=plano;
});
var centerPanelPreview={
id: 'previewDeck',
xtype:'panel',
tbar: [{
id:'recargarDecks',
text: 'Recargar',
scale: 'medium',
iconCls: 'icoRecargar',
scope: this,
handler : function(){
window.frames['previewDeck'].location.href=plano;
}
}],
html: '',
bodyStyle: {
background: '#ffffff',
color: '#000000'
}
};
paneles.push(
new Ext.Panel({
title:'Decks',
iconCls: 'tabDecks',
cls: 'paneles',
layout:'border',
items:[{
region:'west',
title:'Lista de Decks',
collapsible: true,
split:true,
width: 500,
minSize: 200,
maxSize: 1000,
layout:'fit',
margins:'0 2 0 0',
items:[decksGrid]
},{
region:'center',
title:'Vista preliminar de Deck',
collapsible: false,
split:true,
width: 500,
minSize: 200,
maxSize: 1000,
layout:'fit',
margins:'0 2 0 0',
items:[centerPanelPreview]
}
],
listeners : {
beforeshow : function() {
storeDecks.load({params: {start:0,limit:20}});
}
}
})
);function verDestinos(idDestino, storeReturn) {
var formDestino = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'destinosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'GeoCode',
name : 'geoCode',
id : 'geoCode'
}, {
xtype : 'htmleditor',
id : 'descripcion',
fieldLabel : 'Descripción',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Imagen',
name : 'imagen'
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombre',
id : 'nombre'
}, {
xtype : 'htmleditor',
id : 'descripcionCorta',
fieldLabel : 'DescripciónCorta',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'ImagenIcono',
name : 'imagenIcono'
} ]
} ]
} ],
listeners : {
render : function() {
if (idDestino > 0) {
formDestino.getEl().mask();
formDestino
.getForm()
.load(
{
method : 'GET',
url : 'destinosCargar.php',
params : {
'idDestino' : idDestino
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formDestino.getEl()
.unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winDestino = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Destinos',
width : 800,
autoHeight : true,
closable : true,
plain : true,
items : [ formDestino ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formDestino.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formDestino.getEl().mask();
formDestino
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Destinos',
params : {
'idDestino' : idDestino
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winDestino
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formDestino
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winDestino.destroy();
}
} ]
});
winDestino.show();
}var storeDestinos = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'geoCode',
mapping : 'geoCode'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'descripcionCorta',
mapping : 'descripcionCorta'
}, {
name : 'imagen',
mapping : 'imagen'
}, {
name : 'imagenIcono',
mapping : 'imagenIcono'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeDestinos.load( {
params : {
start : 0,
limit : 20
}
});
var destinosGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Destinos...'
},
store : storeDestinos,
columns : [
{
header : 'GeoCode',
width : 50,
sortable : true,
dataIndex : 'geoCode'
}, {
header : 'Nombre',
width : 50,
sortable : true,
dataIndex : 'nombre'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}, {
header : 'Imagen',
width : 50,
sortable : false,
dataIndex : 'imagen'
}, {
header : 'Imagen Icono',
width : 50,
sortable : false,
dataIndex : 'imagenIcono'
}
],
tbar : [ {
id : 'nuevoDestinos',
text : 'Agregar Destino',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verDestinos('', storeDestinos);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeDestinos,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoDestinos',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idDestino, 1, storeDestinos,
'destinosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoDestinos',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idDestino, 0, storeDestinos,
'destinosCambiarEstado.php');
}
}
}
destinosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarDestinos',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verDestinos(idDestino, storeDestinos);
}
},
{
id : 'eliminarDestinos',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idDestino, storeDestinos,
'destinosEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
destinosGrid.menu.destroy();
}
}
});
destinosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verDestinos(idDestino, storeDestinos);
}
}
});
var idDestino;
var estado;
destinosGrid
.getSelectionModel()
.on(
'rowselect',
function(sm, rowIdx, r) {
idDestino = r.get("idDestino");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Destinos',
iconCls : 'tabDestinos',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Destinos',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ destinosGrid ]
}
],
listeners : {
beforeshow : function() {
storeDestinos.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verGeocodes(idGeocode,storeReturn){
var storeDestino = new Ext.data.JsonStore({
url: 'destinosCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idDestino', mapping : 'idDestino'},
{name: 'nombre', mapping : 'nombre'}]
});
storeDestino.load({params: {}});
var storeLinea = new Ext.data.JsonStore({
url: 'lineasCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idLinea', mapping : 'idLinea'},
{name: 'nombre', mapping : 'nombre'}]
});
storeLinea.load({params: {}});
var formGeocode = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'geocodesGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 600,
items: [
new Ext.form.ComboBox({
fieldLabel: 'Destino',
hiddenName:'idDestino',
store: storeDestino,
valueField:'idDestino',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}),{
xtype:'textfield',
fieldLabel: 'GeoCode',
name: 'geoCode',
id: 'geoCode'
},
new Ext.form.ComboBox({
fieldLabel: 'Linea',
hiddenName:'idLinea',
store: storeLinea,
valueField:'idLinea',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
})
],
listeners:{
render:function() {
if(idGeocode>0){
formGeocode.getEl().mask();
formGeocode.getForm().load({
method : 'GET',
url : 'geocodesCargar.php',
params : { 'idGeocode': idGeocode},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formGeocode.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winGeocode = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Geocodes',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [formGeocode],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formGeocode.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formGeocode.getEl().mask();
formGeocode.getForm().submit({
method:'POST',
waitTitle:'Crear Geocodes',
params : { 'idGeocode': idGeocode},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winGeocode
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formGeocode.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winGeocode.destroy();
}
}]
});
winGeocode.show();
}
var storeGeocodes = new Ext.data.JsonStore( {
url : 'geocodesCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idGeocode',
mapping : 'idGeocode'
}, {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'geoCode',
mapping : 'geoCode'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeGeocodes.load( {
params : {
start : 0,
limit : 20
}
});
var geocodesGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Geocodes...'
},
store : storeGeocodes,
columns : [
{
header : 'Destino',
width : 50,
sortable : true,
dataIndex : 'idDestino'
}, {
header : 'Linea',
width : 50,
sortable : true,
dataIndex : 'idLinea'
}, {
header : 'GeoCode',
width : 50,
sortable : true,
dataIndex : 'geoCode'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoGeocodes',
text : 'Agregar Geocode',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verGeocodes('', storeGeocodes);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeGeocodes,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoGeocodes',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idGeocode, 1, storeGeocodes,
'geocodesCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoGeocodes',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idGeocode, 0, storeGeocodes,
'geocodesCambiarEstado.php');
}
}
}
geocodesGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarGeocodes',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verGeocodes(idGeocode, storeGeocodes);
}
},
{
id : 'eliminarGeocodes',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idGeocode, storeGeocodes,
'geocodesEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
geocodesGrid.menu.destroy();
}
}
});
geocodesGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verGeocodes(idGeocode, storeGeocodes);
}
}
});
var idGeocode;
var estado;
geocodesGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idGeocode = r.get("idGeocode");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Geocodes',
iconCls : 'tabGeocodes',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Geocodes',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ geocodesGrid ]
} ],
listeners : {
beforeshow : function() {
storeGeocodes.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verLineas(idLinea,storeReturn){
var formLinea = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'lineasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype:'textfield',
fieldLabel: 'Nombre',
name: 'nombre',
id: 'nombre'
},{
xtype: 'fileuploadfield',
emptyText: 'Examinar',
fieldLabel: 'Logo',
name: 'logo'
},{
xtype:'textfield',
fieldLabel: 'CruiseLine',
name: 'cruiseLine',
id: 'cruiseLine'
},{
xtype:'htmleditor',
id:'descripcion',
fieldLabel:'Descripción',
enableColors: false,
enableAlignments: false,
enableLinks :false,
enableLists :false,
enableSourceEdit:false,
enableFontSize :false,
enableFont :false,
defaultValue:'',
height:200
},{
xtype: 'fileuploadfield',
emptyText: 'Examinar',
fieldLabel: 'Términos Pasajeros',
name: 'tycPasajeros'
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype:'textfield',
fieldLabel: 'Nombre Completo',
name: 'nombreCompleto',
id: 'nombreCompleto'
},{
xtype: 'fileuploadfield',
emptyText: 'Examinar',
fieldLabel: 'Logo Icono',
name: 'logoIcono'
},{
xtype:'textfield',
fieldLabel: 'Link de Checkin',
name: 'checkin',
id: 'checkin'
},{
xtype:'htmleditor',
id:'precioIncluye',
name:'precioIncluye',
fieldLabel:'El Precio Incluye',
enableColors: false,
enableAlignments: false,
enableLinks :false,
enableLists :false,
enableSourceEdit:false,
enableFontSize :false,
enableFont :false,
defaultValue:'',
height:200
},{
xtype: 'fileuploadfield',
emptyText: 'Examinar',
fieldLabel: 'Icono Mapas',
name: 'mapsIcono'
} ]
} ]
}
],
listeners:{
render:function() {
if(idLinea>0){
formLinea.getForm().load({
method : 'GET',
url : 'lineasCargar.php',
params : { 'idLinea': idLinea},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winLinea = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Lineas',
width:800,
autoHeight:true,
closable: true,
plain: true,
items: [formLinea],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formLinea.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formLinea.getEl().mask();
formLinea.getForm().submit({
method:'POST',
waitTitle:'Crear Lineas',
params : { 'idLinea': idLinea},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winLinea
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formLinea.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winLinea.destroy();
}
}]
});
winLinea.show();
}function verLineasConexiones(idLinea, storeReturn) {
var formLinea = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'lineasGuardarConexiones.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'FibosUrl',
name : 'fibosUrl',
id : 'fibosUrl'
},{
xtype : 'textarea',
fieldLabel : 'Fibos Xml',
name : 'fibosXml',
id : 'fibosXml',
height : 160
}, {
xtype : 'textfield',
fieldLabel : 'FibosUrlTesting',
name : 'fibosUrlTesting',
id : 'fibosUrlTesting'
}, {
xtype : 'textarea',
fieldLabel : 'FibosXmlTesting',
name : 'fibosXmlTesting',
id : 'fibosXmlTesting',
height : 160
} ]
}, {
columnWidth : .5,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'PricingUrl',
name : 'pricingUrl',
id : 'pricingUrl'
}, {
xtype : 'textarea',
fieldLabel : 'PricingXml',
name : 'pricingXml',
id : 'pricingXml',
height : 160
}, {
xtype : 'textfield',
fieldLabel : 'MultiitinerariosUrl',
name : 'multiitinerariosUrl',
id : 'multiitinerariosUrl'
}, {
xtype : 'textarea',
fieldLabel : 'MultiitinerariosXml',
name : 'multiitinerariosXml',
id : 'multiitinerariosXml',
height : 160
} ]
} ]
} ],
listeners : {
render : function() {
if (idLinea > 0) {
formLinea.getEl().mask();
formLinea
.getForm()
.load(
{
method : 'GET',
url : 'lineasCargar.php',
params : {
'idLinea' : idLinea
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formLinea.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winLinea = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Lineas',
width : 800,
autoHeight : true,
closable : true,
plain : true,
items : [ formLinea ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formLinea.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formLinea.getEl().mask();
formLinea
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Lineas',
params : {
'idLinea' : idLinea
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winLinea
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formLinea.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winLinea.destroy();
}
} ]
});
winLinea.show();
}
var storeLineas = new Ext.data.JsonStore(
{
url : 'lineasCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'nombreCompleto',
mapping : 'nombreCompleto'
}, {
name : 'cruiseLine',
mapping : 'cruiseLine'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'logo',
mapping : 'logo'
}, {
name : 'logoIcono',
mapping : 'logoIcono'
}, {
name : 'mapsIcono',
mapping : 'mapsIcono'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ],
listeners : {
load : function() {
if (idLinea) {
}
}
}
});
storeLineas.load( {
params : {
start : 0,
limit : 20
}
});
var lineasGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Lineas...'
},
store : storeLineas,
columns : [
{
header : 'Nombre Completo',
width : 50,
sortable : true,
dataIndex : 'nombreCompleto'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}, {
header : 'Logo',
width : 50,
sortable : false,
dataIndex : 'logo'
}, {
header : 'Logo Icono',
width : 50,
sortable : false,
dataIndex : 'logoIcono'
}, {
header : 'Mapas Icono',
width : 40,
sortable : false,
dataIndex : 'mapsIcono'
}
],
tbar : [ {
id : 'nuevoLineas',
text : 'Agregar Linea',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verLineas('', storeLineas);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeLineas,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoLineas',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idLinea, 1, storeLineas,
'lineasCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoLineas',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idLinea, 0, storeLineas,
'lineasCambiarEstado.php');
}
}
}
lineasGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarLineas',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verLineas(idLinea, storeLineas);
}
},
{
id : 'eliminarLineas',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idLinea, storeLineas,
'lineasEliminar.php');
}
},{
id : 'conexionesLineas',
text : 'Conexiones',
iconCls : '',
scope : this,
handler : function() {
verLineasConexiones(idLinea, storeLineas);
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
lineasGrid.menu.destroy();
}
}
});
lineasGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verLineas(idLinea, storeLineas);
}
}
});
var idLinea;
var estado;
lineasGrid
.getSelectionModel()
.on(
'rowselect',
function(sm, rowIdx, r) {
idLinea = r.get("idLinea");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Lineas',
iconCls : 'tabLineas',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Lineas',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ lineasGrid ]
}
],
listeners : {
beforeshow : function() {
storeLineas.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verMonedas(idMoneda,storeReturn){
var formMoneda = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'monedasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 200,
items: [
{
xtype:'textfield',
fieldLabel: 'Nombre',
name: 'nombre',
id: 'nombre'
},{
xtype:'textfield',
fieldLabel: 'Simbolo',
name: 'simbolo',
id: 'simbolo'
},{
xtype:'textfield',
fieldLabel: 'Codigo',
name: 'codigo',
id: 'codigo'
},{
xtype:'textfield',
fieldLabel: 'Cambio',
name: 'cambio',
id: 'cambio'
}
],
listeners:{
render:function() {
if(idMoneda>0){
formMoneda.getEl().mask();
formMoneda.getForm().load({
method : 'GET',
url : 'monedasCargar.php',
params : { 'idMoneda': idMoneda},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formMoneda.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winMoneda = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Monedas',
width:200,
autoHeight:true,
closable: true,
plain: true,
items: [formMoneda],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formMoneda.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formMoneda.getEl().mask();
formMoneda.getForm().submit({
method:'POST',
waitTitle:'Crear Monedas',
params : { 'idMoneda': idMoneda},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winMoneda
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formMoneda.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winMoneda.destroy();
}
}]
});
winMoneda.show();
}
var storeMonedas = new Ext.data.JsonStore({
url: 'monedasCargarGrid.php',
remoteSort: true,
root: 'datos',
totalProperty: 'total',
fields: [
{name: 'idMoneda', mapping : 'idMoneda'},
{name: 'nombre', mapping : 'nombre'},
{name: 'codigo', mapping : 'codigo'},
{name: 'simbolo', mapping : 'simbolo'},
{name: 'cambio', mapping : 'cambio'},
{name: 'estado', mapping : 'estado',renderer:formatEstado}
]
});
storeMonedas.load({params: {start:0,limit:20}});
var monedasGrid = new Ext.grid.GridPanel({
viewConfig: {
forceFit: true
},
loadMask: {msg:'Cargando Monedas...'},
store: storeMonedas,
columns: [
{header: 'Nombre', width: 50,sortable: true, dataIndex: 'nombre'},
{header: 'Codigo', width: 50,sortable: true, dataIndex: 'codigo'},
{header: 'Simbolo', width: 50,sortable: true, dataIndex: 'simbolo'},
{header: 'Cambio', width: 50,sortable: true, dataIndex: 'cambio'},
{header: "Estado", width: 20, sortable: true, dataIndex: 'estado',renderer: formatEstado}
],
tbar: [{
id:'nuevoMonedas',
text: 'Agregar Moneda',
iconCls: 'icoNuevo',
scale: 'medium',
scope: this,
handler : function(){
verMonedas('',storeMonedas);
}
}],
sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
bbar: new Ext.PagingToolbar({
pageSize: 20,
store: storeMonedas,
displayInfo: true
}),
listeners:{
rowcontextmenu : function(ts,rI, e){
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if(estado==0){
var estadoBoton={
id:'estadoMonedas',
text: 'Activar',
iconCls: 'icoActivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idMoneda,1,storeMonedas,'monedasCambiarEstado.php');
}
}
}else{
var estadoBoton={
id:'estadoMonedas',
text: 'Desactivar',
iconCls: 'icoDesactivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idMoneda,0,storeMonedas,'monedasCambiarEstado.php');
}
}
}
monedasGrid.menu = new Ext.menu.Menu({
id:'feeds-ctx',
width:'200',
items: [{
id:'modificarMonedas',
text: 'Modificar',
iconCls: 'icoModificar',
scope: this,
handler : function(){
verMonedas(idMoneda,storeMonedas);
}
},{
id:'eliminarMonedas',
text: 'Eliminar',
iconCls: 'icoEliminar',
scope: this,
handler : function(){
eliminarRegistro(idMoneda,storeMonedas,'monedasEliminar.php');
}
},'-',estadoBoton],
listeners:{
hide:function() {
monedasGrid.menu.destroy();
}
}
});
monedasGrid.menu.showAt(e.getXY());
},
dblclick : function(e){
verMonedas(idMoneda,storeMonedas);
}
}
});
var idMoneda;
var estado;
monedasGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idMoneda=r.get("idMoneda");
estado=r.get("estado");
});
paneles.push(
new Ext.Panel({
title:'Monedas',
iconCls: 'tabMonedas',
cls: 'paneles',
layout:'border',
items:[{
region:'center',
title:'Lista de Monedas',
collapsible: true,
split:true,
width: 500,
minSize: 200,
maxSize: 1000,
layout:'fit',
margins:'0 2 0 0',
items:[monedasGrid]
}],
listeners : {
beforeshow : function() {
storeMonedas.load({params: {start:0,limit:20}});
}
}
})
);function verPaises(idPais,storeReturn){
var formPais = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'paisesGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 600,
items: [
{
xtype:'textfield',
fieldLabel: 'Nombre',
name: 'nombre',
id: 'nombre'
},{
xtype:'textfield',
fieldLabel: 'Code',
name: 'code',
id: 'code'
}
],
listeners:{
render:function() {
if(idPais>0){
formPais.getEl().mask();
formPais.getForm().load({
method : 'GET',
url : 'paisesCargar.php',
params : { 'idPais': idPais},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formPais.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winPais = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Paises',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [formPais],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formPais.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formPais.getEl().mask();
formPais.getForm().submit({
method:'POST',
waitTitle:'Crear Paises',
params : { 'idPais': idPais},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winPais
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formPais.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winPais.destroy();
}
}]
});
winPais.show();
}
var storePaises = new Ext.data.JsonStore({
url: 'paisesCargarGrid.php',
remoteSort: true,
root: 'datos',
totalProperty: 'total',
fields: [
{name: 'idPais', mapping : 'idPais'},
{name: 'nombre', mapping : 'nombre'},
{name: 'code', mapping : 'code'},
{name: 'estado', mapping : 'estado',renderer:formatEstado}
]
});
storePaises.load({params: {start:0,limit:20}});
var paisesGrid = new Ext.grid.GridPanel({
viewConfig: {
forceFit: true
},
loadMask: {msg:'Cargando Paises...'},
store: storePaises,
columns: [
{header: 'Nombre', width: 50,sortable: true, dataIndex: 'nombre'},
{header: 'Code', width: 50,sortable: true, dataIndex: 'code'},
{header: "Estado", width: 20, sortable: true, dataIndex: 'estado',renderer: formatEstado}
],
tbar: [{
id:'nuevoPaises',
text: 'Agregar Pais',
iconCls: 'icoNuevo',
scale: 'medium',
scope: this,
handler : function(){
verPaises('',storePaises);
}
}],
sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
bbar: new Ext.PagingToolbar({
pageSize: 20,
store: storePaises,
displayInfo: true
}),
listeners:{
rowcontextmenu : function(ts,rI, e){
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if(estado==0){
var estadoBoton={
id:'estadoPaises',
text: 'Activar',
iconCls: 'icoActivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idPais,1,storePaises,'paisesCambiarEstado.php');
}
}
}else{
var estadoBoton={
id:'estadoPaises',
text: 'Desactivar',
iconCls: 'icoDesactivar',
scope: this,
handler : function(){
cambiarEstadoRegistro(idPais,0,storePaises,'paisesCambiarEstado.php');
}
}
}
paisesGrid.menu = new Ext.menu.Menu({
id:'feeds-ctx',
width:'200',
items: [{
id:'modificarPaises',
text: 'Modificar',
iconCls: 'icoModificar',
scope: this,
handler : function(){
verPaises(idPais,storePaises);
}
},{
id:'eliminarPaises',
text: 'Eliminar',
iconCls: 'icoEliminar',
scope: this,
handler : function(){
eliminarRegistro(idPais,storePaises,'paisesEliminar.php');
}
},'-',estadoBoton],
listeners:{
hide:function() {
paisesGrid.menu.destroy();
}
}
});
paisesGrid.menu.showAt(e.getXY());
},
dblclick : function(e){
verPaises(idPais,storePaises);
}
}
});
var idPais;
var estado;
paisesGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idPais=r.get("idPais");
estado=r.get("estado");
});
paneles.push(
new Ext.Panel({
title:'Paises',
iconCls: 'tabPaises',
cls: 'paneles',
layout:'border',
items:[{
region:'center',
title:'Lista de Paises',
collapsible: true,
split:true,
width: 500,
minSize: 200,
maxSize: 1000,
layout:'fit',
margins:'0 2 0 0',
items:[paisesGrid]
}],
listeners : {
beforeshow : function() {
storePaises.load({params: {start:0,limit:20}});
}
}
})
);var storePricingfeed = new Ext.data.JsonStore( {
url : 'pricingfeedCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'periodo',
mapping : 'periodo'
}, {
name : 'cantidad',
mapping : 'cantidad'
}, {
name : 'GeoCode',
mapping : 'GeoCode'
}, {
name : 'fecha',
mapping : 'fecha'
}, {
name : 'fechaActualizacion',
mapping : 'fechaActualizacion'
}, {
name : 'itinerariosActualizacion',
mapping : 'itinerariosActualizacion'
} ]
});
var storeDestinoCombo = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestinoCombo.load( {
params : {}
});
var pricingfeedGrid = new Ext.grid.GridPanel(
{
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Pricingfeed...'
},
store : storePricingfeed,
columns : [
{
header : "Periodos",
width : 30,
sortable : true,
dataIndex : 'periodo'
}, {
header : "Cantidad de Cruceros",
width : 30,
sortable : true,
dataIndex : 'cantidad'
}, {
header : "Ultima Actualizacion",
width : 30,
sortable : true,
dataIndex : 'fechaActualizacion'
}, {
header : "Itinerarios",
width : 100,
sortable : true,
dataIndex : 'itinerariosActualizacion'
}
],
tbar : [
'Destino: ',
new Ext.form.ComboBox( {
fieldLabel : 'Destino',
id : 'idDestinoFiltro',
hiddenName : 'idDestino',
store : storeDestinoCombo,
valueField : 'idDestino',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}),
{
id : 'actualizarPricing',
text : 'Cargar',
iconCls : 'icoRecargar',
scale : 'medium',
scope : this,
handler : function() {
idDestino = Ext.getCmp('idDestinoFiltro')
.getValue();
storePricingfeed.load( {
params : {
idDestino : idDestino
}
});
}
},
{
id : 'actualizarPricingCompleto',
text : 'Actualizar PricingFeed del Destino Completo!',
iconCls : 'icoRecargar',
scale : 'medium',
scope : this,
handler : function() {
idDestino = Ext.getCmp('idDestinoFiltro')
.getValue();
if (idDestino) {
Ext.MessageBox
.show( {
title : 'Meta Cruises Server - Actualizar cruceros',
msg : 'Está seguro que desea Actualizar todos los Periodos de este Destino?',
width : 350,
fn : function(btn, text) {
if (btn == 'ok') {
p = 0;
actualizarPeriodos = 1;
siguientePeriodo(idDestino,
'',
storePricingfeed);
}
},
buttons : Ext.MessageBox.OKCANCEL,
icon : Ext.MessageBox.QUESTION,
animEl : 'mb3'
});
} else {
alert('Seleccionar destino!');
}
}
},
{
id : 'actualizaritinerarios',
text : 'Recarga Itinerarios Automaticos (off)',
iconCls : 'icoRecargar',
scale : 'medium',
scope : this,
handler : function(t) {
idDestino = Ext.getCmp('idDestinoFiltro')
.getValue();
if (idDestino) {
if (recargarAutomatico == "") {
t.setText('Recarga Itinerarios Automaticos (on!)');
recargarAutomatico = 1;
recargarStoreAutomatico(storePricingfeed);
} else {
t.setText('Recarga Itinerarios Automaticos (off)');
recargarAutomatico = "";
}
} else {
alert('Seleccionar destino!');
}
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
pricingfeedGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarPricingFeed',
text : 'Actualizar',
iconCls : 'icoActualizar',
scope : this,
handler : function() {
actualizarPeriodos = "";
pricingActualizarPeriodo(idDestino,
fecha, storePricingfeed);
}
},
{
id : 'eliminarPricingFeed',
text : 'Resetear',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
pricingResetearPeriodo(idDestino,
fecha, storePricingfeed);
}
} ],
listeners : {
hide : function() {
pricingfeedGrid.menu.destroy();
}
}
});
pricingfeedGrid.menu.showAt(e.getXY());
}
}
});
var fecha;
var GeoCode;
pricingfeedGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
fecha = r.get("fecha");
GeoCode = r.get("GeoCode");
});
paneles.push(new Ext.Panel( {
title : 'Pricingfeed',
iconCls : 'tabpricingfeed',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de pricingfeed',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ pricingfeedGrid ]
} ],
listeners : {
beforeshow : function() {
storeDestinoCombo.load( {
params : {}
});
}
}
}));function verPromoslogos(idPromoLogo,storeReturn){
var formPromologo = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'promoslogosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 600,
items: [
{
xtype:'textfield',
fieldLabel: 'PromoId',
name: 'promoId',
id: 'promoId'
},{
xtype:'textfield',
fieldLabel: 'Descripcion',
name: 'descripcion',
id: 'descripcion'
},{
xtype: 'fileuploadfield',
emptyText: 'Examinar',
fieldLabel: 'Logo',
name: 'logo'
}
],
listeners:{
render:function() {
if(idPromoLogo>0){
formPromologo.getEl().mask();
formPromologo.getForm().load({
method : 'GET',
url : 'promoslogosCargar.php',
params : { 'idPromoLogo': idPromoLogo},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formPromologo.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winPromologo = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Promoslogos',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [formPromologo],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formPromologo.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formPromologo.getEl().mask();
formPromologo.getForm().submit({
method:'POST',
waitTitle:'Crear Promoslogos',
params : { 'idPromoLogo': idPromoLogo},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winPromologo
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formPromologo.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winPromologo.destroy();
}
}]
});
winPromologo.show();
}
var storePromoslogos = new Ext.data.JsonStore( {
url : 'promoslogosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPromoLogo',
mapping : 'idPromoLogo'
}, {
name : 'promoId',
mapping : 'promoId'
}, {
name : 'logo',
mapping : 'logo'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storePromoslogos.load( {
params : {
start : 0,
limit : 20
}
});
var promoslogosGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Promoslogos...'
},
store : storePromoslogos,
columns : [
{
header : 'PromoId',
width : 30,
sortable : true,
dataIndex : 'promoId'
}, {
header : 'Logo',
width : 30,
sortable : true,
dataIndex : 'logo'
}, {
header : 'Descripcion',
width : 150,
sortable : true,
dataIndex : 'descripcion'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoPromoslogos',
text : 'Agregar Promologo',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verPromoslogos('', storePromoslogos);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storePromoslogos,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoPromoslogos',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPromoLogo, 1, storePromoslogos,
'promoslogosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoPromoslogos',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPromoLogo, 0, storePromoslogos,
'promoslogosCambiarEstado.php');
}
}
}
promoslogosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarPromoslogos',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verPromoslogos(idPromoLogo, storePromoslogos);
}
},
{
id : 'eliminarPromoslogos',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idPromoLogo, storePromoslogos,
'promoslogosEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
promoslogosGrid.menu.destroy();
}
}
});
promoslogosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verPromoslogos(idPromoLogo, storePromoslogos);
}
}
});
var idPromoLogo;
var estado;
promoslogosGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idPromoLogo = r.get("idPromoLogo");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Promoslogos',
iconCls : 'tabPromoslogos',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Promoslogos',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ promoslogosGrid ]
} ],
listeners : {
beforeshow : function() {
storePromoslogos.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verPuertos(idPuerto, storeReturn) {
var storeDestino = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestino.load( {
params : {}
});
var storePais = new Ext.data.JsonStore( {
url : 'paisesCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPais',
mapping : 'idPais'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storePais.load( {
params : {}
});
var formPuerto = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'puertosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 800,
items : [ {
layout : 'column',
items : [ {
columnWidth : .3,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombre',
id : 'nombre'
},{
xtype : 'textfield',
fieldLabel : 'Code',
name : 'code',
id : 'code'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 1',
name : 'nombreAlternativo1',
id : 'nombreAlternativo1'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 2',
name : 'nombreAlternativo2',
id : 'nombreAlternativo2'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 3',
name : 'nombreAlternativo3',
id : 'nombreAlternativo3'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 4',
name : 'nombreAlternativo4',
id : 'nombreAlternativo4'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 5',
name : 'nombreAlternativo5',
id : 'nombreAlternativo5'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 6',
name : 'nombreAlternativo6',
id : 'nombreAlternativo6'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 7',
name : 'nombreAlternativo7',
id : 'nombreAlternativo7'
} ]
}, {
columnWidth : .3,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 8',
name : 'nombreAlternativo8',
id : 'nombreAlternativo8'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 9',
name : 'nombreAlternativo9',
id : 'nombreAlternativo9'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 10',
name : 'nombreAlternativo10',
id : 'nombreAlternativo10'
},{
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 11',
name : 'nombreAlternativo11',
id : 'nombreAlternativo11'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 12',
name : 'nombreAlternativo12',
id : 'nombreAlternativo12'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 13',
name : 'nombreAlternativo13',
id : 'nombreAlternativo13'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 14',
name : 'nombreAlternativo14',
id : 'nombreAlternativo14'
}, {
xtype : 'textfield',
fieldLabel : 'Nombre Alternativo 15',
name : 'nombreAlternativo15',
id : 'nombreAlternativo15'
} ]
}, {
columnWidth : .4,
layout : 'form',
defaults : {
anchor : '95%'
},
items : [ new Ext.form.ComboBox( {
fieldLabel : 'Pais',
hiddenName : 'idPais',
store : storePais,
valueField : 'idPais',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}), {
xtype : 'textfield',
fieldLabel : 'LatLng',
name : 'latLng',
id : 'latLng'
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Imagen',
name : 'imagen'
}, {
xtype : 'htmleditor',
id : 'descripcion',
fieldLabel : 'Descripción',
enableColors : false,
enableAlignments : false,
enableLinks : false,
enableLists : false,
enableSourceEdit : false,
enableFontSize : false,
enableFont : false,
defaultValue : '',
height : 200
} ]
} ]
} ],
listeners : {
render : function() {
if (idPuerto > 0) {
formPuerto.getEl().mask();
formPuerto
.getForm()
.load(
{
method : 'GET',
url : 'puertosCargar.php',
params : {
'idPuerto' : idPuerto
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formPuerto.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winPuerto = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Puertos',
width : 800,
autoHeight : true,
closable : true,
plain : true,
items : [ formPuerto ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formPuerto.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formPuerto.getEl().mask();
formPuerto
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Puertos',
params : {
'idPuerto' : idPuerto
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winPuerto
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formPuerto
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winPuerto.destroy();
}
} ]
});
winPuerto.show();
}var storePuertos = new Ext.data.JsonStore( {
url : 'puertosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'idPais',
mapping : 'idPais'
}, {
name : 'code',
mapping : 'code'
}, {
name : 'nombre',
mapping : 'nombre'
}, {
name : 'descripcion',
mapping : 'descripcion'
}, {
name : 'latLng',
mapping : 'latLng'
}, {
name : 'imagen',
mapping : 'imagen'
}, {
name : 'destinos',
mapping : 'destinos'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storePuertos.load( {
params : {
start : 0,
limit : 20,
limpiar : 1
}
});
var storePaisCombo = new Ext.data.JsonStore( {
url : 'paisesCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPais',
mapping : 'idPais'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storePaisCombo.load( {
params : {}
});
var puertosGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Puertos...'
},
store : storePuertos,
columns : [ {
header : 'Nombre',
width : 60,
sortable : true,
dataIndex : 'nombre'
}, {
header : 'Pais',
width : 40,
sortable : true,
dataIndex : 'idPais'
}, {
header : 'Code',
width : 20,
sortable : true,
dataIndex : 'code'
}, {
header : 'LatLng',
width : 30,
sortable : true,
dataIndex : 'latLng'
}, {
header : 'Destinos',
width : 40,
sortable : false,
dataIndex : 'destinos'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}, {
header : 'Imagen',
width : 50,
sortable : false,
dataIndex : 'imagen'
}
],
tbar : [ {
id : 'nuevoPuertos',
text : 'Agregar Puerto',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verPuertos('', storePuertos);
}
}, '-', 'Pais: ', new Ext.form.ComboBox( {
fieldLabel : 'Pais',
id : 'idPaisFiltroPuertos',
hiddenName : 'idPais',
store : storePaisCombo,
valueField : 'idPais',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
width: 130,
selectOnFocus : true
}), ' Nombre', {
xtype : 'textfield',
fieldLabel : 'Nombre',
name : 'nombreFiltroPuertos',
id : 'nombreFiltroPuertos'
}, {
text : 'Filtrar',
iconCls : 'icoRecargar',
scale : 'medium',
scope : this,
handler : function(t) {
idPais = Ext.getCmp('idPaisFiltroPuertos').getValue();
nombre = Ext.getCmp('nombreFiltroPuertos').getValue();
storePuertos.load( {
params : {
start : 0,
limit : 20,
idPais : idPais,
nombre : nombre
}
});
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storePuertos,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoPuertos',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPuerto, 1, storePuertos,
'puertosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoPuertos',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPuerto, 0, storePuertos,
'puertosCambiarEstado.php');
}
}
}
puertosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarPuertos',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verPuertos(idPuerto, storePuertos);
}
},
{
id : 'eliminarPuertos',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idPuerto, storePuertos,
'puertosEliminar.php');
}
}, '-', {
id : 'galeriaPuertosImagens',
text : 'Galeria Imagenes',
iconCls : 'icoGaleria',
scope : this,
handler : function() {
verPuertosimagenesGrid(idPuerto);
}
}, '-', {
id : 'relDestinosPuertos',
text : 'Listado Destinos',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verReldestinospuertosGrid(idPuerto);
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
puertosGrid.menu.destroy();
}
}
});
puertosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verPuertos(idPuerto, storePuertos);
}
}
});
var idPuerto;
var estado;
puertosGrid
.getSelectionModel()
.on(
'rowselect',
function(sm, rowIdx, r) {
idPuerto = r.get("idPuerto");
estado = r.get("estado");
window.frames['previewPuerto'].location.href = '../googlemapsGuardarPunto.php?pv=true&idPuerto=' + idPuerto;
});
var centerPanelPreview = {
id : 'previewPuerto',
xtype : 'panel',
tbar : [ {
id : 'recargarPuertos',
text : 'Recargar',
scale : 'medium',
iconCls : 'icoRecargar',
scope : this,
handler : function() {
window.frames['previewPuerto'].location.href = '../googlemapsGuardarPunto.php?pv=true&idPuerto=' + idPuerto;
}
} ],
html : '',
bodyStyle : {
background : '#ffffff',
color : '#000000'
}
};
paneles.push(new Ext.Panel( {
title : 'Puertos',
iconCls : 'tabPuertos',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Puertos',
collapsible : false,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ puertosGrid ]
}, {
region : 'east',
title : 'Mapa',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ centerPanelPreview ]
} ],
listeners : {
beforeshow : function() {
storePuertos.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verPuertosimagenes(idPuertoImagen,storeReturn,idPuerto){
var storePuerto = new Ext.data.JsonStore({
url: 'puertosCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idPuerto', mapping : 'idPuerto'},
{name: 'nombre', mapping : 'nombre'}]
});
storePuerto.load({params: {}});
var storephoto_ = new Ext.data.JsonStore({
url: 'photo_sCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'photo_id', mapping : 'photo_id'},
{name: 'nombre', mapping : 'nombre'}]
});
storephoto_.load({params: {}});
var storeplace_ = new Ext.data.JsonStore({
url: 'place_sCargarGrid.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'place_id', mapping : 'place_id'},
{name: 'nombre', mapping : 'nombre'}]
});
storeplace_.load({params: {}});
var formPuertoimagen = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'puertosimagenesGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 900,
items: [
{
layout:'column',
items:[{
columnWidth:.50,
layout: 'form',
defaults: {anchor: '95%'},
items: [
new Ext.form.ComboBox({
fieldLabel: 'Puerto',
hiddenName:'idPuerto',
store: storePuerto,
valueField:'idPuerto',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}),{
xtype:'textfield',
fieldLabel: 'Width',
name: 'width',
id: 'width'
},{
xtype:'textfield',
fieldLabel: 'Latitude',
name: 'latitude',
id: 'latitude'
},{
xtype:'textfield',
fieldLabel: 'Photo_title',
name: 'photo_title',
id: 'photo_title'
},
new Ext.form.ComboBox({
fieldLabel: 'place_',
hiddenName:'place_id',
store: storeplace_,
valueField:'place_id',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}),{
xtype: 'datefield',
format:'d/m/Y',
fieldLabel: 'FechaAlta',
name: 'fechaAlta',
id: 'fechaAlta'
}]
},{
columnWidth:.50,
layout: 'form',
defaults: {anchor: '95%'},
items: [{
xtype: 'fileuploadfield',
emptyText: 'Examinar',
fieldLabel: 'Imagen',
name: 'imagen'
},{
xtype:'textfield',
fieldLabel: 'Height',
name: 'height',
id: 'height'
},{
xtype:'textfield',
fieldLabel: 'Longitude',
name: 'longitude',
id: 'longitude'
},
new Ext.form.ComboBox({
fieldLabel: 'photo_',
hiddenName:'photo_id',
store: storephoto_,
valueField:'photo_id',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}),{
xtype: 'datefield',
format:'d/m/Y',
fieldLabel: 'Upload_date',
name: 'upload_date',
id: 'upload_date'
}]
}]
}
],
listeners:{
render:function() {
if(idPuertoImagen>0){
formPuertoimagen.getEl().mask();
formPuertoimagen.getForm().load({
method : 'GET',
url : 'puertosimagenesCargar.php',
params : { 'idPuertoImagen': idPuertoImagen},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formPuertoimagen.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winPuertoimagen = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Puertosimagenes',
width:900,
autoHeight:true,
closable: true,
plain: true,
items: [formPuertoimagen],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formPuertoimagen.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formPuertoimagen.getEl().mask();
formPuertoimagen.getForm().submit({
method:'POST',
waitTitle:'Crear Puertosimagenes',
params : { 'idPuertoImagen': idPuertoImagen,'idPuerto':idPuerto},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winPuertoimagen
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formPuertoimagen.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winPuertoimagen.destroy();
}
}]
});
winPuertoimagen.show();
}function verPuertosimagenesGrid(idPuerto) {
var storePuertosimagenes = new Ext.data.JsonStore( {
url : 'puertosimagenesCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idPuertoImagen',
mapping : 'idPuertoImagen'
}, {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'imagen',
mapping : 'imagen'
}, {
name : 'width',
mapping : 'width'
}, {
name : 'height',
mapping : 'height'
}, {
name : 'latitude',
mapping : 'latitude'
}, {
name : 'longitude',
mapping : 'longitude'
}, {
name : 'photo_title',
mapping : 'photo_title'
}, {
name : 'photo_id',
mapping : 'photo_id'
}, {
name : 'place_id',
mapping : 'place_id'
}, {
name : 'upload_date',
mapping : 'upload_date'
}, {
name : 'fechaAlta',
mapping : 'fechaAlta'
}, {
name : 'estado',
mapping : 'estado'
} ],
listeners : {
load : function() {
}
}
});
storePuertosimagenes.load( {
params : {
start : 0,
limit : 20,
idPuerto : idPuerto
}
});
var puertosimagenesGrid = new Ext.grid.GridPanel( {
height : 680,
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Puertosimagenes...'
},
store : storePuertosimagenes,
columns : [
{
header : 'Imagen',
width : 600,
sortable : true,
dataIndex : 'imagen'
}, {
header : "Estado",
width : 40,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoPuertosimagenes',
text : 'Agregar Puertoimagen',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verPuertosimagenes('', storePuertosimagenes, idPuerto);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storePuertosimagenes,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoPuertosimagenes',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPuertoImagen, 1,
storePuertosimagenes,
'puertosimagenesCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoPuertosimagenes',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idPuertoImagen, 0,
storePuertosimagenes,
'puertosimagenesCambiarEstado.php');
}
}
}
puertosimagenesGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarPuertosimagenes',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verPuertosimagenes(idPuertoImagen,
storePuertosimagenes, idPuerto);
}
},
{
id : 'eliminarPuertosimagenes',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idPuertoImagen,
storePuertosimagenes,
'puertosimagenesEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
puertosimagenesGrid.menu.destroy();
}
}
});
puertosimagenesGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
// verPuertosimagenes(idPuertoImagen,storePuertosimagenes,idPuerto);
cambiarEstado(idPuertoImagen, 0, storePuertosimagenes,
'puertosimagenesCambiarEstado.php');
}
}
});
var idPuertoImagen;
var estado;
puertosimagenesGrid.getSelectionModel().on('rowselect',
function(sm, rowIdx, r) {
idPuertoImagen = r.get("idPuertoImagen");
estado = r.get("estado");
});
var panelPuertosimagenes = new Ext.Window( {
buttonAlign : 'center',
modal : true,
title : 'Puertos imagenes',
width : 1000,
autoHeight : true,
closable : true,
maximizable:true,
plain : true,
items : [ puertosimagenesGrid],
// All the magic happens after the user clicks the button
buttons : [ {
text : 'Cerrar',
handler : function() {
panelPuertosimagenes.destroy();
}
} ]
});
panelPuertosimagenes.show();
};function verRelagenciaslineas(idRelAgenciaLinea, storeReturn, idAgencia) {
var storeLinea = new Ext.data.JsonStore( {
url : 'lineasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLinea.load( {
params : {idAgencia:idAgencia}
});
var formRelagenciaslinea = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'relagenciaslineasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [
new Ext.form.ComboBox( {
fieldLabel : 'Linea',
hiddenName : 'idLinea',
store : storeLinea,
valueField : 'idLinea',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}) ],
listeners : {
render : function() {
if (idRelAgenciaLinea > 0) {
formRelagenciaslinea.getEl().mask();
formRelagenciaslinea
.getForm()
.load(
{
method : 'GET',
url : 'relagenciaslineasCargar.php',
params : {
'idRelAgenciaLinea' : idRelAgenciaLinea
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formRelagenciaslinea
.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winRelagenciaslinea = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Linea Habilitada',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formRelagenciaslinea ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formRelagenciaslinea.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formRelagenciaslinea.getEl().mask();
formRelagenciaslinea
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Linea Habilitada',
params : {
'idRelAgenciaLinea' : idRelAgenciaLinea,
'idAgencia' : idAgencia
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winRelagenciaslinea
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formRelagenciaslinea
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winRelagenciaslinea.destroy();
}
} ]
});
winRelagenciaslinea.show();
}function verRelagenciaslineasDatos(idRelAgenciaLinea, storeReturn, idAgencia) {
var storeLinea = new Ext.data.JsonStore( {
url : 'lineasCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeLinea.load( {
params : {}
});
var formRelagenciaslinea = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'relagenciaslineasGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [ {
xtype : 'radiogroup',
fieldLabel : 'Seleccione el tipo de TipoConexion',
name : 'tipoConexion',
id : 'tipoConexion',
value : 0,
items : [ {
boxLabel : 'Sin Conexion',
name : 'tipoConexion',
inputValue : 0,
autoWidth : true
}, {
boxLabel : 'Testing',
name : 'tipoConexion',
inputValue : 1,
autoWidth : true
}, {
boxLabel : 'Links Propios',
name : 'tipoConexion',
inputValue : 2,
autoWidth : true
}, {
boxLabel : 'Produccion',
name : 'tipoConexion',
inputValue : 3,
autoWidth : true
} ]
}, {
xtype : 'textfield',
fieldLabel : 'Fibos Url (Links Propios)',
name : 'fibosUrl',
id : 'fibosUrl'
}, {
xtype : 'textarea',
fieldLabel : 'Fibos Xml (Links Propios)',
name : 'fibosXml',
id : 'fibosXml',
height : 160
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Términos y Condiciones',
name : 'tycPasajeros'
}, {
xtype : 'fileuploadfield',
emptyText : 'Examinar',
fieldLabel : 'Términos y Condiciones de Agencias',
name : 'tycAgencias'
} ],
listeners : {
render : function() {
if (idRelAgenciaLinea > 0) {
formRelagenciaslinea.getEl().mask();
formRelagenciaslinea
.getForm()
.load(
{
method : 'GET',
url : 'relagenciaslineasCargar.php',
params : {
'idRelAgenciaLinea' : idRelAgenciaLinea
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var tipoConexionRadio = Ext
.getCmp('tipoConexion');
tipoConexionRadio.items
.each(function(item) {
if (item.inputValue == obj.data.tipoConexion) {
item
.setValue(true);
}
});
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formRelagenciaslinea
.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winRelagenciaslinea = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Linea Habilitada Datos de Conexion y TyC',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formRelagenciaslinea ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formRelagenciaslinea.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formRelagenciaslinea.getEl().mask();
formRelagenciaslinea
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Relagenciaslineas',
params : {
'idRelAgenciaLinea' : idRelAgenciaLinea,
'idAgencia' : idAgencia,
'datos' : 1
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winRelagenciaslinea
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formRelagenciaslinea
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winRelagenciaslinea.destroy();
}
} ]
});
winRelagenciaslinea.show();
}function verRelagenciaslineasGrid(idAgencia) {
var storeRelagenciaslineas = new Ext.data.JsonStore( {
url : 'relagenciaslineasCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idRelAgenciaLinea',
mapping : 'idRelAgenciaLinea'
}, {
name : 'idAgencia',
mapping : 'idAgencia'
}, {
name : 'idLinea',
mapping : 'idLinea'
}, {
name : 'tipoConexion',
mapping : 'tipoConexion'
} ]
});
storeRelagenciaslineas.load( {
params : {
idAgencia : idAgencia
}
});
var relagenciaslineasGrid = new Ext.grid.GridPanel( {
height:430,
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Lineas Habilitadas...'
},
store : storeRelagenciaslineas,
columns : [
{
header : 'Linea',
width : 50,
sortable : true,
dataIndex : 'idLinea'
},{
header : 'Tipo Conexion',
width : 50,
sortable : true,
dataIndex : 'tipoConexion'
}
],
tbar : [ {
id : 'nuevoRelagenciaslineas',
text : 'Agregar Linea',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verRelagenciaslineas('', storeRelagenciaslineas, idAgencia);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
relagenciaslineasGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarRelagenciaslineas',
text : 'Datos Conexion y TyC',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verRelagenciaslineasDatos(idRelAgenciaLinea,
storeRelagenciaslineas, idAgencia);
}
},
{
id : 'eliminarRelagenciaslineas',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idRelAgenciaLinea,
storeRelagenciaslineas,
'relagenciaslineasEliminar.php');
}
} ],
listeners : {
hide : function() {
relagenciaslineasGrid.menu.destroy();
}
}
});
relagenciaslineasGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verRelagenciaslineasDatos(idRelAgenciaLinea, storeRelagenciaslineas,
idAgencia);
}
}
});
var idRelAgenciaLinea;
var estado;
relagenciaslineasGrid.getSelectionModel().on('rowselect',
function(sm, rowIdx, r) {
idRelAgenciaLinea = r.get("idRelAgenciaLinea");
estado = r.get("estado");
});
var panelRelagenciaslineas = new Ext.Window( {
buttonAlign : 'center',
modal : true,
title : 'Lineas Habilitadas',
width : 600,
height : 500,
closable : true,
plain : true,
items : [ relagenciaslineasGrid ],
// All the magic happens after the user clicks the button
buttons : [ {
text : 'Cerrar',
handler : function() {
panelRelagenciaslineas.destroy();
}
} ]
});
panelRelagenciaslineas.show();
};function verRelcatdeck(idRel,storeReturn){
var storeCategoria = new Ext.data.JsonStore({
url: 'categoriasCargarGridCombo.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idCategoria', mapping : 'idCategoria'},
{name: 'nombre', mapping : 'nombre'}]
});
storeCategoria.load({params: {}});
var storeDeck = new Ext.data.JsonStore({
url: 'decksCargarGridCombo.php',
root: 'datos',
totalProperty: 'total',
fields: [{name: 'idDeck', mapping : 'idDeck'},
{name: 'nombre', mapping : 'nombre'}]
});
storeDeck.load({params: {}});
var formRelcatdec = new Ext.FormPanel({
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame:true,
url:'relcatdeckGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor:'94%'
},
width: 600,
items: [
new Ext.form.ComboBox({
fieldLabel: 'Categoria',
hiddenName:'idCategoria',
store: storeCategoria,
valueField:'idCategoria',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
}),
new Ext.form.ComboBox({
fieldLabel: 'Deck',
hiddenName:'idDeck',
store: storeDeck,
valueField:'idDeck',
displayField:'nombre',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
emptyText:'Seleccione...',
selectOnFocus:true
})
],
listeners:{
render:function() {
if(idRel>0){
formRelcatdec.getEl().mask();
formRelcatdec.getForm().load({
method : 'GET',
url : 'relcatdeckCargar.php',
params : { 'idRel': idRel},
success :function(form, action) {
obj = Ext.util.JSON.decode(action.response.responseText);
var sb = Ext.getCmp('form-statusbar');
sb.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formRelcatdec.getEl().unmask();
},
failure:function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winRelcatdec = new Ext.Window({
modal:true,
title:'Meta Cruises Server - Relcatdeck',
width:600,
autoHeight:true,
closable: true,
plain: true,
items: [formRelcatdec],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons:[{
text:'Guardar',
scale: 'medium',
iconCls:'icoGuardar',
formBind: true,
// Function that fires when user clicks the button
handler:function(){
if ( formRelcatdec.form.isValid() ) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formRelcatdec.getEl().mask();
formRelcatdec.getForm().submit({
method:'POST',
waitTitle:'Crear Relcatdeck',
params : { 'idRel': idRel},
success:function(form, action){
if(storeReturn){
storeReturn.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winRelcatdec
.destroy();
}, 1600);
},
failure:function(form, action){
Ext.Msg.alert('Error de Conexión!', 'Por favor, intente nuevamente en unos instantes.');
formRelcatdec.getForm().reset();
}
});
}
}
},{
text:'Cancelar',
scale: 'medium',
iconCls:'icoGuardarCancelar',
handler:function(){
winRelcatdec.destroy();
}
}]
});
winRelcatdec.show();
}var storeRelcatdeck = new Ext.data.JsonStore( {
url : 'relcatdeckCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idRel',
mapping : 'idRel'
}, {
name : 'idCategoria',
mapping : 'idCategoria'
}, {
name : 'idDeck',
mapping : 'idDeck'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeRelcatdeck.load( {
params : {
start : 0,
limit : 20
}
});
var relcatdeckGrid = new Ext.grid.GridPanel( {
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Relcatdeck...'
},
store : storeRelcatdeck,
columns : [
{
header : 'Categoria',
width : 50,
sortable : true,
dataIndex : 'idCategoria'
}, {
header : 'Deck',
width : 50,
sortable : true,
dataIndex : 'idDeck'
}, {
header : "Estado",
width : 20,
sortable : true,
dataIndex : 'estado',
renderer : formatEstado
}
],
tbar : [ {
id : 'nuevoRelcatdeck',
text : 'Agregar Relcatdec',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verRelcatdeck('', storeRelcatdeck);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeRelcatdeck,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoRelcatdeck',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idRel, 1, storeRelcatdeck,
'relcatdeckCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoRelcatdeck',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idRel, 0, storeRelcatdeck,
'relcatdeckCambiarEstado.php');
}
}
}
relcatdeckGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarRelcatdeck',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verRelcatdeck(idRel, storeRelcatdeck);
}
},
{
id : 'eliminarRelcatdeck',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idRel, storeRelcatdeck,
'relcatdeckEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
relcatdeckGrid.menu.destroy();
}
}
});
relcatdeckGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verRelcatdeck(idRel, storeRelcatdeck);
}
}
});
var idRel;
var estado;
relcatdeckGrid.getSelectionModel().on('rowselect', function(sm, rowIdx, r) {
idRel = r.get("idRel");
estado = r.get("estado");
});
paneles.push(new Ext.Panel( {
title : 'Relacion Cat/Deck',
iconCls : 'tabRelcatdeck',
cls : 'paneles',
layout : 'border',
items : [ {
region : 'center',
title : 'Lista de Relcatdeck',
collapsible : true,
split : true,
width : 500,
minSize : 200,
maxSize : 1000,
layout : 'fit',
margins : '0 2 0 0',
items : [ relcatdeckGrid ]
} ],
listeners : {
beforeshow : function() {
storeRelcatdeck.load( {
params : {
start : 0,
limit : 20
}
});
}
}
}));function verReldestinospuertos(idRelDestinoPuerto, storeReturn, idPuerto) {
var storeDestino = new Ext.data.JsonStore( {
url : 'destinosCargarGrid.php',
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'nombre',
mapping : 'nombre'
} ]
});
storeDestino.load( {
params : {}
});
var formReldestinospuerto = new Ext.FormPanel(
{
id : 'status-form',
labelAlign : 'top',
bodyStyle : 'padding:5px',
fileUpload : true,
border : false,
frame : true,
url : 'reldestinospuertosGuardar.php',
defaults : {
selectOnFocus : true,
msgTarget : 'side',
anchor : '94%'
},
width : 600,
items : [
new Ext.form.ComboBox( {
fieldLabel : 'Destino',
hiddenName : 'idDestino',
store : storeDestino,
valueField : 'idDestino',
displayField : 'nombre',
typeAhead : true,
mode : 'local',
triggerAction : 'all',
emptyText : 'Seleccione...',
selectOnFocus : true
}) ],
listeners : {
render : function() {
if (idRelDestinoPuerto > 0) {
formReldestinospuerto.getEl().mask();
formReldestinospuerto
.getForm()
.load(
{
method : 'GET',
url : 'reldestinospuertosCargar.php',
params : {
'idRelDestinoPuerto' : idRelDestinoPuerto
},
success : function(form, action) {
obj = Ext.util.JSON
.decode(action.response.responseText);
var sb = Ext
.getCmp('form-statusbar');
sb
.setStatus( {
text : 'Cargado!',
iconCls : 'x-status-valid'
});
formReldestinospuerto
.getEl().unmask();
},
failure : function(form, action) {
alert('Failure: ' + action.failureType);
}
});
}
}
}
});
// This just creates a window to wrap the login form.
// The login object is passed to the items collection.
var winReldestinospuerto = new Ext.Window(
{
modal : true,
title : 'Meta Cruises Server - Destinos del Puerto',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ formReldestinospuerto ],
bbar : new Ext.ux.StatusBar( {
id : 'form-statusbar',
defaultText : 'Listo!',
plugins : new Ext.ux.ValidationStatus( {
form : 'status-form'
})
}),
buttons : [
{
text : 'Guardar',
scale : 'medium',
iconCls : 'icoGuardar',
formBind : true,
// Function that fires when user clicks the button
handler : function() {
if (formReldestinospuerto.form.isValid()) {
var sb = Ext.getCmp('form-statusbar');
sb.showBusy('Guardando...');
formReldestinospuerto.getEl().mask();
formReldestinospuerto
.getForm()
.submit(
{
method : 'POST',
waitTitle : 'Crear Destinos del Puerto',
params : {
'idRelDestinoPuerto' : idRelDestinoPuerto,
'idPuerto' : idPuerto
},
success : function(
form, action) {
if (storeReturn) {
storeReturn
.reload();
}
sb
.setStatus( {
text : 'Los datos han sido Guardado!',
iconCls : 'x-status-valid'
});
setTimeout(
function() {
winReldestinospuerto
.destroy();
}, 1600);
},
failure : function(
form, action) {
Ext.Msg
.alert(
'Error de Conexión!',
'Por favor, intente nuevamente en unos instantes.');
formReldestinospuerto
.getForm()
.reset();
}
});
}
}
}, {
text : 'Cancelar',
scale : 'medium',
iconCls : 'icoGuardarCancelar',
handler : function() {
winReldestinospuerto.destroy();
}
} ]
});
winReldestinospuerto.show();
}function verReldestinospuertosGrid(idPuerto) {
var storeReldestinospuertos = new Ext.data.JsonStore( {
url : 'reldestinospuertosCargarGrid.php',
remoteSort : true,
root : 'datos',
totalProperty : 'total',
fields : [ {
name : 'idRelDestinoPuerto',
mapping : 'idRelDestinoPuerto'
}, {
name : 'idDestino',
mapping : 'idDestino'
}, {
name : 'idPuerto',
mapping : 'idPuerto'
}, {
name : 'estado',
mapping : 'estado',
renderer : formatEstado
} ]
});
storeReldestinospuertos.load( {
params : {
start : 0,
limit : 20,
idPuerto : idPuerto
}
});
var reldestinospuertosGrid = new Ext.grid.GridPanel( {
autoHeight : true,
viewConfig : {
forceFit : true
},
loadMask : {
msg : 'Cargando Destinos...'
},
store : storeReldestinospuertos,
columns : [
{
header : 'Destino',
width : 50,
sortable : true,
dataIndex : 'idDestino'
}
],
tbar : [ {
id : 'nuevoReldestinospuertos',
text : 'Agregar Destino',
iconCls : 'icoNuevo',
scale : 'medium',
scope : this,
handler : function() {
verReldestinospuertos('', storeReldestinospuertos, idPuerto);
}
} ],
sm : new Ext.grid.RowSelectionModel( {
singleSelect : true
}),
bbar : new Ext.PagingToolbar( {
pageSize : 20,
store : storeReldestinospuertos,
displayInfo : true
}),
listeners : {
rowcontextmenu : function(ts, rI, e) {
ts.getSelectionModel().selectRow(rI);
e.stopEvent();
if (estado == 0) {
var estadoBoton = {
id : 'estadoReldestinospuertos',
text : 'Activar',
iconCls : 'icoActivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idRelDestinoPuerto, 1,
storeReldestinospuertos,
'reldestinospuertosCambiarEstado.php');
}
}
} else {
var estadoBoton = {
id : 'estadoReldestinospuertos',
text : 'Desactivar',
iconCls : 'icoDesactivar',
scope : this,
handler : function() {
cambiarEstadoRegistro(idRelDestinoPuerto, 0,
storeReldestinospuertos,
'reldestinospuertosCambiarEstado.php');
}
}
}
reldestinospuertosGrid.menu = new Ext.menu.Menu( {
id : 'feeds-ctx',
width : '200',
items : [
{
id : 'modificarReldestinospuertos',
text : 'Modificar',
iconCls : 'icoModificar',
scope : this,
handler : function() {
verReldestinospuertos(idRelDestinoPuerto,
storeReldestinospuertos, idPuerto);
}
},
{
id : 'eliminarReldestinospuertos',
text : 'Eliminar',
iconCls : 'icoEliminar',
scope : this,
handler : function() {
eliminarRegistro(idRelDestinoPuerto,
storeReldestinospuertos,
'reldestinospuertosEliminar.php');
}
}, '-', estadoBoton ],
listeners : {
hide : function() {
reldestinospuertosGrid.menu.destroy();
}
}
});
reldestinospuertosGrid.menu.showAt(e.getXY());
},
dblclick : function(e) {
verReldestinospuertos(idRelDestinoPuerto,
storeReldestinospuertos, idPuerto);
}
}
});
var idRelDestinoPuerto;
var estado;
reldestinospuertosGrid.getSelectionModel().on('rowselect',
function(sm, rowIdx, r) {
idRelDestinoPuerto = r.get("idRelDestinoPuerto");
estado = r.get("estado");
});
var panelReldestinospuertos = new Ext.Window( {
buttonAlign : 'center',
modal : true,
title : 'Destinos del Puerto',
width : 600,
autoHeight : true,
closable : true,
plain : true,
items : [ reldestinospuertosGrid ],
// All the magic happens after the user clicks the button
buttons : [ {
text : 'Cerrar',
handler : function() {
panelReldestinospuertos.destroy();
}
} ]
});
panelReldestinospuertos.show();
};