Посмотрите видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
если без правок движка Рейтинг в процентах для краткой новости в DLEКак сделать, чтобы рейтинг отображался в процентах (87%), а не в цифрах типа: +5
Нет, имел виду обычный, без правок php. Как reddis подсказал...Burial тип рейтинга +/-?
А можешь подсказать в другом случае. У меня при аякс загрузке новостей (Загрузить ещё), в следующих коротких новостях отображается не процент, а числа типа: +2244. Если обычно переключать страницы, то все нормально отображается: 65%, 97% ...если без правок движка Рейтинг в процентах для краткой новости в DLE
$(document).ready(function(){
$("body").addClass("js");
$('body').on('click', '.fav-guest', function() {
DLEalert("Регистрируйтесь, и вы сможете добавлять видео, создавать свои закладки, оценивать и многое другое!", 'Необходима регистрация');
return false;
});
$('.sorter').each(function(){
var a = $(this),
b = a.find('li[class] a').html();
a.append('<span>'+b+'<span class="fa fa-angle-down"></span></span>');
a.click(function() {
$(this).find('form').fadeToggle(100);
});
});
$('#h-fav').html($('#l-fav').html());
$('.th-rate-in').wRatePercent();
$('.f-rate').each(function(){
var rate = $(this),
rcounts = rate.find('.rate-counts'),
rdata = rate.find('.rate-data'),
rrate = parseInt(rdata.find('.ratingtypeplusminus').text(), 10),
rvote = parseInt(rdata.find('span[id*=vote]').text(), 10);
rcounts.prepend('<div><span class="rate-perc">0%</span><span class="rate-likes">(0/0)</span></div><div class="rate-bar"><div class="rate-fill"></div></div>');
if ( rvote >= rrate && rvote > 0 ) {
var m = (rvote - rrate)/2,
p = rvote - m,
fill = Math.round(p/rvote*100);
rate.find('.rate-fill').css({'width':''+fill+'%'});
rcounts.find('.rate-likes').html('('+p+'/'+m+')');
rcounts.find('.rate-perc').html(fill+'%');
};
});
$("body").on("click","#pagi-load a",function(){var a=$(this).attr("href"),b=$(this).offset().top-200;return void 0!==a&&$.ajax({url:a,beforeSend:function(){ShowLoading("")},success:function(c){$("#bottom-nav").remove(),$("#dle-content").append($("#dle-content",c).html()),$("#dle-content").after($("#bottom-nav")),$(".t-rate:not(.wp)").wRatePercent(),window.history.pushState("","",a),$("html, body").animate({scrollTop:b},800),HideLoading("")},error:function(){HideLoading(""),alert("что-то пошло не так")}}),!1})
$('body').on('click', '.fav-guest', function() {
DLEalert("Регистрируйтесь, и вы сможете добавлять видео, создавать свои закладки, оценивать и многое другое!", 'Необходима регистрация');
return false;
});
$('.btn-scr').click(function(){
$('.f-screens').fadeToggle(0);
});
$('.btn-dl:has(ul) > a').click(function() {
$(this).next('ul').fadeToggle(0);
return false;
});
$('body').append('<div class="close-overlay" id="close-overlay"></div><ul class="side-panel" id="side-panel"></ul>');
$('.h-menu, ul.side-bcc').each(function() {
$($(this).html()).appendTo('#side-panel');
});
$(".btn-menu").click(function(){
$('#side-panel').addClass('active');
$("#close-overlay").fadeIn(200);
});
$(".close-overlay").click(function(){
$('#side-panel').removeClass('active');
$('#close-overlay').fadeOut(200);
});
$("#login-box").dialog({
autoOpen: false,
modal: true,
show: 'fade',
hide: 'fade',
width: 320
});
$('.show-login').click(function(){
$('#login-box').dialog('open');
});
$('#ac-av').html($('#lb-ava').html());
$(".add-comm-btn").click(function(){
$("#add-comm-form").slideToggle(200);
});
$(".reply").click(function(){
$("#add-comm-form").slideDown(200);
});
$('body').on('click','.ac-textarea textarea, .fr-wrapper',function(){
$('.add-comm-form').addClass('active').find('.ac-protect').slideDown(400);
});
$('.lb-soc a, .ac-soc a').on('click',function(){
var href = $(this).attr('href');
var width = 820;
var height = 420;
var left = (screen.width - width)/2;
var top = (screen.height - height)/2-100;
auth_window = window.open(href, 'auth_window', "width="+width+",height="+height+",top="+top+",left="+left+"menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no");
return false;
});
$('#dle-content > #dle-ajax-comments').appendTo($('#full-comms'));
$('body').append('<div id="gotop"><span class="fa fa-chevron-up"></span></div>');
var $gotop=$('#gotop');
$(window).scroll (function () {
if ($(this).scrollTop () > 300) {$gotop.fadeIn(200);
} else {$gotop.fadeOut(200);}
});
$gotop.click(function(){
$('html, body').animate({ scrollTop : 0 }, 'slow');
});
});
function doRateLD( rate, id ) {
ShowLoading('');
$.get(dle_root + "engine/ajax/rating.php", { go_rate: rate, news_id: id, skin: dle_skin, user_hash: dle_login_hash }, function(data){
HideLoading('');
if ( data.success ) {
var rating = data.rating;
rating = rating.replace(/</g, "<");
rating = rating.replace(/>/g, ">");
rating = rating.replace(/&/g, "&");
$("#ratig-layer-" + id).html(rating);
$("#vote-num-id-" + id).html(data.votenum);
var rt = parseInt($(rating).text()),
m = (data.votenum - rt)/2,
p = data.votenum - m,
fill = Math.round(p/data.votenum*100);
fRate = $("#f-rate-" + id);
fRate.find('.rate-fill').css({'width':''+fill+'%'});
fRate.find('.rate-likes').html('('+p+'/'+m+')');
fRate.find('.rate-perc').html(fill+'%');
} else if (data.error) {DLEalert ( data.errorinfo, dle_info );}
}, "json");
};
jQuery.fn.wRatePercent = function(){
return this.each(function() {
var a = $(this);
var b = parseInt(a.find('.ratingtypeplusminus').text(),10);
var c = parseInt(a.find('span[id*=vote]').text(),10);
if ( c >= b && c > 0 ) {
var t = Math.round((c - (c - b)/2)/c*100);
a.text(t+'%');
} else {a.text('0%');};
a.addClass('wp');
});
};
/* end */
Burial тип рейтинга +/-?
Если да, то в show.*.php после
добавитьPHP:$tpl->set( '[/rating]', "" );
В шаблоне уже выводить {rating_proc}PHP:$rm = ($row['vote_num'] - $row['rating'])/2; $rp = $row['rating'] + $rm; $rating_proc = $rp+$rm; $tpl->set( '{rating_proc}', $rating_proc);
например вместо 10 в рейтинге сколько он показывает? тут остается простая математика, и если что-то не так отображает, то это легко можно привести к нужному виду, преобразовав $rating_proc в нужный вид.Чет не хочет работать этот хак, кэш чистил все без толку, показывает цифры
Может это неполный код?
как привести в нужный вид? подскажи пожалуйстанапример вместо 10 в рейтинге сколько он показывает? тут остается простая математика, и если что-то не так отображает, то это легко можно привести к нужному виду, преобразовав $rating_proc в нужный вид.
как привести в нужный вид? подскажи пожалуйста
$rating_proc = $rp+$rm;
$rating_proc = ($rp+$rm)*10;
это простая математика сложения двух чисел, отрицательного и положительного рейтинга! В зависимости от того, в каком виде выведены значение рейтинга, можно изменить его в нужный вид, например,Код:$rating_proc = $rp+$rm;
тем самым мы наш рейтинг умножим на 10.Код:$rating_proc = ($rp+$rm)*10;
там уже делай округление round($rating_proc,0)вместо 117, получилось 116.23931623932
Нужно$(".t-rate:not(.wp)").wRatePercent()
Так не получилось чёт ) Всё равно также подгружает следующие новости: +3959...Нужно
$(".t-rate:not(.wp)").wRatePercent()
заменить на
$(".th-rate-in:not(.wp)").wRatePercent()
Суть в том, что нужно перезапустить функцию после подгрузки. В коде выше было так. Значит код напутан. Скинь сайт в лс.Так не получилось чёт ) Всё равно также подгружает следующие новости: +3959...
Здравствуйте! Скажите пожалуйста куда вставить код round($rating_proc,0) , чтобы сработало округление цифры???там уже делай округление round($rating_proc,0)
вместо $rating_procЗдравствуйте! Скажите пожалуйста куда вставить код round($rating_proc,0) , чтобы сработало округление цифры???