0 Пользователей и 1 Гость просматривают эту тему.
  • 158 Ответов
  • 13390 Просмотров
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #90 : 26.10.2015, 17:38:14 »
Исправление
Цитировать
1. в контроллере product $product->getReviews делался после onBeforeDisplayProduct, а сейчас делается до. Соответственно, те обработки относительно отзывов, которые делались в onBeforeDisplayProduct, уже не будут работать.
Попробуйте новою версию файлов
model/productreviewlist.php
Код
<?php
/**
* @version      4.11.1 13.08.2013
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die();

class jshopProductReviewList extends jshopBase{

protected $model = null;
protected $list = null;
protected $total = null;
protected $limit = null;
protected $limitstart = null;
protected $pagination = null;
protected $count_per_page = 20;

public function __construct(){
$model = JSFactory::getTable('product', 'jshop');
$this->setModel($model);
}

public function setModel($model){
$this->model = $model;
extract(js_add_trigger(get_defined_vars(), "after"));
}

public function getModel(){
return $this->model;
}

public function setProductId($pid){
$this->getModel()->load($pid);
}

public function getProductId(){
return $this->getModel()->product_id;
}

public function getContext(){
$context = "jshoping.list.front.product.review";
return $context;
}

public function getTotal(){
return $this->total;
}

public function getList(){
return $this->list;
}

public function getPagination(){
        return $this->pagination;
    }

public function getLimit(){
        return $this->limit;
    }

public function getLimitStart(){
        return $this->limitstart;
    }

public function setCountPerPage($val){
$this->count_per_page = $val;
}

public function getCountPerPage(){
return $this->count_per_page;
}

protected function loadRequestData(){
$mainframe = JFactory::getApplication();
$context = $this->getContext();
$this->limitstart = JRequest::getInt('limitstart');
        $this->limit = $mainframe->getUserStateFromRequest($context.'limit', 'limit', $this->getCountPerPage(), 'int');
}

public function load(){
$this->loadRequestData();
$model = $this->getModel();
$this->total =  $model->getReviewsCount();
$this->pagination = new JPagination($this->total, $this->limitstart, $this->limit);
$this->list = $model->getReviews($this->limitstart, $this->limit);
return 1;
}

}

и controller/product.php

Код
<?php
/**
* @version      4.11.1 18.12.2014
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die();
jimport('joomla.html.pagination');

class JshoppingControllerProduct extends JshoppingControllerBase{
    
    function __construct($config = array()){
        parent::__construct($config);
        JPluginHelper::importPlugin('jshoppingproducts');
        JDispatcher::getInstance()->trigger('onConstructJshoppingControllerProduct', array(&$this));
    }

    function display($cachable = false, $urlparams = false){
        $mainframe = JFactory::getApplication();
        $jshopConfig = JSFactory::getConfig();
        $user = JFactory::getUser();
$dispatcher = JDispatcher::getInstance();
$model = JSFactory::getModel('productShop', 'jshop');

$ajax = JRequest::getInt('ajax');
        $tmpl = JRequest::getVar("tmpl");
$product_id = JRequest::getInt('product_id');
        $category_id = JRequest::getInt('category_id');
        $attr = JRequest::getVar("attr");

JSFactory::loadJsFilesLightBox();

        if ($tmpl!="component"){
$model->storeEndPageBuy();
        }

        $back_value = $model->getBackValue($product_id, $attr);

        $dispatcher->trigger('onBeforeLoadProduct', array(&$product_id, &$category_id, &$back_value));
        $dispatcher->trigger('onBeforeLoadProductList', array());

        $product = JSFactory::getTable('product', 'jshop');
        $product->load($product_id);

$category = JSFactory::getTable('category', 'jshop');
        $category->load($category_id);
        $category->name = $category->getName();

$model->setProduct($product);

        $listcategory = $model->getCategories(1);

$model->prepareView($back_value);
$model->clearBackValue();

$attributes = $model->getAttributes();
        $all_attr_values = $model->getAllAttrValues();

if (!$product->checkView($category, $user, $category_id, $listcategory)){
            JError::raiseError(404, _JSHOP_PAGE_NOT_FOUND);
            return;
        }
        
        JshopHelpersMetadata::product($category, $product);
        
        $product->hit();
        
$allow_review = $model->getAllowReview();
$text_review = $model->getTextReview();
$select_review = $model->getSelectReview();

        $hide_buy = $model->getHideBuy();        
        $available = $model->getTextAvailable();
$default_count_product = $model->getDefaultCountProduct($back_value);
        $displaybuttons = $model->getDisplayButtonsStyle();
        $product_images = $product->getImages();
        $product_videos = $product->getVideos();
        $product_demofiles = $product->getDemoFiles();

$dispatcher->trigger('onBeforeDisplayProductList', array(&$product->product_related));
        
        $view = $this->getView("product");
        $view->setLayout("product_".$product->product_template);
        $dispatcher->trigger('onBeforeDisplayProduct', array(&$product, &$view, &$product_images, &$product_videos, &$product_demofiles) );
        $view->assign('config', $jshopConfig);
        $view->assign('image_path', $jshopConfig->live_path.'/images');
        $view->assign('noimage', $jshopConfig->noimage);
        $view->assign('image_product_path', $jshopConfig->image_product_live_path);
        $view->assign('video_product_path', $jshopConfig->video_product_live_path);
        $view->assign('video_image_preview_path', $jshopConfig->video_product_live_path);
        $view->assign('product', $product);
        $view->assign('category_id', $category_id);
        $view->assign('images', $product_images);
        $view->assign('videos', $product_videos);
        $view->assign('demofiles', $product_demofiles);
        $view->assign('attributes', $attributes);
        $view->assign('all_attr_values', $all_attr_values);
        $view->assign('related_prod', $product->product_related);
        $view->assign('path_to_image', $jshopConfig->live_path . 'images/');
        $view->assign('live_path', JURI::root());
        $view->assign('enable_wishlist', $jshopConfig->enable_wishlist);
        $view->assign('action', SEFLink('index.php?option=com_jshopping&controller=cart&task=add',1));
        $view->assign('urlupdateprice', SEFLink('index.php?option=com_jshopping&controller=product&task=ajax_attrib_select_and_price&product_id='.$product_id.'&ajax=1',1,1));
        if ($allow_review){
JSFactory::loadJsFilesRating();
$modelreviewlist = JSFactory::getModel('productReviewList', 'jshop');
$modelreviewlist->setModel($product);
$modelreviewlist->load();
$review_list = $modelreviewlist->getList();
$pagination = $modelreviewlist->getPagination();
$pagenav = $pagination->getPagesLinks();
            $view->assign('reviews', $review_list);
            $view->assign('pagination', $pagenav);
$view->assign('pagination_obj', $pagination);
            $view->assign('display_pagination', $pagenav!="");
        }
        $view->assign('allow_review', $allow_review);
        $view->assign('select_review', $select_review);
        $view->assign('text_review', $text_review);
        $view->assign('stars_count', floor($jshopConfig->max_mark / $jshopConfig->rating_starparts));
        $view->assign('parts_count', $jshopConfig->rating_starparts);
        $view->assign('user', $user);
        $view->assign('shippinginfo', SEFLink($jshopConfig->shippinginfourl,1));
        $view->assign('hide_buy', $hide_buy);
        $view->assign('available', $available);
        $view->assign('default_count_product', $default_count_product);
        $view->assign('folder_list_products', "list_products");
        $view->assign('back_value', $back_value);
$view->assign('displaybuttons', $displaybuttons);
        $dispatcher->trigger('onBeforeDisplayProductView', array(&$view));
        $view->display();
        $dispatcher->trigger('onAfterDisplayProduct', array(&$product));
        if ($ajax) die();
    }
    
    function getfile(){
        $id = JRequest::getInt('id');
        $oid = JRequest::getInt('oid');
        $hash = JRequest::getVar('hash');
        $rl = JRequest::getInt('rl');

$model = JSFactory::getModel('productDownload', 'jshop');
$model->setId($id);
$model->setOid($oid);
$model->setHash($hash);

if ($rl==1){
            //fix for IE
            print "<script type='text/javascript'>location.href='".$model->getUrlDownload()."';</script>";
            die();
        }

if (!$model->checkHash()){
JError::raiseError(500, "Error download file");
            return 0;
}
if (!$model->checkOrderStatusPaid()){
            JError::raiseWarning(500, _JSHOP_FOR_DOWNLOAD_ORDER_MUST_BE_PAID);
            return 0;
        }
if (!$model->checkUser()){
            checkUserLogin();
        }
if (!$model->checkTimeDownload()){
            JError::raiseWarning(500, _JSHOP_TIME_DOWNLOADS_FILE_RESTRICTED);
            return 0;
        }
if (!$model->checkFileId()){
JError::raiseError(500, "Error download file");
            return 0;
}
if (!$model->checkNumberDownload()){
JError::raiseWarning(500, _JSHOP_NUMBER_DOWNLOADS_FILE_RESTRICTED);
            return 0;
}

        $name = $model->getFileName();
        if ($name==""){
            JError::raiseWarning('', "Error download file");
            return 0;
        }
        $file_name = $model->getFile($name);

$model->storeStatDownloads();
        
        ob_end_clean();
        @set_time_limit(0);
$model->downloadFile($file_name);

        die();
    }
    
    function reviewsave(){
        JRequest::checkToken() or jexit('Invalid Token');

        $post = JRequest::get('post');
        $backlink = JRequest::getVar('back_link');

$model = JSFactory::getModel('productReview', 'jshop');
$model->setData($post);
if (!$model->checkAllow()){
JError::raiseWarning('', $model->getError());
            $this->setRedirect($backlink);
            return 0;
}
if (!$model->check()){
JError::raiseWarning('', $model->getError());
            $this->setRedirect($backlink);
            return 0;
}
$model->save();

$model->mailSend();

if (JSFactory::getConfig()->display_reviews_without_confirm){
            $this->setRedirect($backlink, _JSHOP_YOUR_REVIEW_SAVE_DISPLAY);
        }else{
            $this->setRedirect($backlink, _JSHOP_YOUR_REVIEW_SAVE);
        }
    }

function ajax_attrib_select_and_price(){
$request = JRequest::get('request');
        $product_id = JRequest::getInt('product_id');
        $change_attr = JRequest::getInt('change_attr');
$qty = JshopHelpersRequest::getQuantity('qty', 1);
$attribs = JshopHelpersRequest::getAttribute('attr');
        $freeattr = JshopHelpersRequest::getFreeAttribute('freeattr');

$model = JSFactory::getModel('productAjaxRequest', 'jshop');
$model->setData($product_id, $change_attr, $qty, $attribs, $freeattr, $request);
print $model->getProductDataJson();
die();
}

    function showmedia(){
        $jshopConfig = JSFactory::getConfig();
        $media_id = JRequest::getInt('media_id');
        $file = JSFactory::getTable('productfiles', 'jshop');
        $file->load($media_id);

        $scripts_load = '<script type="text/javascript" src="'.JURI::root().'media/jui/js/jquery.min.js"></script>';
        $scripts_load .= '<script type="text/javascript" src="'.JURI::root().'components/com_jshopping/js/jquery/jquery.media.js"></script>';

        $view = $this->getView("product");
        $view->setLayout("playmedia");
        $view->assign('config', $jshopConfig);
        $view->assign('filename', $file->demo);
        $view->assign('description', $file->demo_descr);
        $view->assign('scripts_load', $scripts_load);
        $dispatcher = JDispatcher::getInstance();
        $dispatcher->trigger('onBeforeDisplayProductShowMediaView', array(&$view) );
        $view->display();
        die();
    }
}
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #91 : 26.10.2015, 18:22:57 »
controller checkout - onBeforeSaveCheckoutStep4save раньше вызывалась до $sh_pr_method_id = JRequest::getInt('sh_pr_method_id'), сейчас после.

onLoadCheckoutStep3 и onLoadCheckoutStep4 - сейчас вызываются после $this->setRedirect, раньше до

Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #92 : 26.10.2015, 18:50:24 »
Новий код

Код
function step3(){
$jshopConfig = JSFactory::getConfig();
$checkoutStep = JSFactory::getModel('checkoutStep', 'jshop');
        $checkout = JSFactory::getModel('checkoutPayment', 'jshop');
    $checkout->checkStep(3);

$dispatcher = JDispatcher::getInstance();
        $dispatcher->trigger('onLoadCheckoutStep3', array() );

if ($jshopConfig->without_payment){
$next_step = $checkoutStep->getNextStep(3);
$checkout->setMaxStep($next_step);
$this->setRedirect($checkoutStep->getCheckoutUrl($next_step));
            return 0;
        }
       
        $cart = JSFactory::getModel('cart', 'jshop');
        $cart->load();
$checkout->setCart($cart);

        $adv_user = JSFactory::getUser();
       
        JshopHelpersMetadata::checkoutPayment();
       
        $checkout_navigator = $checkout->showCheckoutNavigation(3);
        $small_cart = $checkout->loadSmallCart(3);

$paym = $checkout->getCheckoutListPayments();
$active_payment = $checkout->getCheckoutActivePayment($paym, $adv_user);
$first_payment_class = $checkout->getCheckoutFirstPaymentClass($paym);
       
        if ($jshopConfig->hide_payment_step){
            if (!$first_payment_class){
                JError::raiseWarning("", _JSHOP_ERROR_PAYMENT);
                return 0;
            }
            $this->setRedirect($checkoutStep->getCheckoutUrl('step3save&payment_method='.$first_payment_class));
            return 0;
        }
       
        $view = $this->getView("checkout");
        $view->setLayout("payments");
        $view->assign('payment_methods', $paym);
        $view->assign('active_payment', $active_payment);
        $view->assign('checkout_navigator', $checkout_navigator);
        $view->assign('small_cart', $small_cart);
        $view->assign('action', $checkoutStep->getCheckoutUrl('step3save', 0, 0));
        $dispatcher->trigger('onBeforeDisplayCheckoutStep3View', array(&$view));
        $view->display();   
    }
   
    function step3save(){
        $checkout = JSFactory::getModel('checkoutPayment', 'jshop');
        $checkout->checkStep(3);
       
$dispatcher = JDispatcher::getInstance();       
$checkoutStep = JSFactory::getModel('checkoutStep', 'jshop');
        $post = JRequest::get('post');
       
        $dispatcher->trigger('onBeforeSaveCheckoutStep3save', array(&$post) );
       
        $cart = JSFactory::getModel('cart', 'jshop');
        $cart->load();
$checkout->setCart($cart);
       
        $adv_user = JSFactory::getUser();
       
        $payment_method = JRequest::getVar('payment_method'); //class payment method
        $params = JRequest::getVar('params');

if (!$checkout->savePaymentData($payment_method, $params, $adv_user)){
JError::raiseWarning('', $checkout->getError());
            $this->setRedirect($checkoutStep->getCheckoutUrl('3'));
            return 0;
}
$paym_method = $checkout->getActivePaymMethod();
       
        $dispatcher->trigger('onAfterSaveCheckoutStep3save', array(&$adv_user, &$paym_method, &$cart));

$next_step = $checkoutStep->getNextStep(3);
$checkout->setMaxStep($next_step);
$this->setRedirect($checkoutStep->getCheckoutUrl($next_step));
    }
   
    function step4(){
$dispatcher = JDispatcher::getInstance();
        $checkout = JSFactory::getModel('checkoutShipping', 'jshop');
        $checkout->checkStep(4);       
        $jshopConfig = JSFactory::getConfig();
$checkoutStep = JSFactory::getModel('checkoutStep', 'jshop');

$dispatcher->trigger('onLoadCheckoutStep4', array());

if ($jshopConfig->without_shipping){
$checkoutStep = JSFactory::getModel('checkoutStep', 'jshop');
$next_step = $checkoutStep->getNextStep(4);
$checkout->setMaxStep($next_step);
$this->setRedirect($checkoutStep->getCheckoutUrl($next_step));       
            return 0;
        }

        JshopHelpersMetadata::checkoutShipping();
       
        $cart = JSFactory::getModel('cart', 'jshop');
        $cart->load();
$checkout->setCart($cart);       
        $adv_user = JSFactory::getUser();

        $checkout_navigator = $checkout->showCheckoutNavigation(4);
        $small_cart = $checkout->loadSmallCart(4);

$shippings = $checkout->getCheckoutListShippings($adv_user);
if ($shippings===false){
JError::raiseWarning("", $checkout->getError());
return 0;
}
if (count($shippings)==0 && $jshopConfig->checkout_step4_show_error_shipping_config){
JError::raiseWarning("", _JSHOP_ERROR_SHIPPING);
}
$active_shipping = $checkout->getCheckoutActiveShipping($shippings, $adv_user);
       
        if ($jshopConfig->hide_shipping_step){
            $first_shipping = $checkout->getCheckoutFirstShipping($shippings);
            if (!$first_shipping){
                JError::raiseWarning("", _JSHOP_ERROR_SHIPPING);
                return 0;
            }           
            $this->setRedirect($checkoutStep->getCheckoutUrl('step4save&sh_pr_method_id='.$first_shipping));
            return 0;
        }
       
        $view = $this->getView("checkout");
        $view->setLayout("shippings");
        $view->assign('shipping_methods', $shippings);
        $view->assign('active_shipping', $active_shipping);
        $view->assign('config', $jshopConfig);       
        $view->assign('checkout_navigator', $checkout_navigator);
        $view->assign('small_cart', $small_cart);
        $view->assign('action', $checkoutStep->getCheckoutUrl('step4save', 0, 0));
        $dispatcher->trigger('onBeforeDisplayCheckoutStep4View', array(&$view));
        $view->display();
    }
   
    function step4save(){
        $checkout = JSFactory::getModel('checkoutShipping', 'jshop');
    $checkout->checkStep(4);       
$checkoutStep = JSFactory::getModel('checkoutStep', 'jshop');

$dispatcher = JDispatcher::getInstance();
        $dispatcher->trigger('onBeforeSaveCheckoutStep4save', array());

$sh_pr_method_id = JRequest::getInt('sh_pr_method_id');
$allparams = JRequest::getVar('params');

        $cart = JSFactory::getModel('cart', 'jshop');
        $cart->load();
$checkout->setCart($cart);       
        $adv_user = JSFactory::getUser();

if (!$checkout->saveShippingData($sh_pr_method_id, $allparams, $adv_user)){
JError::raiseWarning('', $checkout->getError());
            $this->setRedirect($checkoutStep->getCheckoutUrl('4'));
            return 0;
}
$sh_method = $checkout->getActiveShippingMethod();
$shipping_method_price = $checkout->getActiveShippingMethodPrice();
       
        $dispatcher->trigger('onAfterSaveCheckoutStep4', array(&$adv_user, &$sh_method, &$shipping_method_price, &$cart));

$next_step = $checkoutStep->getNextStep(4);
if ($next_step==3){
$checkout->setMaxStep(4);
}else{
$checkout->setMaxStep($next_step);
}
$this->setRedirect($checkoutStep->getCheckoutUrl($next_step));
    }
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #93 : 26.10.2015, 20:38:07 »
нашел таки проблему с дублированием в onBeforeCreateMailOrderStatusView. раньше использовалось
Код
$view = new JshoppingViewCheckout($view_config);
а сейчас
Код
$view = $this->getView('checkout');
но дело в том, что JController/getView возвращает static $views. соответственно, единожды определив $view = $this->getView('checkout'); для клиента, второй раз для админа это уже будет тоже самое вью. и допустим если делать в плагине
Код
if (!isset($view->_tmp_ext_html_ordermail_end)) {
$view->_tmp_ext_html_ordermail_end = '';
}
$view->_tmp_ext_html_ordermail_end .= ....;
то для админа содержимое $view->_tmp_ext_html_ordermail_end будет 2 раза.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #94 : 27.10.2015, 10:08:40 »
Новый код
models/base.php

Код
<?php
/**
* @version      4.11.1 11.09.2015
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die();
include_once(JPATH_JOOMSHOPPING."/controllers/base.php");

abstract class jshopBase{

private $error;

public function setError($error){
        $this->error = $error;
    }
   
    public function getError(){
        return $this->error;
    }
   
    public function getView($name){
$jshopConfig = JSFactory::getConfig();
include_once(JPATH_JOOMSHOPPING."/views/".$name."/view.html.php");
$config = array("template_path"=>$jshopConfig->template_path.$jshopConfig->template."/".$name);
$viewClass = 'JshoppingView'.$name;
        $view = new $viewClass($config);
        return $view;
    }

}
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #95 : 15.11.2015, 14:05:24 »
Код
$config->auto_backup_addon_files = 1;
несомненно, иногда очень важная и нужная функция. только вот плохо, что она по-умолчанию 1, а не 0. у некоторых место на хостинге может закончится неожиданно, хостинги - они ведь разные :) это не говоря о том, что плохо, что она в принципе настройка в файле, а не флажок в админке.

но что еще хуже, что после этого php перестают быть php
Код
copy(JPATH_ROOT.$subdir."/".$file, JPATH_ROOT.$subdir."/".$file."_".date('ymdHis'));
осталось дождаться апдейта, и можно качать все, что интересует...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Cerber

  • Захожу иногда
  • 266
  • 34 / 0
  • Богиня Иштар и ее пес Пи..ц
Re: Ошибки магазина (2015)
« Ответ #96 : 15.11.2015, 15:18:31 »
+ +dmitry_stas
Подавляющее большинство умеют и пользуются тем или иным бэкапам
По факту это наверно лишняя шестерёнка в ЖШ:
Код
$config->auto_backup_addon_files = 1;
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #97 : 15.11.2015, 23:20:29 »
Код
$config->auto_backup_addon_files = 1;
несомненно, иногда очень важная и нужная функция. только вот плохо, что она по-умолчанию 1, а не 0. у некоторых место на хостинге может закончится неожиданно, хостинги - они ведь разные :) это не говоря о том, что плохо, что она в принципе настройка в файле, а не флажок в админке.

но что еще хуже, что после этого php перестают быть php
Код
copy(JPATH_ROOT.$subdir."/".$file, JPATH_ROOT.$subdir."/".$file."_".date('ymdHis'));
осталось дождаться апдейта, и можно качать все, что интересует...

В новой версии будет
Опция в админке (по умолчанию включена)
сохранение в папку tmp/jshopbackup/datetime/...
*

12mv

  • Давно я тут
  • 548
  • 20 / 0
  • Гульсина
Re: Ошибки магазина (2015)
« Ответ #98 : 19.11.2015, 13:51:37 »
Не знаю, к теме относится или нет, но в настройках http://prntscr.com/94grl9 не позволяет поставить Опциональная регистрация во время оформления. Эти пункты в списке даже не выделяются и не выбираются.
*

nevigen

  • Moderator
  • 10431
  • 862 / 25
  • http://n*****n.com
Re: Ошибки магазина (2015)
« Ответ #99 : 19.11.2015, 14:06:13 »
это не ошибка. это функционал 1 степа.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Cerber

  • Захожу иногда
  • 266
  • 34 / 0
  • Богиня Иштар и ее пес Пи..ц
Re: Ошибки магазина (2015)
« Ответ #100 : 30.11.2015, 16:09:37 »
В шаблоне профиля клиента (templates\default\user\myaccount.php)
На в 43 строчке:
Код: php
<?php print $this->user->groupname?> 
Не выводится название группы к которой принадлежит юзер.
*

nevigen

  • Moderator
  • 10431
  • 862 / 25
  • http://n*****n.com
Re: Ошибки магазина (2015)
« Ответ #101 : 30.11.2015, 16:21:34 »
Не выводится название группы к которой принадлежит юзер.
/administrator/index.php?option=com_jshopping&controller=config&task=otherconfig
Показать информацию группы пользователей
Показать группы пользователей
да/нет ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Cerber

  • Захожу иногда
  • 266
  • 34 / 0
  • Богиня Иштар и ее пес Пи..ц
Re: Ошибки магазина (2015)
« Ответ #102 : 30.11.2015, 18:24:23 »
:) Надеюсь Вы не делали преждевременных выводов и проверили у себя
да/нет ?
*

nevigen

  • Moderator
  • 10431
  • 862 / 25
  • http://n*****n.com
Re: Ошибки магазина (2015)
« Ответ #103 : 30.11.2015, 18:36:46 »
:) Надеюсь Вы не делали преждевременных выводов и проверили у себя
я давно не пользуюсь стандартными средставми. не проверял. я предположил. потому что раньше выводилось точно.
оставим ответ для Виктора.

П.С. не выводит однако.....
« Последнее редактирование: 30.11.2015, 21:13:06 от nevigen »
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #104 : 30.11.2015, 22:04:15 »
Цитата: \components\com_jshopping\tables\usergroup.php
   function getName(){
        $lang = JSFactory::getLang();
        $field = $lang->get("name");
      $name = $this->$field;
      if ($name==''){
         $name = $thid->usergroup_name;
      }
      return $name;
    }

и кстати $usershop->percent_discount и $usershop->discountpercent - одинаковое вроде?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

threemonkeys

  • Захожу иногда
  • 171
  • 1 / 0
Re: Ошибки магазина (2015)
« Ответ #105 : 15.12.2015, 19:10:55 »
После недавнего обновления на 4.11.5
Стало не удобно клиентам авторизироваться/оформлять заказ на сайте.
После добавления товаров в корзину и авторизации для оформления заказа, клиент попадает на главную страницу, хотя должен попасть на 1 шаг оформления заказа - Адрес счета.
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #106 : 16.12.2015, 10:09:56 »
Проблема только у вас.

http://demo.joomshopping.com/example5/
demo
demo
*

threemonkeys

  • Захожу иногда
  • 171
  • 1 / 0
Re: Ошибки магазина (2015)
« Ответ #107 : 16.12.2015, 10:44:28 »
Проблема только у вас.

http://demo.joomshopping.com/example5/
demo
demo
Проверил на 4.11.4 - прекрасно переходит на первый шаг оформления заказа.
Попробовал переопределить в настройке модуля Логина переход на оформление заказа после авторизации - работает!
Но для пункта меню - клиенты (личный кабинет) все также на главную переходит, в 4.11.5

Подскажите, как безболезненно перейти обратно на 4.11.4 (может один файл или папку) или где искать ошибку в 4.11.5 (обновления в перспективе нужны)?
Прошу помощи, жутко не удобно клиентам.
« Последнее редактирование: 16.12.2015, 10:52:01 от threemonkeys »
*

threemonkeys

  • Захожу иногда
  • 171
  • 1 / 0
Re: Ошибки магазина (2015)
« Ответ #108 : 16.12.2015, 13:35:32 »
Как исправить эту ошибку?
Подскажите хотябы какой файл отвечает за переход клиента на страницу 1 шага оформления, сразу после авторизации?
Кто может помочь, отзовитесь

Upd: это не может быть связано с обновлением самой Joomla 3.4.6?
« Последнее редактирование: 16.12.2015, 13:55:36 от threemonkeys »
*

threemonkeys

  • Захожу иногда
  • 171
  • 1 / 0
Re: Ошибки магазина (2015)
« Ответ #109 : 16.12.2015, 22:28:44 »
Если кто-либо может помочь, посодействуйте?!
Неужели никто не знает какой файл отвечает за это действие.
Магазин стал жутко не удобный в использовании.
Пытаешься оформить заказ после авторизации, попадаешь на главную и остается чувство недоумения.
Я в отчаянии!!
*

nevigen

  • Moderator
  • 10431
  • 862 / 25
  • http://n*****n.com
Re: Ошибки магазина (2015)
« Ответ #110 : 16.12.2015, 22:53:09 »
1. ну Вы же заявили ошибку, достаточно. это не тема решение конкретных вопросов. тут заявляют об ошибках для решения.
2. вам же ответили что обновления затрагивали много чего. и Ваша ситуация индивидуальна. больше никто не столкнулся с таким.
3. не стоит писать в этой теме об отчаяниях и т.д. здесь тема где сухая статистика ошибок.
4. поднимайте бекап и пользуйтесь старым набором... а на тестовой площадке ищите решение вопроса.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #111 : 18.12.2015, 10:26:18 »
После недавнего обновления на 4.11.5
Стало не удобно клиентам авторизироваться/оформлять заказ на сайте.
После добавления товаров в корзину и авторизации для оформления заказа, клиент попадает на главную страницу, хотя должен попасть на 1 шаг оформления заказа - Адрес счета.

Ошибка после обновления Joomla до 3.4.6
Ошибка в JURI::isInternal

Можно удалить проверку в JoomShopping
components\com_jshopping\models\userlogin.php

public function getRequestReturnUrl(){      
        if ($return = JRequest::getVar('return', '', 'method', 'base64')){
            $return = base64_decode($return);         
            if (!JURI::isInternal($return)){
                $return = '';
            }
        }
        return $return;
    }

изменить на

public function getRequestReturnUrl(){      
        if ($return = JRequest::getVar('return', '', 'method', 'base64')){
            $return = base64_decode($return);         
           
        }
        return $return;
    }



*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #112 : 18.12.2015, 11:18:59 »
я уже отписал по поводу ошибки в JURI::isInternal, она уже была зарегистрирована как баг, думаю в апдейте поправят.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

victorantoniak

  • Moderator
  • 1572
  • 185 / 2
  • JoomShopping Team
Re: Ошибки магазина (2015)
« Ответ #113 : 18.12.2015, 16:09:44 »
Думаю не поправлят
https://github.com/joomla/joomla-cms/issues/8689
*

kit2m2

  • Живу я здесь
  • 3264
  • 267 / 0
  • Беру сайты на полное сопровождение
Re: Ошибки магазина (2015)
« Ответ #114 : 23.12.2015, 20:35:59 »
Версия Joomla 3.4.7 + JoomShopping 4.11.5 - При выборе типа пункта меню (JoomShopping) и любого типа ссылки самого магазина - не сохраняются выбранные данные и не передаются в поле "Тип пункта меню". Нет возможности создать любую ссылку в меню типа "JoomShopping".
Расширения для JoomShopping | Расширения на заказ | Сайты и магазины под ключ: Дизайн, Верстка, Программирование, СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ и JoomShopping 5+
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #115 : 23.12.2015, 20:43:14 »
выйдите из аккаунта и опять зайдите. если не поможет куки почистите.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

kit2m2

  • Живу я здесь
  • 3264
  • 267 / 0
  • Беру сайты на полное сопровождение
Re: Ошибки магазина (2015)
« Ответ #116 : 23.12.2015, 20:48:19 »
выйдите из аккаунта и опять зайдите. если не поможет куки почистите.
Спасибо, помогло...
Расширения для JoomShopping | Расширения на заказ | Сайты и магазины под ключ: Дизайн, Верстка, Программирование, СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ и JoomShopping 5+
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #117 : 19.01.2016, 18:37:51 »
Цитата: \components\com_jshopping\tables\product.php
if ($v->attr_type==1){
// attribut type select

   if ($jshopConfig->attr_display_addprice){
      foreach($options as $k2=>$v2){
         if (($v2->price_mod=="+" || $v2->price_mod=="-" || $jshopConfig->attr_display_addprice_all_sign) && $v2->addprice>0){
            $ext_price_info = " (".$v2->price_mod.formatprice($v2->addprice, null, 0, -1).")";
            $options[$k2]->value_name .=$ext_price_info;
         }
      }
   }

при $config->formatprice_style_currency_span = 1; ошибка. в select надо всегда принудительно без форматирования.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Ошибки магазина (2015)
« Ответ #118 : 12.02.2016, 23:47:58 »
не сохраняет Закупочную цену в savegroup
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Tuzemec

  • Захожу иногда
  • 246
  • 28 / 0
  • Ня!
Re: Ошибки магазина (2015)
« Ответ #119 : 22.02.2016, 23:05:21 »
Версия Joomla 3.4.8 + JoomShopping 4.12.0 - Тип пункта меню->JoomShopping->Клиенты... Дале "Show"->"User/Edit account" либо "User/Orders"
1. После сохранения и дальнейшем повторном редактировании пропадает значение "Тип пункта меню". Совет с чисткой кукисов не помог.
2. При создании пункта меню "Edit account" путь в навигаторе сайта имеет вид "Главная > Мои данные > Изменить мои данные". При нажатии на "Мои данные" попадаем туда. откуда пришли - "Изменить мои данные".
3. При создании пункта меню "myaccount" путь в навигаторе сайта имеет вид "Главная > Мой профиль > Мой профиль". При нажатии на "Мой профиль" попадаем туда, откуда пришли - "Мой профиль > Мой профиль".
3. При создании пункта меню "myaccount" и дочерним пунктом меню "Edit account" путь в навигаторе сайта имеет вид "Главная > Мой профиль > Мои данные > Изменить мои данные". При нажатии... пришли туда же.
4. Почему в "список желаний" добавлять товар можно только при выбранных атрибутах? Как бы я понимаю, что они на стоимость могут влиять. Но нельзя ли добавить для атрибутов возможность выбора одного из значений как "по-умолчанию"? Да и для "списка желаний", в некоторых магазинах, выбор атрибутов - это не критично.
« Последнее редактирование: 22.02.2016, 23:28:57 от Tuzemec »
Каждый ваш клик помогает заработать сыну на конфеты
Не дайте ребенку остаться без сладкого! Сделай ТЫЦ!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

При обновлении Joomshopping до 4.16 и Joomla до 3.9.3 - ошибка 1054

Автор busik

Ответов: 8
Просмотров: 2145
Последний ответ 15.12.2021, 01:01:46
от nevigen
Что нужно доделать в ЖШ

Автор nevigen

Ответов: 924
Просмотров: 85995
Последний ответ 22.12.2020, 22:09:27
от nevigen
Проблема с деталями заказа Error 1054

Автор nemo_228

Ответов: 4
Просмотров: 1416
Последний ответ 02.10.2016, 20:29:43
от dmitry_stas
Выдает ошибку 1054 с одного браузера

Автор buto

Ответов: 10
Просмотров: 1311
Последний ответ 04.09.2016, 09:36:32
от buto
Поменять местами данные в форме ФИО

Автор Roman74ru

Ответов: 1
Просмотров: 1792
Последний ответ 23.07.2016, 15:53:19
от Roman74ru