Показать сообщение отдельно
Старый 19.11.2013, 18:19
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
var flashVars:Object = Index.stage.loaderInfo.parameters as Object;
Что такое индекс? У вас вообще ерунда написана какая то. Вечером выложу нормальный вид запроса, ждите

Добавлено через 2 часа 3 минуты
Код AS3:
package outcomebet.controllers 
{
	import com.in4core.utils.logger.I4Logger;
	import flash.display.DisplayObjectContainer;
	import outcomebet.events.PlayerModelEvents;
	import outcomebet.models.BaseModel;
	import outcomebet.views.BaseView;
	/**
	 * ...
	 * @author in4core progression lab
	 */
	public final class BaseController extends Object 
	{
		private var _host:DisplayObjectContainer 	= null;
		private var _baseModel:BaseModel 			= new BaseModel();
		private var _baseView:BaseView 				= new BaseView();
 
		private var _vkWrapper:VKWrapper			= new VKWrapper();
 
		public function BaseController(host:DisplayObjectContainer) 
		{
			_host = host;
		}
 
		public function init():void
		{
			_vkWrapper.createAPI();
			_vkWrapper.vkconnection.api("friends.get", _vkWrapper.getStandardFields(), onUsersInitialize, onVKCallBackError);
		}
 
		private function onVKCallBackError(o:Object):void 
		{
			trace("4:VK api call back error");
		}
 
		private function onUsersInitialize(o:Object):void 
		{
			_baseModel.friendsModel.fillFriends( o as Array );
			_baseModel.friendsModel.addEventListener(PlayerModelEvents.ALL_FRIENDS_PHOTOS_LOADED , onAllFriendsPhotosLoaded);
		}
 
		private function onAllFriendsPhotosLoaded(e:PlayerModelEvents):void 
		{
			_vkWrapper.vkconnection.api("users.get", _vkWrapper.getStandardFields(), onClinetInitialize, onVKCallBackError);
		}
 
		private function onClinetInitialize(o:Object):void 
		{
			var obj:Object = o[0] as Object;
 
			_baseModel.playerModel.addEventListener(PlayerModelEvents.USER_PHOTO_LOADED , onClientPhotoLoaded);
			_baseModel.playerModel.fillFields(obj);
		}
 
		private function onClientPhotoLoaded(e:PlayerModelEvents):void 
		{
			I4Logger.print("App Ready!" , 0xFF0000);
 
			_baseView.baseModel = _baseModel;
			_host.addChild(_baseView);
		}
 
	}
 
}
Код AS3:
package outcomebet.controllers 
{
	import flash.errors.IllegalOperationError;
	import flash.events.EventDispatcher;
	import vk.APIConnection;
 
	/**
	 * ...
	 * @author in4core progression lab
	 */
	public final class VKWrapper extends EventDispatcher 
	{
		private var _vkconnection:APIConnection;
 
		public static var flashVars:Object = null;
 
		public function VKWrapper() 
		{
 
		}
 
		public function createAPI():void
		{
			if (flashVars) _vkconnection = new APIConnection(flashVars);
			else throw new IllegalOperationError("FV - null");
		}
 
		public function get vkconnection():APIConnection 
		{
			return _vkconnection;
		}
 
		public function getStandardFields(id:uint = 0):Object
		{
			if (!id) id = flashVars["viewer_id"];
 
			return { user_ids : id , fields : "nickname, screen_name, photo_100" };
		}
 
 
 
	}
 
}
Код AS3:
package 
{
	import com.in4core.utils.logger.I4Logger;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.system.Security;
	import outcomebet.controllers.BaseController;
	import outcomebet.controllers.VKWrapper;
	import vk.APIConnection;
 
	/**
	 * ...
	 * @author in4core progression lab
	 */
	[Frame(factoryClass="Preloader")]
 
	public class Main extends Sprite 
	{
 
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
 
			Security.loadPolicyFile("http://vk.com/crossdomain.xml");
 
			var flashVars:Object = stage.loaderInfo.parameters as Object; 
 
			if (!flashVars.api_id)
			{
				flashVars['api_id'] = 1; 
				flashVars['viewer_id'] =  1; 
				flashVars['sid'] = "XXX"
				flashVars['secret'] =  "XXX"; 
			}
 
 
			VKWrapper.flashVars = flashVars;
 
			I4Logger.print(flashVars);
 
			var base:BaseController = new BaseController(this);
			base.init();
		}
 
	}
Работатть будет) Тут много лишнего, того, что вам не надо, но думаю разберетесь
__________________
Марк Tween