/*!
 * Ext JS Library 3.0.0
 * Copyright(c) 2006-2009 Ext JS, LLC
 * licensing@extjs.com
 * http://www.extjs.com/license
 */
 
/* 
<!> Include mt_functions.js
*/

function drawCarousel(){
	var carousel = new Ext.ux.Carousel('mobi-carousel', {
		itemSelector: 'img',
		interval: 3,
		autoPlay: true,
		showPlayButton: true,
		pauseOnNavigate: true,
		freezeOnHover: true,
		transitionType: 'fade',
		//navigationOnHover: true       
		//navigationOnHover: false,
		hideNavigation: false
	});
}
 
Ext.onReady(function(){
	var pid = document.getElementById('mobi-pid').innerHTML;
	var j = 0;
	var i = 0;
	
	var lang_close = 'Fermer la fênetre';
	var lang_param = 'Paramétrage';
	var lang_save = 'Enregistrer';
	var lang_submit = 'Chercher';
	var lang_info_submit_ok = 'Les informations ont été enregistrées.';
	var lang_server_unreachable = 'Le serveur n\'as pas pu être contacté.';
	var lang_back = 'Retour en arrière';
	var lang_obt_back = 'Précédent';
	var lang_obt_next = 'Suivant';
	
	var connUrl='/fileadmin/ressources_mob/mt_detail/form_functions.php';
	var conn = new Ext.data.Connection();
	var responseObject = new Object();
	conn.request({
		url: connUrl,
		method: 'POST',
		params:{
			actionMobi: 'getList',
			url: getUrl(),
			pid: pid
		},
		success: function(responseObject){	
			var json = Ext.util.JSON.decode(responseObject.responseText);
			var list = json.list[0];
			var bckfwd = json.bckfwd;
			var currentModule = 0;
			
			var navPanel1 = new Ext.Panel({
				hideLabel: true,
				id: 'mobi-mt-results-nav-panel1',
				cls: 'mobi-mt-results-nav-panel',
				html: '<div class="mobi-mt-detail-nav-panel-elem mobi-nav-panel-elem-back" onclick="history.go(-1)">'+lang_back+'</div>',
				items: [{
					xtype: 'button',
					id : 'mobi-mt-detail-back-btn1',
					cls : 'mobi-mt-detail-back-btn',
					text: lang_obt_back,
					handler: function(){
						var url = getUrl();
						var obtPos = getUrlItem('obtPos', url);
						if (obtPos > 0){
							url = setUrlItem('obtPos', obtPos-1, url);
						}
						else{
							setHashItem('start',  parseFloat(getHashItem('start')) - 1);
						}
						mobiRedirect(setUrlItem('idObject', bckfwd[0], url));
					}
				},{
					xtype: 'button',
					id : 'mobi-mt-detail-next-btn1',
					cls : 'mobi-mt-detail-next-btn',
					text: lang_obt_next,
					handler: function(){
						setHashItem('start',  parseFloat(getHashItem('start')) + 1);
						var url = getUrl();
						mobiRedirect(setUrlItem('idObject', bckfwd[1]));
					}
				}]
			});
			
			var navPanel2 = new Ext.Panel({
				hideLabel: true,
				id: 'mobi-mt-results-nav-panel2',
				cls: 'mobi-mt-results-nav-panel',
				html: '<div class="mobi-mt-detail-nav-panel-elem mobi-nav-panel-elem-back" onclick="history.go(-1)">'+lang_back+'</div>',
				items: [{
					xtype: 'button',
					id : 'mobi-mt-detail-back-btn2',
					cls : 'mobi-mt-detail-back-btn',
					text: lang_obt_back,
					handler: function(){
						var url = getUrl();
						var obtPos = getUrlItem('obtPos', url);
						if (obtPos > 0){
							url = setUrlItem('obtPos', obtPos-1, url);
						}
						else{
							setHashItem('start',  parseFloat(getHashItem('start')) - 1);
						}
						mobiRedirect(setUrlItem('idObject', bckfwd[0], url));
					}
				},{
					xtype: 'button',
					id : 'mobi-mt-detail-next-btn2',
					cls : 'mobi-mt-detail-next-btn',
					text: lang_obt_next,
					handler: function(){
						setHashItem('start',  parseFloat(getHashItem('start')) + 1);
						var url = getUrl();
						mobiRedirect(setUrlItem('idObject', bckfwd[1]));
					}
				}]
			});
			
			var infoPanel = new Ext.Panel({
				id: 'mobi-mt-detail-panel',
				frame:true,
				width:'auto',
				items:[
					navPanel1
				]
			});
			
			
			
			// generate the modules
			//V1
			var panelArr = new Array();
			while (i < list.length){
				panelArr[i] = null;
				var module = list[i];
				eval('var '+module+' = new '+module.toUpperCase()+'();'+
					module+'.on(\'finished\', function(panel){'+
						'var index = list.indexOf(panel.mobiClass.toLowerCase());'+
						'currentModule++;'+
						'panelArr[index]=panel;'+
						'if (currentModule == list.length){'+
							'j = 0;'+
							'while (j < panelArr.length){'+
								'infoPanel.add(panelArr[j]);'+
								
								
								'if (list[j] == \'mx_media\' ){'+
									'drawCarousel();'+
								'}'+
								
								'infoPanel.add(navPanel2);'+
								
								'j++;'+
							'}'+
							'infoPanel.render(\'mobi-mt-detail\');'+
							
						'}'+
					'});'
				);
				var value = eval('json.'+module);
				eval(module+'.create(pid, \''+value+'\');');
				i++;
			}
			
			//Hide Back+Next Buttons
			if (bckfwd[0] == -1){
				Ext.getCmp('mobi-mt-detail-back-btn1').hide();
				Ext.getCmp('mobi-mt-detail-back-btn2').hide();
			}
			if (bckfwd[1] == -1 || bckfwd[1] == getUrlItem('idObject')){
				Ext.getCmp('mobi-mt-detail-next-btn1').hide();
				Ext.getCmp('mobi-mt-detail-next-btn2').hide();
			}

			infoPanel.render('mobi-mt-detail');
		},
		failure:function(){ 
			Ext.Msg.alert('ERR', lang_server_unreachable);
		}
	});
});