26

Re: Каталог

я уже дорабатываю свой smile с учетом данных шорткодов.

Site | Блог | GitHub | Создание форумов/решений на базе PunBB/Monstra

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

27

Re: Каталог

а вообще по коду - нужно проделать там еще много работы.

Например все новые lang обозначения написаны сразу на русском а не вынесены в файл.

Это не говоря о прочем спагетти коде.

Site | Блог | GitHub | Создание форумов/решений на базе PunBB/Monstra

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

28

Re: Каталог

все новые lang обозначения написаны сразу на русском а не вынесены в файл

Сейчас пробежался по вьюхам, думал действительно где то забыл - нет все в текстовых переменных, Где ты нашел?

Поделиться

29

Re: Каталог

Поставил плагин.. потыкался...
- Картинку можно добавлять только после создания каталога и продукта ( не удобно и логики я не понял )
- Нету превью картинки при добавлении
- Вмешается около 150 символов в дизайн продукта при отображении на сайте нужно тогда ввести какое то ограничение в админки на ввод символов...
- Цена в настройках $, но при вводе 15 $ пишет не в долларах а в гривнях о_О

Предлы:
-> Изменить ссылку в каталоге картинки на ссылку во внутрь каталога а не увеличение фотографии...
-> Добавить более расширенную работу с товаром, чтобы был список товаров но при клике на определённый товар открывался только он с доп инфой, с большим количеством фоток\описанием\ можно будет даже туда прикрутить комменты со сторонних ресурсов


п\с спасибо за плагин smile

(c) RomanArt
Создание дизайнов любой сложности для Monstra cms

Поделиться

30

Re: Каталог

sergeyterr пишет:

отображения отдельного элемента в следующей версии реализую.

Доработайте пожалуйста отображение отдельного элемента.

Спасибо!

Поделиться

31

Re: Каталог

- Картинку можно добавлять только после создания каталога и продукта ( не удобно и логики я не понял )

я дорабатывал плагин - а в нем функционально было реализовано так, что возможность добавления фото появлялась после сохранения товара, переделывать не хотелось - плагин простой

Нету превью картинки при добавлении

принцип тот же, что и в коробочном файловом менеджере, там тоже нет превьюхи. Опять таки плагин делал под заказчика и переделывать не было времени и возможности.

Цена в настройках $, но при вводе 15 $ пишет не в долларах а в гривнях о_О

Там еще и курс есть, а во фронте отображается уже по курсу, такая была задача - в базе хранить цены в долларах и чтобы во фронте цена менялась при смене курса но была в гривнах. Валюту во фронте менять не сложно.

Изменить ссылку в каталоге картинки на ссылку во внутрь каталога а не увеличение фотографии...

Это будет реализовано в следующей версии по желанию трудящихся.

Добавить более расширенную работу с товаром, чтобы был список товаров но при клике на определённый товар открывался только он с доп инфой, с большим количеством фоток\описанием\ можно будет даже туда прикрутить комменты со сторонних ресурсов

неплохо бы поподробнее написать какие именно доп свойства прикрутить.

Поделиться

32

Re: Каталог

Здравствуйте... Нужна помощь! тяжело объяснить, голова уже плохо соображает, будет много букаф, но попробую...

На входе имеется данный плагин и скрипт на открытие модального окна:
http://jemand.ru/modalnoe-okno-na-jquery/

Так как у данного плагина нету вывода отдельного элемента, решил сделать его вывод в модальном окне прямо с каталога... в которое подсовывается description, да и все что душе угодно...

Все бы было хорошо, но модальное окно любого элемента открывается с description первого, что и не удивительно, name у все ссылок a был одинаковый...
В стандарте cat.view.php плагина от sergeyterr эта ссылка открывала изображение с каталога, что было переписано на открытие модального окна и задание уникального атрибута name каждого элемента:

<?php
    Catalog::$meta['title'] = Notification::get('title');
    if (Notification::get('error'))    Alert::error(Notification::get('error'));
    else {
        $id=1;
        foreach($records as $row):
?>
    <div style="display:block; float:left; width:<?php echo ((Option::get('catalog_w'))*0.05+(Option::get('catalog_w'))); ?>px; height: 315px; margin-right:15px; margin-bottom:15px; text-align:center">
    <?php
        if ($opt["title"] == 0)
        {
            echo "<div id=\"eternum-item-title\">".$row['title']."</div>";
        }
    ?>
    <?php if (file_exists(ROOT . DS . 'public' . DS .'catalog' . DS . $opt["cat_id"] . DS . $row['id'] . '_t.jpg')) { ?>
    <a href="#dialog" name="modal<?php echo $id++;?>"> ...

Вообщем после этого у нас есть каждый элемент каталога с ссылкой, у которой name формата modal$id+1 т.е. modal1, modal2, modal3.... modal++

скрипт открытия модального окна по дефалту

$(document).ready(function() {
    $('a[name=modal]').click(function(e) {
...

в котором и задается дальнейшее содержимое модального окна с атрибутом name="modal"

написал ('подсмотрел и переделал') скрипт, в котором получаю name ссылки элемента:

        
var Name = $('.name').attr('name');
        $("a").click(function() {
            var name = $(this).attr("name");
               alert(name);

alert() выводит правильное значение, все нормально....

А теперь внимание, господа знатоки, /что в черном ящике/ как мне подставить

var Name

в

$('a[name=modal]').click(function(e) {

вот что имеется на данный момент в  cat.view.php

<div id="collection-item">
<?php
    Catalog::$meta['title'] = Notification::get('title');
    if (Notification::get('error'))    Alert::error(Notification::get('error'));
    else {
        $id=1;
        foreach($records as $row):
?>
    <div style="display:block; float:left; width:<?php echo ((Option::get('catalog_w'))*0.05+(Option::get('catalog_w'))); ?>px; height: 315px; margin-right:15px; margin-bottom:15px; text-align:center">
    <?php
        if ($opt["title"] == 0)
        {
            echo "<div id=\"eternum-item-title\">".$row['title']."</div>";
        }
    ?>
    <?php if (file_exists(ROOT . DS . 'public' . DS .'catalog' . DS . $opt["cat_id"] . DS . $row['id'] . '_t.jpg')) { ?>
    <a href="#dialog" name="modal<?php echo $id++;?>">
        <img class="
        <?php 
        if (Page::slug() == 'eternum'){
            echo 'eternum';
            }
        elseif (Page::slug() == 'eternum-signature'){
            echo 'eternum-signature';
            }
        elseif (Page::slug() == 'eternum-gastronum'){
            echo 'eternum-gastronum';
            }
        ?>" alt="" style="margin:auto; max-height:<?php echo Option::get('catalog_w'); ?>px;" src="<?php echo $opt['url'].$opt["cat_id"].'/'.$row['id'].'_t.jpg' ?>"/></a>
        <div id="boxes">
            <div id="dialog" class="window">
                <?php
                    if ($opt["desc"] == 0)
                    {
                        echo "<div class=\"desc text-center\">".Text::toHtml(File::getContent($opt["storage"] . $opt["cat_id"] . DS. $row['id'] . '.catalog.txt'))."</div>";
                    }
                ?>
            </div>
            <span><a href="#" class="close"/>Закрыть его</a>
            </div>
        </div>
                <?php
        if (Page::slug() == 'eternum'){
            echo '<div id="eternum-item-bg"></div>';
            }
        elseif (Page::slug() == 'eternum-signature'){
            echo '<div id="signature-item-bg"></div>';
            }
        elseif (Page::slug() == 'eternum-gastronum'){
            echo '<div id="gastronum-item-bg"></div>';
            }
        ?>
    <?php } else { ?>
    <a href="<?php echo Option::get('siteurl') . 'public/catalog/dsc_empty.jpg'; ?>">
        <img class="img-polaroid" style="max-width:<?php echo (Option::get('catalog_w')); ?>px;" src="<?php echo Option::get('siteurl') . 'public/catalog/dsc_empty.jpg'; ?>" />
    </a>
    <?php
    }
    if ($opt["price"] == 0)
    {
        if(Session::get('user_id')){
        $price = $row['price'] * Option::get('kurs');
        echo "<div class=\"price\">".$price." грн.</div>";
        }
    }
    ?>
</div>
<?php
        endforeach;
    }
?>
<div style="clear:both"></div>
<div id="news-paginator"><?php Catalog::paginator($opt['current_page'], $opt['pages_count'], $opt['site_url'].'catalog/'.$opt["slug"] . '/');?></div>
</div>

и само модальное окно

        $(document).ready(function() {
        var Name = $('.name').attr('name');
        $("a").click(function() {
               var name = $(this).attr("name");
               alert(name);
        $('a[name=????????]').click(function(e) {
            e.preventDefault();
            var id = $(this).attr('href');
            var maskHeight = $(document).height();
            var maskWidth = $(window).width();
            $('#mask').css({'width':maskWidth,'height':maskHeight});
            $('#mask').fadeIn(1000);
            $('#mask').fadeTo("slow",0.8);
            var winH = $(window).height();
            var winW = $(window).width();
            $(id).css('top', '5%');                              
            $(id).css('left', '10%');
            $(id).fadeIn(2000);
        });
        $('.window .close').click(function (e) {
            e.preventDefault();
            $('#mask, .window').hide();
        });
        $('#mask').click(function () {
            $(this).hide();
            $('.window').hide();
        });
    });
});

Всем спасибо если хотя бы прочитаете все это...

Поделиться

33

Re: Каталог

Всем спасибо, вопрос решен собственными силами..:)

Поделиться