Код vip пользователи в кадре.

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Ответить
Аватара пользователя
12funteam89
Сообщения: 99
Зарегистрирован: 29 окт 2010, 15:34

Код vip пользователи в кадре.

Сообщение 12funteam89 »

Помогите перевести код пожалуйста.
Я перевел но почему то не работает. Если быть точным то незнаю что сдеать с функцией updateUsers();

Оригинал:

Код: Выделить всё

  package {    import flash.display.*;    import flash.events.*;    import flash.net.*;    import vk.APIConnection;    import vk.events.*;    import vk.api.serialization.json.JSON;    import flash.text.*;    import fl.containers.UILoader;     public class VipUsers extends Sprite    {        public var api_id:Number;        public var viewer_id;        public var sid:String;        public var secret:String;        var auth_key;        var wasPayBox = false;// было открыто окно "Внесите 1 голос", при нажатии на кнопку "Добавить"        var VK:APIConnection;         public function VipUsers()        {            // получаем flashVars            var flashVars:Object = stage.loaderInfo.parameters as Object;/*            // для тестирования локально, вводим свои данные здесь и раскоменчиваем код            flashVars['api_id'] = 743131;            flashVars['viewer_id'] = 1306422;            flashVars['sid'] = 'a1006fd1e8gb9bd669e1119280166bc6cb9110b8a111550333bf041301';            flashVars['secret'] = '7ef8l6a4p8';*/            // присваиваем переменным значения из flashVars            api_id = flashVars['api_id'];            viewer_id = flashVars['viewer_id'];            sid = flashVars['sid'];            secret = flashVars['secret'];            auth_key = flashVars['auth_key'];             // инициализация VK            VK = new APIConnection(flashVars);             add_btn.addEventListener(MouseEvent.CLICK,addUid);                        // вешаем слушатель на событие изменения баланса            VK.addEventListener('onBalanceChanged',onBalanceChanged);                        // обновляем аватарки пользователей            updateUsers();        }           // добавление пользователя в базу        function addUid(e:Event):void        {            // проверяем баланс            VK.api('getUserBalance', {}, onBalanceLoaded, onError);        }         private function onBalanceLoaded(data: Object):void        {             if (data < 100)            {// не достаточно голосов                VK.callMethod("showPaymentBox",1);                wasPayBox = true;            }            else            {                var loader:URLLoader = new URLLoader();                var request:URLRequest = new URLRequest("http://flapps.ru/apps/vip/add.php");                request.method = URLRequestMethod.POST;                var vars:URLVariables = new URLVariables();                vars['auth_key'] = auth_key;                vars['viewer_id'] = viewer_id;                request.data = vars;                loader.addEventListener(Event.COMPLETE,uidAdded);                loader.load(request);            }        }         // uid был отправлен и был получен ответ от сервера        function uidAdded(event:Event):void        {            var json_data = JSON.decode(event.target.data);            result_tf.text = json_data.error.msg;             // обновляем аватарки пользователей            updateUsers();        }          // обновление аватарок пользователей        function updateUsers()        {            var loader:URLLoader = new URLLoader();            var request:URLRequest = new URLRequest("http://flapps.ru/apps/vip/getuids.php");            request.method = URLRequestMethod.POST;            var vars:URLVariables = new URLVariables();            vars['auth_key'] = auth_key;            vars['viewer_id'] = viewer_id;            request.data = vars;            loader.addEventListener(Event.COMPLETE,onUsersUpdate);            loader.load(request);        }          function onUsersUpdate(event:Event):void        {            var json_data = JSON.decode(event.target.data);            // список id пользователей            var uidsVip = json_data.response;            // получаем профили            VK.api('getProfiles', {uids:uidsVip,fields:'photo' }, onProfilesLoaded, onError);        }         private function onProfilesLoaded(data: Object):void        {            // количество полученных профилей            var count = data.length;             // массив блоков с информацией о пользователях            var usersBoxArray = new Array();                        // стиль текста            var textformat:TextFormat = new TextFormat();            textformat.align = TextFormatAlign.CENTER;             textformat.font = 'Tahoma';            textformat.size = 11;            textformat.color = 0x2B587A;             for (var i=0; i<count; i++)            {                // создаем MovieClip, в котором будет ава и имя пользователя                var user_box = new MovieClip;                // рамка блока                user_box.graphics.beginFill(0xDAE1E8);                user_box.graphics.drawRect(0,0,80,95);                // заливка блока                user_box.graphics.beginFill(0xF7F7F7);                user_box.graphics.drawRect(1,1,78,93);                user_box.graphics.endFill();                                user_box.x = 10 + i * 85;                user_box.y = 10;                user_box.buttonMode = true;                user_box.useHandCursor = true;                user_box.mouseChildren = false;                // добавляем фото                var user_photo:UILoader = new UILoader  ;                user_photo.autoLoad = true;                user_photo.scaleContent = false;                user_photo.source = data[i]['photo'];                user_photo.move(15,10);                user_box.addChild(user_photo);                // добавляем имя                var user_name_tf:TextField = new TextField  ;                user_name_tf.width = 80;                user_name_tf.height = 40;                user_name_tf.wordWrap = true;                user_name_tf.defaultTextFormat = textformat;                user_name_tf.text = data[i]['first_name'] + "\n" + data[i]['last_name'];                user_name_tf.x = 0;                user_name_tf.y = 60;                user_box.addChild(user_name_tf);                 usersBoxArray.push(user_box);                addChild(usersBoxArray[i]);                        // записываем id пользователя в массив                usersBoxArray[i].uid = data[i]['uid'];                // клик по блоку                usersBoxArray[i].addEventListener(MouseEvent.CLICK, function(e:MouseEvent){                                    //navigateToURL(new URLRequest('http://vkontakte.ru/id' + data[i]['uid']));                                    trace('http://vkontakte.ru/id' + e.currentTarget.uid);                                });            }        }          // если произошла ошибка        private function onError(data: Object):void        {            result_tf.text = data.error_msg;        }                // баланс изменен        private function onBalanceChanged(e:CustomEvent):void        {            // если пополнение баланса была вызвано приложением автоматически, то пробуем отправить снова            if (wasPayBox) {                wasPayBox = false;                addUid(null);            }        }            }}  
Это я переделал:

Код: Выделить всё

     import flash.display.*;    import flash.events.*;    import flash.net.*;    import vk.APIConnection;    import vk.events.*;    import vk.api.serialization.json.JSON;    import flash.text.*;    import fl.containers.UILoader;     var api_id:Number;      var viewer_id;      var sid:String;       var secret:String;        var auth_key;        var wasPayBox = false;// было открыто окно "Внесите 1 голос", при нажатии на кнопку "Добавить"        var VK:APIConnection;          function VipUsers()        {            // получаем flashVars            var flashVars:Object = stage.loaderInfo.parameters as Object;/*            // для тестирования локально, вводим свои данные здесь и раскоменчиваем код            flashVars['api_id'] = 743131;            flashVars['viewer_id'] = 1306422;            flashVars['sid'] = 'a1006fd1e8gb9bd669e1119280166bc6cb9110b8a111550333bf041301';            flashVars['secret'] = '7ef8l6a4p8';*/            // присваиваем переменным значения из flashVars            api_id = flashVars['api_id'];            viewer_id = flashVars['viewer_id'];            sid = flashVars['sid'];            secret = flashVars['secret'];            auth_key = flashVars['auth_key'];             // инициализация VK            VK = new APIConnection(flashVars);             add_btn.addEventListener(MouseEvent.CLICK,addUid);                        // вешаем слушатель на событие изменения баланса            VK.addEventListener('onBalanceChanged',onBalanceChanged);                        // обновляем аватарки пользователей            updateUsers();        }           // добавление пользователя в базу        function addUid(e:Event):void        {            // проверяем баланс            VK.api('getUserBalance', {}, onBalanceLoaded, onError);        }         function onBalanceLoaded(data: Object):void        {             if (data < 100)            {// не достаточно голосов                VK.callMethod("showPaymentBox",1);                wasPayBox = true;            }            else            {                var loader:URLLoader = new URLLoader();                var request:URLRequest = new URLRequest("http://flapps.ru/apps/vip/add.php");                request.method = URLRequestMethod.POST;                var vars:URLVariables = new URLVariables();                vars['auth_key'] = auth_key;                vars['viewer_id'] = viewer_id;                request.data = vars;                loader.addEventListener(Event.COMPLETE,uidAdded);                loader.load(request);            }        }         // uid был отправлен и был получен ответ от сервера        function uidAdded(event:Event):void        {            var json_data = JSON.decode(event.target.data);            result_tf.text = json_data.error.msg;             // обновляем аватарки пользователей            updateUsers();        }          // обновление аватарок пользователей        function updateUsers()        {            var loader:URLLoader = new URLLoader();            var request:URLRequest = new URLRequest("http://flapps.ru/apps/vip/getuids.php");            request.method = URLRequestMethod.POST;            var vars:URLVariables = new URLVariables();            vars['auth_key'] = auth_key;            vars['viewer_id'] = viewer_id;            request.data = vars;            loader.addEventListener(Event.COMPLETE,onUsersUpdate);            loader.load(request);        }          function onUsersUpdate(event:Event):void        {            var json_data = JSON.decode(event.target.data);            // список id пользователей            var uidsVip = json_data.response;            // получаем профили            VK.api('getProfiles', {uids:uidsVip,fields:'photo' }, onProfilesLoaded, onError);        }         function onProfilesLoaded(data: Object):void        {            // количество полученных профилей            var count = data.length;             // массив блоков с информацией о пользователях            var usersBoxArray = new Array();                        // стиль текста            var textformat:TextFormat = new TextFormat();            textformat.align = TextFormatAlign.CENTER;             textformat.font = 'Tahoma';            textformat.size = 11;            textformat.color = 0x2B587A;             for (var i=0; i<count; i++)            {                // создаем MovieClip, в котором будет ава и имя пользователя                var user_box = new MovieClip;                // рамка блока                user_box.graphics.beginFill(0xDAE1E8);                user_box.graphics.drawRect(0,0,80,95);                // заливка блока                user_box.graphics.beginFill(0xF7F7F7);                user_box.graphics.drawRect(1,1,78,93);                user_box.graphics.endFill();                                user_box.x = 10 + i * 85;                user_box.y = 10;                user_box.buttonMode = true;                user_box.useHandCursor = true;                user_box.mouseChildren = false;                // добавляем фото                var user_photo:UILoader = new UILoader  ;                user_photo.autoLoad = true;                user_photo.scaleContent = false;                user_photo.source = data[i]['photo'];                user_photo.move(15,10);                user_box.addChild(user_photo);                // добавляем имя                var user_name_tf:TextField = new TextField  ;                user_name_tf.width = 80;                user_name_tf.height = 40;                user_name_tf.wordWrap = true;                user_name_tf.defaultTextFormat = textformat;                user_name_tf.text = data[i]['first_name'] + "\n" + data[i]['last_name'];                user_name_tf.x = 0;                user_name_tf.y = 60;                user_box.addChild(user_name_tf);                 usersBoxArray.push(user_box);                addChild(usersBoxArray[i]);                        // записываем id пользователя в массив                usersBoxArray[i].uid = data[i]['uid'];                // клик по блоку                usersBoxArray[i].addEventListener(MouseEvent.CLICK, function(e:MouseEvent){                                    //navigateToURL(new URLRequest('http://vkontakte.ru/id' + data[i]['uid']));                                    trace('http://vkontakte.ru/id' + e.currentTarget.uid);                                });            }        }          // если произошла ошибкаfunction onError(data: Object):void        {            result_tf.text = data.error_msg;        }                // баланс изменен   function onBalanceChanged(e:CustomEvent):void        {            // если пополнение баланса была вызвано приложением автоматически, то пробуем отправить снова            if (wasPayBox) {                wasPayBox = false;                addUid(null);            }        }          /* http://flapps.ru */ 
Evgesha
ЗАБАНЕН!
Сообщения: 279
Зарегистрирован: 07 июн 2011, 20:36

Re: Код vip пользователи в кадре.

Сообщение Evgesha »

Ты уже честно достал. Одно и тоже, одно и тоже каждый день. Ты пойми чем различается класс от кода в кадре и действуй! Просто подумай, что может быть лишним. функция vipusers() опять лишняя, ты почему из прошлыХ ответов на такие вопросы, ничего не усваиваешь? никто не вызывает эту функцию.

Если не понимаешь как переделывать под кадр, не пиши в нём, да и всЁ! Раз ты не понимаешь, Гораздо проще брать уже готовые классы
Аватара пользователя
12funteam89
Сообщения: 99
Зарегистрирован: 29 окт 2010, 15:34

Re: Код vip пользователи в кадре.

Сообщение 12funteam89 »

vip users() я убрал все равно не работает , я думаю из за updateUsers();, а ее вызывают так что убрать нельзя.
Ответить