• Страница 3 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Скрипты и коды для юкоз - Форум аццкого кодера » Записи участника » chila [70]
Результаты поиска
Дата: Среда, 10.04.2013, 14:20 | Сообщение #31 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


День добрый, может не по теме, но про рейтинг нашел только здесь... Есть ли возможность в ucozе сделать не один рейтинг у материала, а несколько.
Например у материала "х"
- рейтинг1 - 5*****
- рейтинг2 - 3***
- рейтинг3 - 4****
Чтобы можно было оценивать по разным критериям (за качество и за другую ерунду).. спасибо


 
Дата: Суббота, 11.05.2013, 00:36 | Сообщение #32 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Доброго времени суток...
Цитата (likbezz, Ср, 10.04.2013, 20:03:03)
Стандартно (системно) нет.

Возвращаюсь к "рейтингу" - есть идея как это сделать))...
Опишу как выглядит рейтинг:
У всех материалов оценка остается стандартная, допустим 5 звезд. А в самом материале три отдельных поля для голосования. Пример приведу с участием девушек -

Внешний вид - ***
Грудь - голосовать *****
Попа - голосовать *
а ниже кнопка - проголосовать, активная после выставления всех оценок и сообщение "Ваш голос учтено, спасибо, бла, бла".

После клика на "голосовать" скрипт должен передавать в стандартную голосовалку среднее число всех трех оценок. Ну, например, сложить все результаты, поделить на три и записать это число как голос пользователя....

Возможно ли сотворить сие чудо? И сколько$)) Естественно, радости не было бы предела, если бы скрипт сохранял средний рейтинг трех пунктов, например, посредством пхп, записывая результаты в отдельный файлик. Спасибо..


 
Дата: Суббота, 11.05.2013, 03:05 | Сообщение #33 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


)) если число не целое - округлить можно.
Цитата (likbezz, Сб, 11.05.2013, 01:09:46)
Среднее и не более 5 число.
То ест 9 передать не возможно.
Более 5 не получится. Если за каждый пункт отдали 5* = 15, ну и делим на три пункта, получаем средне = 5, передаем юкозу. Или 5* + 3* + 2* / 3 = 3,33 - округляем, передаем юкозу оценку 3*.

Если идем путем пхп, то записываем значения трех пунктов в файлик и отображаем на странице. Если проголосовало несколько человек, то делим на кол-во голосовавших и получаем нужный нам результат. Тобесть по примеру стандартного голосования (рейтинга) - заходим в материал и видим его рейтинг, например 4, 5 звезда пустая.
Кто, когда, за что - это лишнее)
И.. сколько$.. За мной не заржавеет. Естественно в разумных пределах)


 
Дата: Суббота, 11.05.2013, 12:04 | Сообщение #34 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Нет, никаких полей для ввода цифр не будет. Все стандартно, все те же звезды, как и всегда в юкозе используются. Принцип их действия тот же - при наведении меняют цвет, а при нажатии - фиксируют результат.
Набросал схему, прикрепил ниже. Без пхп, ну а как эти три пункта (пункты я имел ввиду 1пункт - бюст и т.д.) будут при загрузке страницы показывать их среднее значение...? Этот результат записывать куда-то нужно или я ошибаюсь?
По срокам - не горит. Буду очень признателен, в долгу не останусь. Спасибо!

Прикрепления: 8206221.jpg (63.3 Kb)

 
Дата: Суббота, 11.05.2013, 15:07 | Сообщение #35 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Цитата (likbezz, Сб, 11.05.2013, 13:35:13)
Результат невозможно разложить на составляющие, после голосования.

Средний результат имеется ввиду, что на конкретной странице в этом пункте проголосовало N кол-во человек в среднем 3*, например можно в пхп сделать таблицей в файле, ну или как это называется (не знаю) наподобие такого:
ID материала | результат 1-го пункта (1человек + 2-й + 3-й) | результат второго пункта | результат 3-го пункта | кол-во голосов... и т.д.
результаты складываются и делятся на кол-во голосовавших. Допустим, что за материал проголосовало 3 человека, за первый пункт первый поставил 3*, второй 5*, а третий поставил 4* - в сумме = 12* / 4 = 3* В итоге, в первом пункте среднее будет 3*.. ну и так далее. Т.е. в таблице суммируются значения и делятся на кол-во голосовавших. Средние значения в голосовалке стандартной тоже получатся правильные. Без пхп можно сделать без запоминания средних результатов, но все же они нужны. Прикрепил картинку средних результатов нескольких голосовавших...

Прикрепления: 7984131.jpg (40.1 Kb)

 
Дата: Вторник, 14.05.2013, 12:45 | Сообщение #36 | Тема: Как вставить альт ссылки в инпут?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Может не совсем по теме, но тоже с инпутом... В общем есть код:
Код
<a name="menu-title" href="#" alt="Нужно это" onclick="Zack(this);return false">Вставляет это</a>
<input type="text" onblur="if(this.value=='') this.value=this.title;" onfocus="if(this.value==this.title) this.value='';" name="zakaz" value="">
<script type="text/javascript">
var First = true;
function Zack (MenuTitl) {
     var zakaz = document.getElementsByName('zakaz')[0];
     var dop=zakaz.value+', ';
      if(First) {First=false;dop="";}
     zakaz.value = dop + MenuTitl.innerHTML;             
}
</script>


нужно алт ссылки вставлять в инпут, что поменять здесь? Заранее спасибо)


 
Дата: Вторник, 14.05.2013, 22:01 | Сообщение #37 | Тема: Как вставить альт ссылки в инпут?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


мм... то, что нужно. Спасибо!

Добавлено (14.05.2013, 22:01)
---------------------------------------------
не, рано радовался... у юкоза в почтовых формах нейм с цифрой - f7, а от того что-то нужно поменять. Если var f7 - не работает?!)

 
Дата: Вторник, 14.05.2013, 23:10 | Сообщение #38 | Тема: Как вставить альт ссылки в инпут?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Пробовал так, но не получилось. На всякий случай прикреплю код еще разок...
Код
<a href="javascript://" title="Нужно это" onclick="Zack(this);return false">Вставляет это</a>  
<input type="text" onblur="if(this.value=='') this.value=this.title;" onfocus="if(this.value==this.title) this.value='';" name="f7" value="">  
<script type="text/javascript">  
var First = true;  
function Zack (MenuTitl) {  
       var zakaz = document.getElementsByName('f7')[0];
       var dop=zakaz.value+', ';  
        if(First) {  
                  First=false;  
                  dop="";  
              }  
       zakaz.value = dop + MenuTitl.title;               
}  
</script>


 
Дата: Вторник, 14.05.2013, 23:59 | Сообщение #39 | Тема: Как вставить альт ссылки в инпут?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


О_о... просмотрел, у меня два валуя с одним неймом были)) Спасибо!)

 
Дата: Четверг, 06.06.2013, 22:36 | Сообщение #40 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


)) да, да... стандартным голосованием разделить не получится... Спасибо, буду ждать результатов... Если цену не выставляете, значит переведу на свое усмотрение)

Добавлено (06.06.2013, 22:36)
---------------------------------------------
Доброго времени суток...

Цитата (likbezz, Сб, 11.05.2013, 04:45:36)
Если не горит, то оформляете как это будет выглядеть, пишите как должно работать, примерно, будет время напишу.

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


 
Дата: Пятница, 07.06.2013, 01:33 | Сообщение #41 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Цитата (likbezz, Чт, 06.06.2013, 21:43:39)
Понадобится внешняя база и хост с php..

Возможно, финансовая поддержка поможет.. например оплатить пхп на юкозе.)

Раз пишу здесь, прошу помочь еще с одной маленькой деталью. Есть готовый и даже рабочий js, который меняет стандартную юкозовскую дату:

Код
<script>  
$('.news-d').each(function(){   
   date = String($(this).attr('title')).split('.');   
   temp_date = new Date();   
   day = temp_date.getDate();   
   month = temp_date.getMonth() + 1;   
   if(month < 10) { month = '0'+month;}   
   if(date[0] == 'Вчера'){   
   date[0] = day-1;   
   if(date[0] == 0){   
   if(month < 10) { temp_date = new Date();   
   day = temp_date.getDate()-1;   
   month = temp_date.getMonth();   
   date[0] = day ;   
   date[1] = '0'+month;}}   
   else {date[1] = month;}   
   }   
   if(date[0] == 'Сегодня') {   
   date[1] = month;   
   date[0] = day;   
   }    
   
  mes = '';  
  switch(date[1]){  
  case '01': mes = 'января';  
  break;  
  case '02': mes = 'февраля';  
  break;  
  case '03': mes = 'марта';  
  break;  
  case '04': mes = 'апреля';  
  break;  
  case '05': mes = 'мая';  
  break;  
  case '06': mes = 'июня';  
  break;  
  case '07': mes = 'июля';  
  break;  
  case '08': mes = 'августа';  
  break;  
  case '09': mes = 'сентября';  
  break;  
  case '10': mes = 'октября';  
  break;  
  case '11': mes = 'ноября';  
  break;  
  case '12': mes = 'декабря';  
  break;  
  }  
  $(this).html('<b>'+date[0]+'</b><br><span>'+mes+'</span>');  
  })  
</script>


Ищет в <div class="news-d" title="$DATE$"></div> и меняет "07.06.2013" на "07 июня"...
Вопрос: хотелось бы, чтобы добавлялся класс, если дата больше текущей или меньше.
Например, сегодня 07.06.2013, а материал добавлен 06.06.2013 то к диву добавляется класс ".old_date", т.к. добавленный материал устарел и дата меньше.
Если дата больше (будущее), то другой класс: ".future_date". Если дата текущая, ничего не меняем.
Заранее спасибо!


 
Дата: Пятница, 07.06.2013, 02:39 | Сообщение #42 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Цитата (likbezz, Пт, 07.06.2013, 01:08:16)
Не проверял, но должно работать.

) заработало, но что-то не так....
1) если текущая дата ставит future_date, а нужно ничего не ставить
2) от 1 до 5 дней назад ставит old_date - правильно
3) если больше 5 дней назад, ставит future_date - почему?)
4) к будущим датам вроде нормально добавляет future_date
))загадка

.. спасибо за оперативный ответ

Добавлено (07.06.2013, 02:39)
---------------------------------------------
Выше написанный код (если не ошибаюсь) нельзя помещать в функцию. Он может запускаться только во время загрузки сайта т.е. как есть. Но, хотелось бы запускать его по нажатию на кнопку... Если помните, делали скрипт для подтягивания страниц. Если новые страницы подгружаются то этот скрипт должен снова заработать и переделать даты в новые даты...

 
Дата: Пятница, 07.06.2013, 15:16 | Сообщение #43 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Цитата (likbezz, Пт, 07.06.2013, 07:29:46)
развернуть дату надо, YYYY, MM, DD

Если развернуть дату, то остальной скрипт выводит день как год...
текущая дата действительно стоит "сегодня")))
Ну и как поместить в функцию, дабы потом вызвать ее в случае надобности
Спасибо)

Добавлено (07.06.2013, 11:51)
---------------------------------------------
Возможно, лучше развернуть дату не в настройках юкоза, а в скрипте, чтобы результат был с YYYY.MM.DD в YYYY.MM.DD?)

Добавлено (07.06.2013, 11:52)
---------------------------------------------

Цитата (chila, Пт, 07.06.2013, 10:51:17)
YYYY.MM.DD в YYYY.MM.DD

ошибся) dd.mm.yyyy в yyyy.mm.dd

Добавлено (07.06.2013, 15:16)
---------------------------------------------
Методом "тыка" сделал так:
var date = String($(this).attr('title')).split('.').reverse();
даты отображаются правильно и остальное все работает правильно.
Но, все же, если функцией reverse() менять не "var date", а
var thisDate=Math.round($(this).attr('title').replace(/\./g,'')),curDate=Math.round($('#curDate').html().replace(/\./g,''))||false; то куда ее прописать здесь или что изменить, чтобы перед удалением точек срабатывал реверс для thisDate и curDate?
Спасибо

 
Дата: Суббота, 08.06.2013, 00:43 | Сообщение #44 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Спасибо! все работает))
а, про функцию, я немного недопонимаю
Цитата (likbezz, Пт, 07.06.2013, 20:15:49)
function myFunction(){
  /* здесь тело функции */
}

- это понятно.. но как ее потом вызвать из другого скрипта (если помните скрипт добавления страниц) при нажатии на кнопку - добавляются новые страницы и параллельно нужно обновить, вызвать повторно эту функцию... может что-то не так объяснил, уж прошу простить. js - не по моей части)


 
Дата: Четверг, 18.07.2013, 02:16 | Сообщение #45 | Тема: Как реализовать рейтинг материалов в информере звёздами?
chila
Лейтенант
Группа: Проверенные
Сообщений: 70
Награды: 0
Репутация: 0
Статус: Offline


Цитата (likbezz, Сб, 08.06.2013, 10:27:03)
myFunction();

Странно, я так пробовал, но ничего не получалось... Видно где-то просмотрел. Спасибо, все фунциклирует!
P.S. php голосования все же буду ждать)

Добавлено (18.07.2013, 01:50)
---------------------------------------------
Доброго времени суток! Назрело два вопросика:
1) На странице добавления/редактирования материала всплывает окно после сохранения изменений или редактирования, повествующее о том, что все сохранено / добавлено или ошибка... Нужно этот текст заменить. Методом тыка нацарапал что-то напоминающее:

Код
<script type="text/javascript">
$('#bdF77').click(function(){
$('.myWinCont').html('что-то другое');
})
</script>

хочется добавить немного условий, например если ошибка то - этот html, если добавлен материал - этот html, если сохранено - html.
В случае с добавлением и с редактированием, хочется выдерать ссылку на страницу материала, она находится в class=myWinSuccess, примерно так: .html('код'+ссылка+'остальной код')...
Надеюсь, что понятно написал)

2)Чисто теоретически - из кода $TAGS$ можно извлечь только слова, без <a href.. и вставить, например в <meta name="keywords", ну или просто в <body>

Заранее спасибо!

Добавлено (18.07.2013, 02:16)
---------------------------------------------
С последним справился)

 
Скрипты и коды для юкоз - Форум аццкого кодера » Записи участника » chila [70]
  • Страница 3 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:


Мобильная версия