Миграция с virtuemart на aceshop

Наверное каждый владелец Aceshop столкнулся однажды с неприятностью — встроенный инструмент для импорта товаров и категорий с виртуемарт просто не работает с русскими магазина. А проблема оказалось просто в том, что инструмент заточен под английскую версию вирта. Изменений там немного, просто префикс языка в таблицах БД в нескольких местах, а результат — полная неработоспособность. Я переделал этот файлик под русских пользователей.

Путь —  /components/com_aceshop/opencart/admin/model/tool/virtuemart.php

Скачать aceshop virtuemart import tool русский

В категориях: Aceshop | Комментировать

Последние поступления или как вывести последние товары в virtuemart

Как мне дорог этот виртуемарт)) Такое ощущение, что косяков с каждой новой версией становится только больше! Я уже отказался от создания магазинов на вирте в пользу Aceshop (связка joomla и opencart), но у меня еще бывают заказы по магазинам на virtuemart и вот очередная проблема:

стоит галочка
, но товары не показываются! Только виден заголовок Последние поступления

Что же делать, как быть? Все просто 🙂 Лезем в файл administrator\components\com_virtuemart\models\product.php , ищем строки

case 'latest':
					$date = JFactory::getDate( time()-(60*60*24*7) ); //Set on a week, maybe make that configurable
					$dateSql = $date->toMySQL();
					$where[] = 'p.`modified_on` > "'.$dateSql.'" ';
					$orderBy = 'ORDER BY p.`modified_on`';
					$this->filter_order_Dir = 'DESC';
					break;

комментируем 3 строчки и получаем такой код
Далее >>>

В категориях: Virtuemart | 3 комментария

Virtuemart pricechanger — компонент для массового изменения цен в магазине virtuemart

Virtuemart pricechanger — небольшой компонент для массового изменения цен в магазине virtuemart. Написан мной по заказу для магазина по продаже ванн. Тестировался на joomla 1.5 и virtuemart 1.1.6-1.1.9. Работает очень просто — выбираете производителя, категорию товаров (или несколько категорий), в которых нужно изменить цену, вписываете цифру — на сколько процентов увеличить или уменьшить, нажимаете кнопку и получаете результат.
Далее >>>

В категориях: Virtuemart, Мои работы | 9 комментариев

Проверка на администраторский доступ в joomla

При написании своего компонента понадобилось на самом сайте определять является ли человеком администратором. Для администратора выводится дополнительная информация. Функция для определения админа выглядит так:

public function userIsAdmin(){
        $isadmin = false;
        $user           =&JFactory::getUser();
        $db = JFactory::getDbo();
        $userid         = intval($user->get( 'id' ));
        if($userid > 0){
            $query = $db->getQuery(true);
            $query->select('g.title AS group_name')
            ->from('#__usergroups AS g')
            ->leftJoin('#__user_usergroup_map AS map ON map.group_id = g.id')
            ->where('map.user_id = '.(int) $userid);
            $db->setQuery($query);
            $ugp = $db->loadObject();
            $usertype =  $ugp->group_name;
            if(is_string($usertype)) $usertype = array($usertype);
            if(in_array('Super Users', $usertype)){
                $isadmin = true;
            }
        }
        return $isadmin;
    }
В категориях: Joomla | Тэги , | Комментировать

Хранение ip адресов в mysql базе

Есть различные функции php для преобразования ip в число и наоборот, но эти функции работают только с ipv4. В настоящее же время лучше всего использовать средство mysql для этого, а именно INET_ATON и INET_NTOA . Эти функции упрощают хранение ip адресов и работу с ними.

Столбец, в котором должны хранится ip-адреса объявляется как `ip` INT UNSIGNED NOT NULL.

Для записи в БД используем синтаксис:


Далее >>>

В категориях: mySql, Php | Тэги , | Комментировать