/*
	Copyright (c) 2006-2010, ePages GmbH
	All Rights Reserved.

	epages.cartridges.de_epages.mediagallery.widget.StockPhotoController $Revision: 1.5 $

*/
dojo.provide("epages.cartridges.de_epages.mediagallery.widget.StockPhotoController");
dojo.require("epages.widget.LocalizedWidget");

dojo.declare(
	"epages.cartridges.de_epages.mediagallery.widget.StockPhotoController",
	[epages.widget.LocalizedWidget],
	{
		/**
		* public properties
		*/

		/**
		* private properties
		*/
		templatePath       : dojo.moduleUrl('epages.cartridges.de_epages.mediagallery.widget', 'templates/StockPhotoController.html'),
		translationName    : dojo.moduleUrl('epages.cartridges.de_epages.mediagallery.widget', 'templates/translation'),
		widgetsInTemplate  : true,
		_tree              : undefined,
		_store             : undefined,
		_mode              : undefined,
		_pluginId          : "stockPhotoPlugin",
		/**
		* public methods
		*/
		postCreate  : function() {
			this.inherited("postCreate", arguments);
				//connect to publish events from filebrowser
				dojo.subscribe('Filebrowser/PluginLinkClick',this,'_onPluginLinkClicked');
				dojo.subscribe('Filebrowser/onApply',this,'_onFilebrowserApply');

				//dummy button
				this.connect(this.button1,'onclick', '_onButton1Click');
				this.connect(this.button2,'onclick', '_onButton2Click');
				this.connect(this.button3,'onclick', '_onButton3Click');
		},

		_onButton1Click: function(evt){
			//console.debug('button1click');
			dojo.publish('Filebrowser/showMediagallery');
		},
		_onButton2Click: function(evt){
			//console.debug('button2click');
			dojo.publish('Mediagallery/disableApplyButton');
		},
		_onButton3Click: function(evt){
			//console.debug('button3click');
			dojo.publish('Mediagallery/enableApplyButton');
		},

		_onPluginLinkClicked: function(data){
			if(data.id == this._pluginId){
				//change State depending on opener
				var currentOpener = data.opener;
				if(currentOpener == "Editor"){
					//on Editor activate state2
					dojo.addClass(this.State1,'HideElement');
					dojo.removeClass(this.State2,'HideElement');
				}
				else{
					// on everything else activate State1
					dojo.removeClass(this.State1,'HideElement');
					dojo.addClass(this.State2,'HideElement');

				}
			}
		},

		_onFilebrowserApply: function(activePluginId){
			//check if plugin is still active
			if(activePluginId == this._pluginId){
				//yes im still active so i have to do something
				alert(this._pluginId+' onapply called');
				//close Mediagallery
				dojo.publish('Mediagallery/hide',[]);
			}
		}
});