Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

controll

Новачок
  
  • Публікації

    19
  • З нами

  • Відвідування

Відвідувачі профілю

559 переглядів профілю

controll's Achievements

Apprentice

Apprentice (3/14)

  • First Post
  • Collaborator
  • Week One Done
  • One Month Later
  • One Year In

Recent Badges

1

Репутація

  1. в прошлой версии ocstore 3.0.2 его вообще не было в этом месте
  2. Правильно , я то же в это русло начал думал, но у меня возник вопрос , насколько он нужен вообще этот аякс в таком виде? Смотря с какой целью , то может его как то после проверки на пост запрос запускать только? ЗЫ Если он точно нужен там, то да проще всего в контроллер добавить api_key /
  3. Спасибо, data: 'key={{ api_key }}', я убрал сначала, забыл вернуть обратно, так как оно тоже непонятно откуда приходит {{ api_key }} , ее ведь нигде не объявлено в контроллере. Вопрос с первого поста остается актуальной, для чего вызов этого апи запроса при переходе на страницу заказа
  4. Добрый день, растолкуйте плиз кусок кода в новой сборке по адресу admin/view/template/sale/order_info.twig var api_token = ''; $.ajax({ url: '{{ catalog }}index.php?route=api/login', type: 'post', dataType: 'json', crossDomain: true, success: function(json) { $('.alert').remove(); if (json['error']) { if (json['error']['key']) { $('#content > .container-fluid').prepend('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error']['key'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>'); } if (json['error']['ip']) { $('#content > .container-fluid').prepend('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error']['ip'] + ' <button type="button" id="button-ip-add" data-loading-text="{{ text_loading }}" class="btn btn-danger btn-xs pull-right"><i class="fa fa-plus"></i>{{ button_ip_add }}</button></div>'); } } if (json['token']) { api_token = json['token']; } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); для чего нужен вызов api при загрузке страницы заказа сразу, в котором нет пост запроса? сразу страница выдает ошибку, что логично , ведь нет пост запроса то. Или я что-то не понимаю? Ни у кого ошибка не вылазит? Подскажите пожалуйста
  5. ***** это просто контора по сдиранию денег из своего опыта. Даже при покупке "открытого кода" написано мелким шрифтом - кроме моделей. Как бы да, сами виноваты, что не заметили, про пометку. Но у ребят окаалось , что понимание mvc полностью соответствует требованиям их кошелька, в контроллере только и есть вызовы методов , а методы со своей логикой удачно скрыты в моделях под ионкуб. Вот и получается любая ошибка , любой нюанс скрыт от ваших глаз. И тут при требовании хоть как то растолковать свой модуль приходит платная поддержка минимум 38$ , чтобы консультировать добровольно принудительно, иначе пишите письма, долго будете писать. Так что подумаете 10 раз перед тем как купить у них чтото.
  6. Добрый день, как бы оптимизировать шаблон чтобы было более менее норм показатель . страшно блокирует пейджспид почти до 20 пунктов <link href="min/cache/f44fd2accedcfb80165083df702e79db.css?v=1.6.5" rel="stylesheet" media="screen" /> <script src="min/cache/624cc11841f23dcac3a7e2907225144b.js?v=1.6.5"></script>
  7. UPD Написал, а после заметил ваш вариант. Я пошел немного другим путем action.php private $namespace = DIR_APPLICATION; public function __construct($route, $namespace = false) { $this->id = $route; switch ($namespace){ case 'admin': case 'catalog': $this->ns = DIR_PATH . $namespace . '/'; break; } ................................ public function execute($registry, array $args = array()) { // Stop any magical methods being called if (substr($this->method, 0, 2) == '__') { return new \Exception('Error: Calls to magic methods are not allowed!'); } $file = $this->namespace . 'controller/' . $this->route . '.php'; $class = 'Controller' . preg_replace('/[^a-zA-Z0-9]/', '', $this->route); ................................ в loader.php public function controller($route, $data = array(), $namespace = false) { // Sanitize the call $route = preg_replace('/[^a-zA-Z0-9_\/]/', '', (string)$route); // Keep the original trigger $trigger = $route; // Trigger the pre events $result = $this->registry->get('event')->trigger('controller/' . $trigger . '/before', array(&$route, &$data)); // Make sure its only the last event that returns an output if required. if ($result != null && !$result instanceof Exception) { $output = $result; } else { $action = new Action($route, $namespace); $output = $action->execute($this->registry, array(&$data)); } ........................................ и всё, можно вызвать везде при необходимости $this->load->controller('common/search', array(), 'catalog'); ну или любой другой. Третий параметр по желанию, остальному коду не мешает. PS в конфигах у меня всегда есть DIR_PATH на public_html , не знаю почему такого нет, мне всегда ее не хватает )))). Желательно это всё в ocmod
  8. Спасибо ), получил. Что-то мне казалось все более сложно, копал целый день до этого, не мог уловить момент с определением админ или каталог, неопытность ))
  9. Согласен, но там данные так запутанно достаются с бд , выборка замудренная с нескольких таблиц, чтобы сказать я асс в этом то нет. хочется просто вызвать и забыть)). насчет runkit не слышал, спасибо попробую, второй способ оригинально, ) но ненастолько силен, чтобы одолеть. Как понимаю в лоадер передать третий параметр, но не могу понять где регистр переопределить с помощью этого параметра.
  10. вызвать метод контроллера из админки в контроллере каталога)))))
  11. Прошу не кидаться тапками. Читал не мало , понимаю что принципе невозможно, но сложилась ситуация, очень нужно получить данные из контроллера админ части в контроллер каталога. Есть какой то костыль или какой то способ это сделать? версия 3.0.2 окстор. Подскажите варианты плиз, перечитал немало когда то во второй версии был случай , такое делалось . В третьей перебрал всю церочку работы движка, насколько понимаю, не получается у меня. ((
  12. Спасиб большое ))), сработало. curl_error вернул Illegal characters found in URL Оказалось при вытаскивания токена в конце притаился пробел, изза этого не работала ссылка. Обернул в trim еще. PS. Насчет в каталог , не совсем то, так как вызванный метод это вход для работы с заказами, неудобно будет ))
  13. к сожалению вопрос с вызовом нужного метода остался после авторизации и получения токена,, все равно не получается запустить этот метод. возвращается не ошибок , ничего. буду признателен помощи. Уже сил нет, помогите плиз function login($url,$login,$pass){ $value = [ 'username' => $login, 'password' => $pass ]; $ch = curl_init(); if(strtolower((substr($url,0,5))=='https')) { // если соединяемся с https curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); } curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $value); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (Windows; U; Windows NT 5.0; En; rv:1.8.0.2) Gecko/20070306 Firefox/1.0.0.4"); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, '/home/site/tmp/cookie.txt'); $result=substr(strrchr(curl_exec($ch), '='), 1 ); curl_close($ch); return $result; } function read($url){ $ch = curl_init(); if(strtolower((substr($url,0,5))=='https')) { // если соединяемся с https curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); } curl_setopt($ch, CURLOPT_URL, $url); // откуда пришли на эту страницу curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //запрещаем делать запрос с помощью POST и соответственно разрешаем с помощью GET (для простоты, хотя в дальнейшем нужно будет post) curl_setopt($ch, CURLOPT_POST, 0); //отсылаем серверу COOKIE полученные от него при авторизации curl_setopt($ch, CURLOPT_COOKIEFILE, '/home/site/tmp/cookie.txt'); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (Windows; U; Windows NT 5.0; En; rv:1.8.0.2) Gecko/20070306 Firefox/1.0.0.4"); $result = curl_exec($ch); curl_close($ch); } $token = login('https://site/admin/index.php?route=common/login', 'login', 'pass'); $url = 'https://site/admin/index.php?route=extension/analitycs/getUpdate&token='.$token; $result= read($url); print_r = $result
  14. может кому интересно будет, CURLOPT_POSTFFIELDS нужно параметр в виде массива, в таком случае заголовок Content-Type будет установлен в значение multipart/form-data . Тогда авторизация проходит, иначе нет.
  15. function login($url,$login,$pass){ $ch = curl_init(); if(strtolower((substr($url,0,5))=='https')) { // если соединяемся с https curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); } curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,"login=".$login."&pass=".$pass); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (Windows; U; Windows NT 5.0; En; rv:1.8.0.2) Gecko/20070306 Firefox/1.0.0.4"); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, '/home/site/tmp/cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEFILE, '/home/site/tmp/cookie.txt'); $result=curl_exec($ch); curl_close($ch); return $result; } Что-то ниичего не понимаю ((( . Вот для захода код, все равно возвращает страницу логина. Тыкните пожалуйста , что не так. Запрос на страницу "https:/site.ru/admin/index.php"

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.