PDA

View Full Version : Ext.onReady not defined after compile



maneljn
5 Nov 2012, 9:46 AM
When i compile with sencha cmd v3, i can obtain all-classes, but when i execute my app this is the error:



ReferenceError: Ext is not defined



Ext.onReady(function() {





With this app.js source code



//@charset UTF-8

// Cargador dinamico
Ext.Loader.setConfig({
enabled: true,
disableCaching: false,
paths: {
// Extjs
'Ext': '../../libs/extjs_v4_1_1_a/src',
// Ignore en sencha cmd compile
'Ext.ux.form.TinyMCETextArea': '../../libs/extjs_cesi/Ext.ux.form.TinyMCETextArea.js',
// Plugins y extensiones extjs
'Ext.ux.PagingToolbarResizer': '../../libs/extjs_cesi/Ext.ux.PagingToolbarResizer.js',
'Ext.ux.form.plugin.HtmlEditor': '../../libs/extjs_cesi/Ext.ux.form.plugin.HtmlEditor.js',
'Ext.ux.GMapPanel': '../../libs/extjs_cesi/Ext.ux.GMapPanel.js',
'Ext.ux.IFrame': '../../libs/extjs_cesi/Ext.ux.IFrame.js',
'Ext.ux.CheckColumn': '../../libs/extjs_cesi/Ext.ux.CheckColumn.js',
'Ext.ux.RowExpander': '../../libs/extjs_cesi/Ext.ux.RowExpander.js',
'Ext.ux.form.field.BoxSelect': '../../libs/extjs_cesi/Ext.ux.form.field.BoxSelect.js',
'Ext.ux.form.MultiSelect': '../../libs/extjs_cesi/Ext.ux.form.MultiSelect.js',
'Ext.ux.form.ItemSelector': '../../libs/extjs_cesi/Ext.ux.form.ItemSelector.js',
'Ext.ux.statusbar.StatusBar': '../../libs/extjs_cesi/Ext.ux.statusbar.StatusBar.js',
'Cesi.ux.form.field.Text': '../../libs/extjs_cesi/Cesi.ux.form.field.Text.js',
'Cesi.ux.form.field.TextArea': '../../libs/extjs_cesi/Cesi.ux.form.field.TextArea.js',
'Cesi.ux.form.field.Number': '../../libs/extjs_cesi/Cesi.ux.form.field.Number.js',
'Cesi.ux.form.field.Trigger': '../../libs/extjs_cesi/Cesi.ux.form.field.Trigger.js',
'Cesi.ux.form.field.TwinTrigger': '../../libs/extjs_cesi/Cesi.ux.form.field.TwinTrigger.js',
'Cesi.ux.form.field.TriggerBuscar': '../../libs/extjs_cesi/Cesi.ux.form.field.TriggerBuscar.js',
'Cesi.ux.form.field.TriggerNuevoRapido': '../../libs/extjs_cesi/Cesi.ux.form.field.TriggerNuevoRapido.js',
'Cesi.ux.form.field.TriggerEscoge': '../../libs/extjs_cesi/Cesi.ux.form.field.TriggerEscoge.js',
'Cesi.ux.form.field.Recaptcha': '../../libs/extjs_cesi/Cesi.ux.form.field.Recaptcha.js',
'Cesi.ux.form.field.ClearableCombobox': '../../libs/extjs_cesi/Cesi.ux.form.field.ClearableCombobox.js',
'Cesi.ux.form.field.Color': '../../libs/extjs_cesi/Cesi.ux.form.field.Color.js'
}
});

Ext.require('Ext.app.Application');
Ext.require('Ext.direct.*');
Ext.require('Ext.data.*');
Ext.require('Ext.tip.*');
Ext.require('Ext.window.MessageBox');
Ext.require('Ext.util.Format');
Ext.require('Ext.layout.container.Border');

//Ext.QuickTips.init();

// Variables globales
var esitareasApp;
var directProvider;

// Funcion que se ejecuta cuando se ha cargado todo lo necesario de las extjs.
Ext.onReady(function(){

// Arreglar algunos bugs en las traducciones de botones Extjs
// Forzar idioma botones messagebox (bug ext)
if (Ext.MessageBox) {
Ext.MessageBox.msgButtons['ok'].text = Ext.MessageBox.buttonText.ok;
Ext.MessageBox.msgButtons['cancel'].text = Ext.MessageBox.buttonText.cancel;
Ext.MessageBox.msgButtons['yes'].text = Ext.MessageBox.buttonText.yes;
Ext.MessageBox.msgButtons['no'].text = Ext.MessageBox.buttonText.no;
}

// Cargar el proveedor de Ext.Direct con la configuracion de API
directProvider = Ext.direct.Manager.addProvider(Ext.app.esitareas_REMOTING_API);


// Definir la MVC app principal (esitareasApp)
// Dominio de las clases js = esitareas.xxxxxx
esitareasApp = Ext.create('Ext.app.Application', {

name: 'esitareas',
autoCreateViewport: false,
enableQuickTips: true,
appFolder: 'app',

controllers: [
// Controladores eSItareas
'main', 'mainStatusBar',
'listas.mant',
'tareas.mant', 'tareas.imprimir'
],

launch: function() {
var me = this;

// Separador decimal y de millares
Ext.util.Format.decimalSeparator = '.';
Ext.util.Format.thousandSeparator = ',';

// Iniciar el gestor de tooltips
//Ext.tip.QuickTipManager.init();

// Añadir un listener al direct manager para que analice todos los datos que llegan y
// si vienen con el requiereLogin = true, abrir ventana de login.
directProvider.on({
data: function( provider, e, eOpts ){
if (e.result.requiereLogin) {
// Mostrar aviso para que haga login en eSInube
Ext.MessageBox.show({
title: gt.dgettext('esinube','Sesión.'),
msg: gt.dgettext('esinube','Debe iniciar sesión en eSInube.<br />Haga click en OK para cargar pantalla de entrada.'),
buttons: Ext.MessageBox.OK,
closable: false,
icon: Ext.MessageBox.WARNING,
modal: true,
fn: function( buttonId, text, opt) {
// Volver a cargar la pagina principal del esinube
window.location = '../../';
}
});
}
},
scope: this
});


// Comprobar si es necesario hacer login
Ext.esitareasDirect.esitareas_sesiones.requiereLogin(function(response, event) {

if (response.requiereLogin) {
//winLogin = me.getView('login').create();
//winLogin.show();
// Mostrar aviso para que haga login en eSInube
Ext.MessageBox.show({
title: gt.dgettext('esinube','Sesión.'),
msg: gt.dgettext('esinube','Debe iniciar sesión en eSInube.<br />Haga click en OK para cargar pantalla de entrada.'),
buttons: Ext.MessageBox.OK,
closable: false,
icon: Ext.window.MessageBox.WARNING,
modal: true,
fn: function( buttonId, text, opt) {
// Volver a cargar la pagina principal del esinube
window.location = '../../';
}
});
} else {

// Añadir eventos a la aplicacion antes y despues de los pasos iniciales
me.addEvents('prePasosIniciales','postPasosIniciales');

if (me.fireEvent('prePasosIniciales')) {

// Ejecutar los pasos iniciales al entrar (incluye la creacion del view principal)
me.getController('main').pasosIniciales( me );

// Evento de pasos iniciales acabados
me.fireEvent('postPasosIniciales');
}

}
});
}

});

});