На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Положения
1. Раздел "Готовые движки" предназначен для поиска и обсуждения готовых веб-решений.
2. Ответы с предложением разработать свой собственный движок будут удаляться без предупреждения.
  
    > Нужны советы по доработке движка ИМ , Сделал движок, нужны советы по функционалу
      Здравствуйте! Сделал движок ИМ на чистом javascript работает даже на гугл диске.
      Отсутствие серверной части накладывает некоторые ограничения, которые я (как мне кажется) решил.
      Посмотрите пожалуйста демку моего магазина http://novye-podarki.ru/heeg.html и скажите, что совсем -совсем не нравится, а что нужно переделать.
      Считаю что у моего движка огромный потенциал. Например Вконтакте для установки приложения iframe требует наличия https , а чтобы получить сертификат, даже бесплатный нужен хостинг с постоянным ip и довольно много возни с получением сертификата. Гугл диск и отсутствие php в моем движке решает эту проблему и магазинчик отлично смотрится на сайте VK :whistle:
        нажал f5 и все мои заказы исчезли
          Хм. а какой браузер? весь заказ хранится в куки, поэтому если в настройках вашего браузера стоит удалять куки, то заказ будет стираться при обновлении страницы.
          А зачем вы нажали f5? :huh:
            Цитата heeg.ru @
            А зачем вы нажали f5

            потому что захотел перезагрузить страницу.

            Цитата heeg.ru @
            Хм. а какой браузер

            я.браузер

            Цитата heeg.ru @
            весь заказ хранится в куки, поэтому если в настройках вашего браузера стоит удалять куки, то заказ будет стираться при обновлении страницы.

            настроек не стоит. Почему именно куки, почему не более подходящие для этого вещи - localStorage, IndexedDB?
              Цитата Serafim @
              подходящие для этого вещи - localStorage, IndexedDB?

              согласен и размером больше и работать будет быстрее, просто не смог с этим разобраться а помочь некому :-?
                ExpandedWrap disabled
                  localStorage.setItem('key', 'value')
                  не знаю как это переделать на localStorage это


                  ExpandedWrap disabled
                    /******************************************************
                                    data storage and retrival
                         ******************************************************/
                        
                        /* load cart from cookie */
                        me.load = function () {
                            var me = this;
                            /* initialize variables and items array */
                            me.items = {};
                            me.total = 0.00;
                            me.quantity = 0;
                            
                            /* retrieve item data from cookie */
                            if( readCookie('simpleCart') ){
                                var data = unescape(readCookie('simpleCart')).split('++');
                                for(var x=0, xlen=data.length;x<xlen;x++){
                                
                                    var info = data[x].split('||');
                                    var newItem = new CartItem();
                                
                                    if( newItem.parseValuesFromArray( info ) ){
                                        newItem.checkQuantityAndPrice();
                                        /* store the new item in the cart */
                                        me.items[newItem.id] = newItem;
                                    }
                                }
                            }
                            me.isLoaded = true;
                        };
                        
                        
                        
                        /* save cart to cookie */
                        me.save = function () {
                            var dataString = "";
                            for( var item in this.items ){
                                dataString = dataString + "++" + this.items[item].print();
                            }
                            createCookie('simpleCart', dataString.substring( 2 ), 30 );
                        };


                  и это
                  ExpandedWrap disabled
                    function createCookie(name,value,days) {
                        if (days) {
                            var date = new Date();
                            date.setTime(date.getTime()+(days*24*60*60*1000));
                            var expires = "; expires="+date.toGMTString();
                        }
                        else var expires = "";
                        document.cookie = name+"="+value+expires+"; path=/";
                    }
                     
                    function readCookie(name) {
                        var nameEQ = name + "=";
                        var ca = document.cookie.split(';');
                        for(var i=0;i < ca.length;i++) {
                            var c = ca[i];
                            while (c.charAt(0)==' ') c = c.substring(1,c.length);
                            if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length,c.length);
                        }
                        return null;
                    }
                     
                    function eraseCookie(name) {
                        createCookie(name,"",-1);
                    }


                  пока :scratch: для меня это слишком сложно
                    Цитата heeg.ru @
                    Сделал движок ИМ на чистом javascript

                    Цитата heeg.ru @
                    не знаю как это переделать на localStorage

                    :wacko:


                    Учитывая то, что работать с LS в разы проще, нежели с кукисами - вообще не понимаю в чём проблема... Что-то тут не так <_<

                    Добавлено
                    Не просто в разы проще, а беспредельно. Записывая кукисы надо знать не только на какой домен их класть, какой протокол они могут использовать, на какое время, как сохранять (постоянно или сессионно). В то же время у локал стораджа всего два метода - сохранить значение под N псевдонимом и получить значение по N псевдониму.

                    Добавлено
                    ну не буквально два - ещё есть методы удалить значение и очистить всё, но это мелочи
                      очевидно, что я не разбираюсь ни с тем ни с другим :D просто взял готовые куски из другого кода :whistle:
                        Настало твоё время свершений! Тот момент в изучении элементарнейшего апи =)
                          все просто и непросто. Представь, что у тебя есть огромный код, в котором используются куки. данные из куки считываются массивом и элементы этого массива где-то в коде используются. Все работает. И тут ты решаешь переделать на ЛС. Как его считать массивом? да и зачем вообще его считывать массивом, если к переменным можно прямо из кода обращаться? Где по коду искать эти переменные? Это переделка 100% всего скрипта. Просто заменить одно хранилище на другое не получится. :no-sad:
                            к ls тоже как к массиву можно обращаться, если что.

                            Добавлено
                            но только на чтение.
                            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                            0 пользователей:


                            Рейтинг@Mail.ru
                            [ Script execution time: 0,0376 ]   [ 15 queries used ]   [ Generated: 28.04.24, 11:04 GMT ]