Вход Регистрация
Файл: oc-admin/themes/modern/js/market.js
Строк: 387
<?php
function installMarketItem(thatItem){
    $(
".ui-dialog-content").dialog("close");
    $(
'<div id="downloading"><div class="osc-modal-content"><div class="spinner"></div>'+theme.langs.wait_download+'</div></div>').dialog({title:theme.langs.downloading+'...',modal:true,width:'auto',position: ['center']});
        var 
marketCode thatItem.attr('data-code');
        var 
marketType thatItem.attr('data-type')+'s';
        
// page to redirect once is installed
        
var pageRedirect 'plugins';
        if(
marketType=='plugins') {
            
pageRedirect 'plugins';
        } else if(
marketType=='themes') {
            
pageRedirect 'appearance';
        } else if(
marketType=='languages') {
            
pageRedirect 'languages';
        }
        $.
getJSON(
        
theme.marketAjaxUrl,
        {
"code" marketCode"section" marketType},
        function(
data) {
            var 
content  data.message;
            var 
messages theme.langs[marketType];
            if(
data.error == 0) { // no errors
                
content += '<h3>'+messages.download_ok+'</h3>';
                
content += "<p>";
                
content += '<a class="btn btn-mini btn-green" href="'+theme.adminBaseUrl+'?page='+pageRedirect+'&marketError='+data.error+'&slug='+data.data['s_update_url']+'">'+theme.langs.ok+'</a>';
                
content += '<a class="btn btn-mini" href="javascript:location.reload(true)">'+theme.langs.close+'</a>';
                
content += "</p>";
            } else {
                
content += '<a class="btn btn-mini" href="javascript:location.reload(true)">'+theme.langs.close+'</a>';
            }
            $(
"#downloading .osc-modal-content").html(content);
            $(
"#downloading").dialog("option""position""center");
        });
}
function 
checkCompatibility(thatDialog){
    var 
notCompatible thatDialog.hasClass('not-compatible');
    if(
notCompatible){
            
content   = $('<div id="not-compatible-prompt"></div>');
            
container = $('<div id="not-compatible-prompt"></div>');
            
actions   = $('<p></p>');
            
btnOk     = $('<a class="btn btn-mini">'+theme.langs.proceed_anyway_btn+'</a>');
            
btnClose  = $('<a class="btn btn-mini btn-red">'+theme.langs.close+'</a>');

            
btnOk.click(function(){
                
installMarketItem(thatDialog);
            });

            
btnClose.click(function(){
                $(
".ui-dialog-content").dialog("close");
            });

            
content.append(container.append(theme.langs.proceed_anyway).append(actions.append(btnClose).append(btnOk)));

            $(
content).dialog({title:theme.langs.sure,modal:true});
    } else {
        
installMarketItem(thatDialog);
    }
}
$(function(){
    $(
"body").on("click"'.ui-dialog-content a.more', function(){
        var 
notCompatible = $(this).parents('.ui-dialog');
        var 
thatDialog = $(this);

        $(
".ui-dialog-content").dialog("close");

        
checkCompatibility(thatDialog);
        return 
false;
    });

    $(
"body").on("click"'.ui-dialog-content a.diag-buy-btn', function(e) {
        
e.stopPropagation();
        
window.location theme.adminBaseUrl '?page=market&action=buy&' theme.CSRFToken '&url=' + $(this).attr("data-code");
    });


    $(
'.mk-item-parent').click(function(event){
        
event.preventDefault();
        var 
thatItem = $(this);
        var 
sizes = {
             
plugins:{width:645}
            ,
languages:{width:645}
            ,
themes:{width:445}
        }

        var 
section thatItem.attr('data-type');
        var 
bg thatItem.attr('data-gr');
        var 
letter thatItem.attr('data-letter');
        
itemTemp = $('a[data-type="'+section+'"]').index($(this));

        var 
item null;

        
// get json data
        
$.getJSON(
            
theme.adminBaseUrl+'?page=ajax&action=check_market',
            {
"code" : $(this).attr('href').replace('#',''), 'section' section},
            function(
data){
                
item data;

                if(
item!=null) {
                    var 
description = $(item.s_description).text();
                    var 
dots '';
                    var 
versions item.s_compatible.split(',');
                    var 
banner false;
                    var 
screenshots '';
                    var 
textButton '';
                    var 
compatibleText '';
                    var 
compatibleClass '';
                    var 
str_letter '';
                    if(
thatItem.hasClass('not-compatible')) {
                        
compatibleText item.s_compatible " - "  theme.langs.not_compatible;
                        
compatibleClass 'not-compatible';
                        
textButton theme.langs.update;
                    }

                    if(
description.length 120){
                        
dots '...';
                    }
                    if(
item.s_image) {
                        
banner item.s_image;
                    }
                    if(
item.s_banner != null){
                        
banner item.s_banner_path+item.s_banner;
                    }
                    if(!
banner){
                        
banner theme.themUrl+'images/gr-'+bg+'.png';
                        
str_letter letter;
                    }

                    var 
preview '';
                    if(
section == 'theme' && item.a_images){
                        if(
item.a_images.length 0){
                            if(
item.s_preview != '') {
                                
preview '<a target="_blank" class="btn-market-preview" href="'+item.s_preview+'">'+theme.langs.preview_theme+'</a>';
                            }

                            
screenshots '<tr>'
                                
+'<td colspan="3"><h4>'+theme.langs.screenshots+'</h4>';
                                for(
0item.a_images.lengthi++){
                                    
screenshots += '<a class="fancybox screenshot" data-fancybox-group="'+item.s_title+'" href="'+item.a_images[i]['s_image']+'" ><img src="'+item.a_images[i]['s_thumbnail']+'" /></a>';
                                    if(
== 2) break;
                                }
                             
screenshots += '</td></tr>';
                        }
                    }
                    if(
section == 'language'){
                        
str_letter =  item.s_update_url;
                    }

                    var 
_mod_date   '';
                    if(new 
String(item.dt_mod_date)!='null') {
                        
_mod_date = new Date(item.dt_mod_date);
                    } else {
                        
_mod_date = new Date(item.dt_pub_date);
                    }

                    
// format date
                    
var date_mod    _mod_date.getFullYear()+'-';

                    var 
_month      = new String(_mod_date.getMonth()+1);
                    if( 
_month.length == ) {
                        
date_mod += '0' _month '-';
                    } else {
                        
date_mod += _month '-';
                    }

                    var 
_day    = new String(_mod_date.getDate());
                    if( 
_day.length == ) {
                        
date_mod += '0' _day;
                    } else {
                        
date_mod += _day;
                    }

                    if(
item.b_paid==&& item.s_buy_url!=undefined) {
                        var 
actions_text '<a class="diag-buy diag-buy-btn" data-code="'+item.s_buy_url+'" data-type="'+section+'">'+theme.langs.buy+' v.'+item.s_version+'</a>'
                            
+'<span class="block"><strong>'+theme.langs.requieres_version+'</strong> '+versions[0]+'</span>'
                            
+'<span class="block"><strong>'+theme.langs.compatible_with+'</strong> '+versions[(versions.length-1)]+'</span>'
                            
+'<span class="block"><strong>'+theme.langs.downloads+'</strong> '+item.i_total_downloads+'</span>'
                            
+'<span class="block"><strong>'+theme.langs.last_update+'</strong> '+date_mod+'</span>'
                            
+'<a href="#" data-code="'+item.s_buy_url+'" class="diag-buy-btn manual-buy">'+theme.langs.buy+'</a>';
                    } else {
                        var 
actions_text '<a class="more" data-code="'+item.s_update_url+'" data-type="'+section+'">'+theme.langs.download+' v.'+item.s_version+'</a>'
                            
+'<span class="block"><strong>'+theme.langs.requieres_version+'</strong> '+versions[0]+'</span>'
                            
+'<span class="block"><strong>'+theme.langs.compatible_with+'</strong> '+versions[(versions.length-1)]+'</span>'
                            
+'<span class="block"><strong>'+theme.langs.downloads+'</strong> '+item.i_total_downloads+'</span>'
                            
+'<span class="block"><strong>'+theme.langs.last_update+'</strong> '+date_mod+'</span>'
                            
+'<a href="'+item.s_source_file+'" class="manual">'+theme.langs.download_manually+'</a>';
                    }

                    print = 
'<div class="mk-item mk-item-'+section+'">'
                            
+'<div class="banner" style="background-image:url('+banner+');">'+str_letter+'</div>'
                            
+'<div class="mk-info">'
                            
+'<table>'
                                
+'<tr>'
                                    
+'<td style="max-width: 240px;">'
                                        
+'<h3>'+item.s_title+'</h3>'
                                        
+'<i>'+theme.langs.by+' '+item.s_contact_name+'</i>'
                                        
+'<div class="description">'+description.substring(0,150)+dots+'</div>'
                                        
+'<p>'+preview+'</p>'
                                    
+'</td>'
                                    
+'<td class="spacer">'
                                    
+'</td>'
                                    
+'<td class="actions">'
                                        
actions_text
                                    
+'</td>'
                                
+'</tr>'
                                
+screenshots
                            
+'</table>'
                            
+'</div>'
                        
+'</div>';
                    var 
$print = $(print);
                    
$print.find('.screenshot:last img').addClass('last');

                    
$print.find('a.screenshot').fancybox({
                        
openEffect 'none',
                        
closeEffect 'none',
                        
nextEffect 'fade',
                        
prevEffect 'fade',
                        
loop false,
                        
helpers : {
                            
title : {
                            
type 'inside'
                            
}
                        },
                        
tpl: {
                            
prev'<a class="fancybox-nav fancybox-prev"><span></span></a>',
                            
next'<a class="fancybox-nav fancybox-next"><span></span></a>',
                            
closeBtn '<a class="fancybox-item fancybox-close" href="javascript:;"></a>'
                        
}
                    });

                    
$print.dialog({
                        
dialogClass:'market-dialog '+compatibleClass,
                        
titlecompatibleText,
                        
width:sizes[section+'s'].width,
                        
overlay: { opacity0.5background'black'},
                        
modal:true,
                        
open: function (){
                            $(
this).find('a.manual').blur();
                        }
                    });
                } else {
                    
// error trying to retrieve market api response
                    
alert(theme.langs.error_item);
                }
            }
        );
        return 
false;

    });
    $(
'.mk-item-parent .download-btn').bind('click', function(e) {
        
e.stopPropagation();
        
checkCompatibility($(this));
    });
    $(
'.mk-item-parent .buy-btn').bind('click', function(e) {
        
e.stopPropagation();
        
window.location theme.adminBaseUrl+'?page=market&action=buy&'+theme.CSRFToken+'&url='+$(this).attr("data-code");
    });
});
?>
Онлайн: 4
Реклама