$iv){ if($ik == 'hidden') continue; foreach($iv as $ikk => $ivv){ if($ikk == 'admin_username' && preg_match('/disabled=\"disabled\"/is', $ivv['tag'])){ $random_username = false; } if($ikk == 'admin_pass' && !empty($ivv['minlen'])){ $random_pass_len = (int) $ivv['minlen']; } } } if(empty($random_pass_len) || $random_pass_len < 10){ $random_pass_len = 10; } $info['install'] = '
'; if(ampps() && !is_ampps_premium() && count($user['ins']) >= 3){ $info['install'] .= '
'.$l['ampps_notify_premium'].'
'; } if(!can_use_soft($soft, $use_msg)){ $info['install'] .= '
'.$use_msg.'
'; } if(!can_install_soft($soft, $use_msg)){ $info['install'] .= '
'.$use_msg.'
'; } $info['install'] .= error_handle($error, "100%", 0, 1).''; $info['install'] .= '
'.$l['setup'].'

'; $sret = apply_filters('pre_software_setup_theme', $soft); if(!empty($sret) && $sret != $soft){ $info['install'] .= $sret; } $info['install'] .= '
'.$l['choose_url_exp'].'
'; if(empty($softpanel->noprotocol) && empty($globals['hide_protocol'])){ $info['install'] .= '
'.$l['choose_protocol'].' '.$l['choose_protocol_exp'].'
'.$l['choose_domain'].' '.$l['choose_domain_exp'].' '; } $info['install'] .= '
'; if(empty($globals['no_indir'])){ $info['install'] .= ' '.$l['in_directory'].' '.$l['in_directory_exp'].' '; } $info['install'] .= '
'; if(count($software['branch']) > 1){ $info['install'] .= ' '.$l['choose_version_exp'].'

'; } $info['install'] .= '
'.$l['ins_url'].' :
'; if(!empty($datadir)){ $info['install'] .= '
'.$l['datadir_exp'].'
'; } if(!empty($dbtype)){ $dbdetails = array(); $dbdetails['dbname'] = ''; $dbdetails['dbhost'] = ''; $dbdetails['dbusername'] = ''; $dbdetails['dbuserpass'] = ''; $dbdetails['dbname'] = mysqldbname($software['softname']); if(method_exists($softpanel, 'mysqldbname')){ $dbdetails['dbname'] = $softpanel->mysqldbname(); } // This is default $dbdetails['dbhost'] = 'localhost'; // Don't prefill database details if(!empty($globals['no_prefill_db'])){ $dbdetails['dbname'] = ''; $dbdetails['dbhost'] = ''; } $dbdetails = apply_filters('post_load_dbdetails', $dbdetails); if(aefer() && empty($softpanel->auto_managedb)){ $info['install'] .= '
'.$l['database_name_exp_aefer'].'
'; } if(!empty($softpanel->no_db_create)){ // Database Username $info['install'] .= '
'.$l['dbusername_exp'].'
'; // Database Password $info['install'] .= '
'.$l['dbuserpass_exp'].'
'; //Database Host Name $info['install'] .= '
'.$l['hostname_exp'].'
'; } } // Are there any cron jobs if(!empty($cron)){ $info['install'] .= '
'.$l['cron_job_exp'].'
'; } // Do we need to load any additional fields required by server admin ? if(!empty($GLOBALS['install_fields'])){ foreach($GLOBALS['install_fields'] as $ifk => $ifv){ if(empty($ifv['input'])) continue; //Adding class to input if(preg_match('/type="text"/is', $ifv['input']) && !preg_match('/class="form-control"/is', $ifv['input'])){ $ifv['input'] = preg_replace('/>/is', ' class="form-control">',$ifv['input']); } if(preg_match('/ '.$l['view_items'].'
'; } } $info['install'] .= '
'; } if(!empty($is_plugins_group)){ $info['install'] .= '
'.((softaculous_is_pro() && (empty($globals['wp_fp_pref']) || $globals['wp_fp_pref'] != 2)) ? ''.$l['featured_plugins_pro'].'' : ''); } foreach($sets as $sk => $sv){ if(!empty($globals['wp_fp_pref']) && $globals['wp_fp_pref'] == 2 && !empty($sv['featured'])){ continue; } if(!empty($is_plugins_group)){ $info['install'] .= '
'; }else{ if(preg_match('/dbprefix/is', $sv['tag'])){ $dbprefix[$sk] = $sv; continue; } //Adding class to input if(preg_match('/type="text"/is', $sv['tag'])){ $sv['tag'] = preg_replace('/>/is', ' class="form-control">',$sv['tag']); } if(preg_match('/ ' : '').' '.(preg_match('/admin_pass|softpass/is', $sv['tag']) && (!empty($softpanel->securepass) || !empty($globals['random_pass'])) ? ' ' : '').' '.(preg_match('/admin_pass|softpass/is', $sv['tag']) && !empty($globals['empty_pass']) ? ' ' : '').' '.(preg_match('/dbprefix/is', $sv['tag']) && !empty($globals['random_dbprefix']) ? ' ' : '').' '.(preg_match('/admin_username/is', $sv['tag']) && !empty($globals['random_username']) && !empty($random_username) ? ' ' : '').' '.(preg_match('/admin_username/is', $sv['tag']) && !empty($globals['empty_username']) && !empty($random_username) ? ' ' : '').' '.(preg_match('/admin_email/is', $sv['tag']) && !empty($globals['empty_email']) ? ' ' : '').' '.(preg_match('/admin_username/is', $sv['tag']) && !empty($globals['admin_prefix']) && empty($globals['empty_username']) && empty($globals['random_username']) && !empty($random_username) ? ' ' : '').' '.(preg_match('/admin_username/is', $sv['tag']) && !empty($globals['use_eu_username']) && empty($globals['empty_username']) && !empty($random_username) && empty($globals['random_username']) ? ' ' : '').' '.(preg_match('/admin_email|board_email|site_email|bug_email|noreply_email|feedback_email|wiki_mail/is', $sv['tag']) && !empty($globals['use_eu_email']) ? ' ' : '').'
'; } } if(!empty($is_plugins_group)){ $info['install'] .= '
'; } $info['install'] .= ' '; } $info['install'] .= ''; //The Hidden groups if(!empty($settings['hidden'])){ foreach($settings['hidden'] as $sk => $sv){ $info['install'] .= $sv['tag'].' '.(preg_match('/softmail/is', $sv['tag']) ? ' ' : ''); } } }//End of if($settings) //Is it a SOFTCOPY, then Leave a NOTE if(!empty($setupcontinue)){ $info['install'] .= ' '.$l['softcopy_note'].' '; } // Advance option $info['install'] .= '
'.$l['adv_option'].'
'; // Do we have to display the theme if((!empty($globals['eu_enable_themes']))){ if(function_exists('__'.$software['softname'].'_theme_show_options')){ $info['install'] .= call_user_func('__'.$software['softname'].'_theme_show_options'); } } $info['install'] .= '



'.(empty($globals['off_email_link']) && empty($globals['off_install_mail']) ? ''.$l['ins_emailto'].' : ' : '').'
'.csrf_display().'
'; $info['install'] .= '


'; }elseif(!empty($installed)){ // Check if the script supports Sign On $has_sign_on = has_sign_on($soft); $return = ''; $role = ''; if(can_wordpress_manager($soft)){ $return .= ''.$l['return_to_wpm'].' '; $role = 'role="button"'; } $return .= ''.$l['return'].''; //Filter to customize the return to link $return = apply_filters('return_link', $return, $act); $info['install'] = '
'.$l['congrats'].'

'.$software['name'].' '.$l['succesful'].' :
'.$__settings['softurl'].' '.(!empty($software['adminurl']) ? '
'.$l['admin_url'].' : '.$__settings['softurl'].'/'.$software['adminurl'].'' : '').'

'.(!empty($setupcontinue) ? $l['setup_continue'].' :
'.$__settings['softurl'].'/'.$setupcontinue.'

' : '').' '.$l['enjoy'].'

'.(!empty($pfx_error) ? error_handle($pfx_error, "100%", 0, 1) : '') .(!empty($notes) ? $l['install_notes'].' :

'.softparse($notes, $soft).'


' : '').' '.$l['please_note'].'

'.(!empty($globals['ampps_enabled']) && empty($globals['no_ampps']) && $globals['softpanel'] != 'ampps' ? lang_vars($l['ampps_download'], array($software['name'])).'

' : '').' '.$l['regards'].',
'.$l['softinstaller'].'



'.$return.'


'; if(empty($globals['install_tweet_off']) || empty($globals['lictype'])){ $info['install'] .= '
'.$l['install_tweet_sub'].' :

'; } $info['install'] .= '


'; } softheader($l[''].$software['name']); //Added the show_text & hide_text variable for when the header is not loaded (Iframe) echo ' <script> var show_text = "'.$l['show'].'"; var hide_text = "'.$l['hide'].'"; </script>'; $loadedinfo = array('install', 'overview', 'features', 'reviews', 'screenshots', 'ratings'); ?> <script language="JavaScript" src="<?php echo $theme['url'].'/js/tabber.js';?>" type="text/javascript"> </script> <script language="JavaScript" id="ratings_js_file" type="text/javascript"></script> <script language="JavaScript" id="review_js_file" type="text/javascript"></script> <script language="JavaScript" id="reviews_js_file" type="text/javascript"></script> <script type="text/javascript"> tabs = new tabber; tabs.tabs = new Array('<?php echo implode('\', \'', $loadedinfo);?>'); tabs.tabwindows = new Array('<?php echo implode('_win\', \'', $loadedinfo);?>_win'); tabs.inittab = <?php echo '\''.$init_tab.'\';';?> addonload('tabs.init();loadraterev();check_pass_strength();'); function loadraterev(){ <?php if(empty($globals['off_rating_link']) && $soft < 10000){ echo '$_(\'ratings_js_file\').src = "'.fastestmirror().'/ratingsjs.php?soft='.$soft.'&user='.$softpanel->user['name'].'&ip='.$_SERVER['SERVER_ADDR'].'";'; } if(empty($globals['off_review_link']) && $soft < 10000){ echo '$_(\'review_js_file\').src = "'.fastestmirror().'/reviewjs.php?soft='.$soft.'&user='.$softpanel->user['name'].'&ip='.$_SERVER['SERVER_ADDR'].'";'; echo '$_(\'reviews_js_file\').src = "'.fastestmirror().'/reviewsjs.php?soft='.$soft.'&user='.$softpanel->user['name'].'&ip='.$_SERVER['SERVER_ADDR'].'";'; } ?> }; function notifyversion(){ if(AJAX(window.location+"¬ify=true", "notified(re)")){ return false; }else{ return true; } }; function notified(re){ if(re == 1){ alert('<?php echo $l['notifyversion'] ?>'); } }; function loadScreenshots(){ $_('screenshots_iframe').src = '<?php echo fastestmirror().'/screenshots/screenshots1.php?sid='.$soft;?>'; }; </script> <?php $tmp_ver1 = array(); // Just to show the multiple versions if a script have any branch. if(!empty($software['branch'])){ foreach($software['branch'] as $kver => $vver){ // If the package is not yet downloaded do not show empty commas if(empty($vver['ver'])){ continue; } $tmp_ver1[] = $vver['ver']; } $tmp_ver = implode(', ', $tmp_ver1); if(count($tmp_ver1) > 3){ $top_versions = array_slice($tmp_ver1, 0, 3); $tmp_ver = implode(', ', $top_versions).' <a data-toggle="tooltip" data-html="true" title="" data-original-title="'.$tmp_ver.'" class="details-label" style="text-decoration:none;cursor: pointer;">('.$l['more_versions'].')</a>'; } } $url = $theme['images']; $ratings = array(); $deduct = 1; $r = $scripts[$soft]['ratings']; for($i_r=1; $i_r<=5; $i_r++){ if($r >= 1){ $ratings[$i_r] = '<i class="fas fa-star" alt="('.number_format($scripts[$soft]['ratings'], 2).' out of 5)"></i>'; }elseif($r > 0){ $ratings[$i_r] = '<i class="fas fa-star-half-alt" alt="('.number_format($scripts[$soft]['ratings'], 2).' out of 5)"></i>'; }else{ $ratings[$i_r] = '<i class="far fa-star" alt="('.number_format($scripts[$soft]['ratings'], 2).' out of 5)"></i>'; } $r = $r - $deduct; } // For custom themes if($soft > 10000){ if(file_exists($globals['euthemes'].'/'.$globals['theme_folder'].'/images/topscripts/48/'.$iscripts[$soft]['softname'].'.png')){ $custom_48 = $theme['images'].'topscripts/48/'.$iscripts[$soft]['softname'].'.png'; }else{ $custom_48 = $theme['images'].'/custom.png'; } } echo '<div class="bg"> <div id="currentrating" style="display:none"></div> <div class="row"> <div class="col-md-1 col-sm-2 col-2 logo_style"> '.(!empty($custom_48) ? '<img src="'.$custom_48.'" alt="">' : '<img src="'.$globals['softimages'].'top15/48/'.$scripts[$soft]['softname'].'.png" >').' </div> <div class="col-md-11 col-sm-10 col-10 details_style" style="padding-left:0px;"> <span class="sai_process_heading mr-1">'.$software['name'].'</span>'.($soft > 10000 ? '' : ' <span class="someclass sai_coverstars" title="'.$scripts[$soft]['ratings'].'">'.implode('', $ratings).'</span><br/>').' <p class="details pl-2"> <span class="details-label">'.$l['software_ver'].'</span> : '.(!empty($tmp_ver) ? $tmp_ver : $software['ver']).' <a href="javascript" onclick="notifyversion(); return false;" class="someclass" title="'.$l['notify_ver'].'"> <i class="fas fa-comment-alt px-1 sai_icons" style="color:#4099FF;"></i> </a> </p> <p class="details pl-2"> <span class="details-label">'.(!empty($info['release_date']) ? $l['release_date'].'</span> : '.$info['release_date'] : '').' '.(!empty($info['changelog']) ? ' <a href="" data-toggle="modal" data-target="#changelog_div" class="sai_changelogbut">'.$l['changelog'].'</a>' : '').' </p> </div> </div><br /> <style> .logo_style{ padding-left: 25px !important; padding-top: 12px !important; } @media screen and (min-width: 360px) and (max-width: 767px){ .logo_style{ padding: 18px 0px 10px 8px !important; } .related_scripts{ padding-left: 0px !important; } } @media screen and (min-width: 768px) and (max-width: 799px){ .logo_style{ padding: 18px 0px 10px 8px !important; } } </style> <script type=text/javascript>'; if(!empty($softpanel->pheader)){ if(is_cp_theme('x3')){ echo ' $(document).ready(function(){ // This is as per new method. Required $(".details_style").css("padding-left","40px"); $(".ver_style").css("margin-left","0px"); $(".release_style").css("margin-left","0px"); $(".change_style").css({"margin-left":"0px", "margin-top":"-15px"}); });'; }else{ echo ' $(document).ready(function(){ $(".ver_style").css("margin-left","0px"); $(".release_style").css("margin-left","0px"); $(".change_style").css({"margin-left":"0px", "margin-top":"-10px"}); });'; } } echo ' </script> <div class="old_tab"> <div class="sai_tabs row"> <div class="sai_single-tab"> <a href="javascript:tabs.tab(\'install\')" class="sai_tab" id="install">'.$l['install'].'</a> </div> <div> <a class="sai_insbut" id="show_install_option"><span class="caret" style="cursor:pointer; padding:6px;"></span></a> </div> <div class="sai_single-tab"> <a href="javascript:tabs.tab(\'overview\')" class="sai_tab" id="overview">'.$l['overview'].'</a> </div> <div class="sai_single-tab"> <a href="javascript:tabs.tab(\'features\')" class="sai_tab" id="features">'.$l['features'].'</a> </div> '.(empty($globals['off_screenshot_link']) ? '<div class="sai_single-tab"><a href="javascript:tabs.tab(\'screenshots\'); loadScreenshots();" class="sai_tab" id="screenshots">'.$l['screenshots'].'</a></div>' : '').' '.(empty($globals['off_demo_link']) ? '<div class="sai_single-tab"><a href="'.($soft >= 10000 && !empty($info['demo']) ? $info['demo'] : $globals['ind'].'act=demos&soft='.$soft).'" class="sai_tab" id="demo" target="_blank">'.$l['demo'].'</a></div>' : '').' '.(empty($globals['off_rating_link']) && $soft < 10000 ? '<div class="sai_single-tab"><a href="javascript:tabs.tab(\'ratings\')" class="sai_tab" id="ratings">'.$l['ratings'].'</a></div>' : '').' '.(empty($globals['off_review_link']) && $soft < 10000 ? '<div class="sai_single-tab"><a href="javascript:tabs.tab(\'reviews\')" class="sai_tab" id="reviews">'.$l['reviews'].'</a></div>' : '').' '.((empty($info['import']) || !empty($globals['disable_import'])) ? '' : '<div class="sai_single-tab"><a href="'.$globals['ind'].'act=import&soft='.$soft.'" class="sai_tab" id="import">'.$l['import'].'</a></div>').' </div> <div class="quick_install_dropdown sai_single-tab" id="quick_install_dropdown" style="display:none;"> <div id="quick_install_btn" class="quick_install_dropdown_btn"> <a href="javascript:tabs.tab(\'install\')">'.$l['quick_install'].'</a> </div> <div id="custom_install_btn" class="quick_install_dropdown_btn"> <a href="javascript:tabs.tab(\'install\')">'.$l['custom_install'].'</a> </div> </div> </div><br /> <div class="new_tab"> <nav class="navbar navbar-default p-0"> <div class="navbar-header w-100 p-3"> <button type="button" class="navbar-toggle d-inline-block pull-right" data-toggle="collapse" data-target="#myNavbar"> <i class="fas fa-bars"></i> </button> <ul class="nav"> <li class="active"> <a href="javascript:tabs.tab(\'install\')" id="install" class="sai_tab2 text text-decoration-none" style="height:40px; top:5px;">'.$l['install'].'</a> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" style="font-size:16px;"> </a> <div class="dropdown-menu" aria-labelledby="navbarDropdown"> <a href="javascript:tabs.tab(\'install\')" id="quick_install_btn" class="dropdown-item sai_tab2 text-decoration-none">'.$l['quick_install'].'</a> <div class="dropdown-divider"></div> <a href="javascript:tabs.tab(\'install\')" id="custom_install_btn" class="dropdown-item sai_tab2 text-decoration-none">'.$l['custom_install'].'</a> </div> </li> </ul> </div> <div class="collapse navbar-collapse soft-options p-2 px-3" id="myNavbar" data-toggle="collapse" data-target=".navbar-collapse"> <ul class="nav navbar-nav"> <a href="javascript:tabs.tab(\'overview\')" id="overview" class="sai_tab2 text-decoration-none"> <li> '.$l['overview'].' </li> </a> <div class="dropdown-divider"></div> <a href="javascript:tabs.tab(\'features\')" id="features" class="sai_tab2 text-decoration-none"> <li> '.$l['features'].' </li> </a> <div class="dropdown-divider"></div> '.(empty($globals['off_screenshot_link']) ? ' <a href="javascript:tabs.tab(\'screenshots\'); loadScreenshots();" class="sai_tab2 text-decoration-none" id="screenshots"> <li> '.$l['screenshots'].' </li> </a>' : '').' <div class="dropdown-divider"></div> '.(empty($globals['off_demo_link']) ? ' <a href="'.($soft >= 10000 && !empty($info['demo']) ? $info['demo'] : $globals['ind'].'act=demos&soft='.$soft).'" class="sai_tab2 text-decoration-none" id="demo" target="_blank"> <li> '.$l['demo'].' </li> </a>' : '').' <div class="dropdown-divider"></div> '.(empty($globals['off_rating_link']) && $soft < 10000 ? ' <a href="javascript:tabs.tab(\'ratings\')" class="sai_tab2 text-decoration-none" id="ratings"> <li> '.$l['ratings'].' </li> </a>' : '').' <div class="dropdown-divider"></div> '.(empty($globals['off_review_link']) && $soft < 10000 ? ' <a href="javascript:tabs.tab(\'reviews\')" class="sai_tab2 text-decoration-none" id="reviews"> <li> '.$l['reviews'].' </li> </a>' : '').' <div class="dropdown-divider"></div> '.((empty($info['import']) || !empty($globals['disable_import'])) ? '' : ' <a href="'.$globals['ind'].'act=import&soft='.$soft.'" class="sai_tab2 text-decoration-none" id="import"> <li> '.$l['import'].' </li> </a>').' </ul> </div> </nav> </div>'; apply_filters('pre_software_overview_theme', $soft); //Maximum Installation Limit per script if(!empty($globals['max_ins_script']) && $ins_count_per_script >= $globals['max_ins_script']){ echo '<br /> <div class="alert alert-danger"> <a href="#close" class="close" data-dismiss="alert" aria-label="close">×</a> <center>'.lang_vars($l['error_max_ins_script'], array($globals['max_ins_script'])).'</center> </div>'; } if(!empty($outdated_script)){ echo '<div class="alert alert-warning text-center mt-2">'.lang_vars($l['outdated_script'], array($software['name'])).'</div>'; } echo ' <script type="text/javascript"> $_(tabs.inittab).className = tabs.tabbedclass; var softid = '.$soft.' tabs.override = function(id){ if(id == \'install\'){ $_(\'install\').className = \'sai_insbutclicked\'; }else{ $_(\'install\').className = \'sai_insbut\'; } }; </script>'; if(!empty($scripts[$soft]['screenshots'])){ $screenshot_src = $globals['mirror_images'].'softimages/screenshots/'.$soft.'_screenshot1.gif'; }elseif($soft >= 10000){ if(file_exists($theme['images'].'topscripts/screenshots/'.$soft.'_screenshot1.gif')){ $screenshot_src = $theme['images'].'topscripts/screenshots/'.$soft.'_screenshot1.gif'; } } //Parse and take care of images $info['overview'] = (!empty($info['changelog']) ? ' <div class="modal fade" id="changelog_div" role="dialog"> <div class="modal-dialog modal-lg"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">Changelog</h4> <button type="button" class="close" data-dismiss="modal">×</button> </div> <div class="modal-body"> '.$info['changelog'].' </div> <!--<div class="modal-footer"> <button type="button" class="btn btn-default btn-sm" data-dismiss="modal">Close</button> </div>--> </div> </div> </div>' : '').' <div class="bg2"> <div class="row"> '.(!empty($screenshot_src) && (empty($softpanel->pheader) || (!empty($softpanel->pheader) && is_cp_theme('paper_lantern'))) ? ' <div class="col-12 col-sm-6 col-md-6 col-xl-6"> <div id="overview_img" class="overview-img"> <img src="'.$screenshot_src.'" class="img-fluid" alt=""> </div> <div class="row mt-4 text-center"> <div class="offset-0 offset-lg-2 col-6 col-lg-4"> <a href="javascript:tabs.tab(\'install\')" id="install_now"> <span class="btn sai-button">'.$l['install_now'].'</span> </a> </div> <div class="col-6 col-lg-4"> <a href="javascript:tabs.tab(\'overview\')" id="my_app"> <span class="btn sai-button">'.$l['my_apps'].'</span> </a> </div> </div> </div> <div class="col-sm-6 col-md-6 col-12">': '<div class="col-sm-12 col-12">').' <p class="softphrase-overview">'.softparse($info['overview'], $soft).'</p> <div class="row"> <div class="col-sm-12 col-md-6 col-xs-12"> <span class="sai-icon-style"> <i class="fas fa-inbox"></i> </span> <span class="sai_head">'.$l['space_req'].'</span> <span class="sai_exp2 mt-2 d-block">'. (!empty($globals['off_available_space']) ? '' : $l['available_space'].' : '.(is_numeric($softpanel->spaceremain) ? number_format($softpanel->spaceremain/1024/1024, 2) : $softpanel->spaceremain).' '.$l['mb'].'<br />') .$l['req_space'].' : '.number_format($software['spacereq']/1024/1024, 2).' '.$l['mb'] .'</span> </div> <div class="col-sm-12 col-md-6 col-xs-12"> <a href="'.$info['support'].'" class="text-decoration-none"> <span class="sai-icon-style"> <i class="fas fa-question-circle"></i> </span> </a> <span class="sai_head">'.$l['software_support'].'</span><br/> <a class="mt-2 d-block support-link" href="'.$info['support'].'" target="_blank">'.$l['support_link'].'</a> <span class="sai_exp2">'.$l['support_note'].'</span> </div> </div>'; if(is_wordpress($soft) && empty($globals['disable_manage_sets'])){ $info['overview'] .=' <div class="row mt-3"> <div class="col-12"> <a href="'.$globals['ind'].'act=manage_sets" target="_blank" id="manage_sets"> <span class="btn sai-button w-100"> '.$l['manage_sets'].' </span> </a> </div> </div>'; } $info['overview'] .=' </div> </div> </div><!--end of bg2 class-->'; if((!empty($installations[$soft]) || array_intersect(array_keys($installations), array_keys($software['branch']))) && empty($globals['disable_current_ins'])){ $info['overview'] .= ' <div class="row mt-5"> <div class="col-12"> <div class="text-center"> <span class="sai_newhead d-block" id="current_ins">'.$l['current_ins'].'</span> <hr class="sai_main_head_hr"> </div> <div class="table-responsive">'; $info['overview'] .= ' <table class="table table-hover installation-list-table"> <thead class="sai_head2"> <tr> <th>'.$l['link'].'</th> <th style="width:5%;">'.$l['admin'].'</th> <th style="width:19%;">'.$l['ins_time'].'</th> <th style="width:5%;">'.$l['version'].'</th> <th width=1>'.$l['options'].'</th> <th width=1><input type="checkbox" id="check_all"></th> </tr> </thead>'; $i=1; $highlight = optGET('highlight'); $action = optGET('postact'); $ins_tr = array(); //r_print($software['branch']); //r_print($no_autoupgrade); foreach($software['branch'] as $csid => $cver){ //Child List of Installations foreach($installations[$csid] as $ik => $iv){ $iv['sid'] = get_sid_by_version($iv['ver'], $iv['sid']); $is_cloneable = is_cloneable($iv['sid']); // Check if the script supports Sign On $sign_on = has_sign_on($iv['sid']); $can_staging = can_staging($iv['sid']); $can_template = can_template_ins($iv['sid']); $ins_row = ''; $is_upgradable = is_upgradable($ik); $ins_row = '<tr id="trid' . $ik . '"> <td class="endurl" ><a href="'.$iv['softurl'].'" target="_blank" id="insurl'.$ik.'">'.$iv['softurl'].'</a>'.(($highlight == $ik && !empty($action)) ? '<span id="highlight" class="ml-1"><b class="sai_highlight">'.$l['act_'.$action].'</b></span>' : '').'</td> <td> <a href="'.(empty($globals['disable_sign_on']) && !empty($sign_on) ? $globals['ind'].'act=sign_on&insid='.$ik.'&autoid='.srandstr(32) : $iv['softurl'].'/'.(!empty($iv['admin_folder']) ? $iv['admin_folder'] : admin_folder($iv['sid']))).'" target="_blank" title="'.$l['login_exp'].'" class="someclass"><i class="fas fa-user px-1 sai_icons"></i></a> </td> <td> <p style="font-size:11px;">'.datify($iv['itime']).'</p> </td> <td width="10%"> '.$iv['ver'].(!empty($is_upgradable) ? ' <a href="'.$globals['ind'].'act=upgrade&insid='.$ik.'" title="'.$l['upd_to'].' '.implode(' or ', $is_upgradable).'" class="someclass"><i class="fas fa-sync-alt px-1 sai_icons" style="color:#1565C0; font-size:1.2em;"></i></a>' : ''). (!empty($iv['eu_auto_upgrade']) && empty($no_autoupgrade['disable_autoupgrade']) && empty($no_autoupgrade['scripts'][$csid]) && !empty($scripts[$iv['sid']]['auto_upgrade']) && empty($no_autoupgrade_acl)? '<i class="fas fa-check-circle px-1 sai_icons" style="color:green; cursor:pointer;" title="'.$l['auto_upgrade_enabled'].' '.($iv['eu_auto_upgrade'] == 1 ? $l['auto_upgrade_major'] : $l['auto_upgrade_minor']).'" class="someclass"></i>' : '').' </td> <td align="right"> <table class="table table-borderless icon-table" style="margin:0;" width="20"> <tbody> <tr> '.(can_wordpress_manager($iv['sid']) ? '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=wordpress&insid='.$ik.'" title="'.$l['wordpress_manager'].'" class="someclass"><img src="'.$theme['images'].'wp-gray.png" height="23" width="23"/></a></td>' : '').' '.(!empty($can_publish) && ampps() ? '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=ampps_publish&insid='.$ik.'" title="'.$l['ampps_publish'].'" class="someclass" ><i class="fas fa-cloud-upload-alt px-1 sai_icons" style="color:#00A0D2;"></i></a></td>' : '' ). (!empty($can_template) ? '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=create_template&insid='.$ik.'" title="'.$l['create_template'].'" class="someclass"><i class="fas fa-box px-1 sai_icons" style="color:#00A0D2;"></i></a></td>' : '').' '.(!empty($can_staging) ? (!empty($iv['is_staging']) ? '<td style="padding:0; vertical-align:middle;"><a title="'.$l['pushtolive'].'" href="'.$globals['ind'].'act=pushtolive&insid='.$ik.'" class="someclass"><i class="fas fa-code-branch px-1 sai_icons" style="color:#1565C0;"></i></a></td>' : ''). '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=staging&insid='.$ik.'" title="'.$l['staging'].'" class="someclass"><i class="fas fa-network-wired px-1 sai_icons" style="color:#1565C0;"></i></a></td>' : ''). (!empty($is_cloneable) ? '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=sclone&insid='.$ik.'" title="'.$l['clone'].'" class="someclass"><i class="fas fa-copy px-1 sai_icons" style="color:#1565C0;"></i></a></td>' : ''). (empty($globals['disable_backup_restore']) ? '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=backup&insid='.$ik.'" title="'.$l['backup'].'" class="someclass"><i class="fas fa-file-archive px-1 sai_icons" style="color:#119768;"></i></a></td>' : ''). '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=editdetail&insid='.$ik.'" title="'.$l['editdetail'].'" class="someclass"><i class="fas fa-pencil-alt px-1 sai_icons" style="color:#FF5D00;"></i></a></td> '.(asperapp(0, 0, 1) && !empty($can_publish) ? '<td style="padding:0; vertical-align:middle;"><a href="'.$globals['ind'].'act=publish&insid='.$ik.'" title="'.$l['publish'].'" class="someclass"><i class="fas fa-cloud-upload-alt px-1 sai_icons" style="color:#00A0D2;"></i></a></td>' : '').' <td style="padding:0; vertical-align:middle;"> <a href="'.$globals['ind'].'act=remove&insid='.$ik.'" title="'.$l['remove'].'" class="someclass"><i class="fas fa-trash-alt sai_icons" style="color:red;"></i></a> </td> </tr> </tbody> </table> </td> <td> <input type="checkbox" name="insids[]" id="'.$iv['softurl'].'" value="'.$ik.'" class="shift_select_ins soft_inslist"> </td> </tr>'; $i++; if(array_key_exists('is_staging', $iv)){ $ins_tr[$iv['is_staging']] .= $ins_row; }else{ if(!empty($ins_tr[$ik])){ $ins_tr[$ik] = $ins_row.$ins_tr[$ik]; }else{ $ins_tr[$ik] .= $ins_row; } } } } $info['overview'] .= implode('', $ins_tr); $info['overview'] .= '</table> </div> </div> </div> <p class="text-right"> <span class="sai_head">'.$l['with_selected'].':</span> <select name="multi_options" id="multi_options" class="mr-1"> <option name="todo" id="todo" value="0">---</option> <option name="todo" id="todo" value="mult_rem">'.$l['remove_complete'].'</option> <option name="todo" id="todo" value="mult_rem_info">'.$l['remove_info'].'</option> </select> <input type="button" value="'.$l['go'].'" onclick="show_confirm()" class="btn sai-button"> </p> <div id="rem_div"></div> <script language="javascript" type="text/javascript"><!-- // --><![CDATA[ insids = new Array(); removed = new Object(); function show_confirm(){ insids = new Array(); removed = new Object(); $sel_opt = $_("multi_options").value; if($sel_opt != "mult_rem" && $sel_opt != "mult_rem_info"){ return false; } // Build the list of Installations to remove var field = document.getElementsByName(\'insids[]\'); insids = new Array(); var c = 0; for(i = 0; i < field.length; i++){ if(field[i].checked == true){ insids[c] = field[i].value; c++; } } //alert(insids); if(c == 0){ alert("'.$l['no_sel_inst'].'"); return false; } var r = confirm("'.$l['del_insid'].'"); if(r != true){ return false; } if($sel_opt == "mult_rem_info"){ remove_by_id(insids[0], "", 0, 1); }else{ remove_by_id(insids[0], "", 0); } } function remove_by_id(insid, re, oldinsid, info_only){ removed[insid] = false; info_only = info_only || 0; if(re.length > 0 && oldinsid > 0){ if(re == "removed"){ removed[insid] = true; } } nextinsid = 0; // Find the next INSTALLATION to remove for(i = 0; i < insids.length; i++){ if(typeof(removed[insids[i]]) != "undefined"){ continue; } nextinsid = insids[i]; break; } // If there is something left to be removed if(insid != 0){ var csrf_token = $("#csrf_token").val(); try{ $.ajax({ type: "POST", data: "csrf_token="+csrf_token, url: "'.$globals['index'].'act=remove&insid="+insid+"&ajax=1&ssk="+randomstring(32)+"&random="+Math.random()+"&info_only="+info_only, // Checking for error success: function(data){ remove_by_id(nextinsid, data, insid, info_only); } }); $_("rem_div").innerHTML = "<br /><br /><p align=\"center\"><img src=\"' . $theme['images'] . 'ajax_remove.gif\"> <br />'.$l['rem_inst_id']. ' ID: " +insid+ ", URL: " + $_("insurl"+insid)+"<br /></p>"; return true; }catch(e){ return false; } } $_("rem_div").innerHTML = ""; alert("'.$l['inst_remvd'].'"); location.reload(true); return true; } $(document).ready(function(){ $("#check_all").on("click", function(event){ if(this.checked == true){ $(".soft_inslist").prop("checked", true); }else{ $(".soft_inslist").prop("checked", false); } }); $(".sai_altrowstable tr").mouseover(function(){ var old_class = $(this).attr("class"); if(old_class == "nohover") return; //alert(old_class); $(this).attr("class", "sai_tr_bgcolor"); $(this).mouseout(function(){ $(this).attr("class", old_class); }); }); $("#my_app").click(function(){ goto_id("current_ins"); });'; // If we get anything in $highlight than only we have to call this JS function other wise it will cause the JS error. if(!empty($highlight)){ $info['overview'] .= 'goto_id("insurl'.$highlight.'"); $("#highlight").fadeOut(10000);'; } $info['overview'] .= '}); // ]]></script>'; } if(count($allcatwise[$software['type']][$software['cat']]) > 2 && $software['cat'] != 'others' && empty($globals['disable_related_scripts'])){ $info['overview'] .= ' <div class="bg2"> <div class="row mt-2"> <div class="col-12 "> <span class="sai_newhead d-block" id="current_ins">'.$l['related_scripts'].'</span> <hr class="sai_main_head_hr"> </div> </div> <div class="row related_scripts">'; $i = 0; foreach($allcatwise[$software['type']][$software['cat']] as $k => $v){ if(($k == $soft) || (!empty($scripts[$k]['parent']) && !empty($iscripts[$scripts[$k]['parent']]))){ continue; } // Show only 5 scripts if($i == 5){ break; } $custom_48 = ''; if($k > 10000){ if(file_exists($globals['euthemes'].'/'.$globals['theme_folder'].'/images/topscripts/48/'.$v['softname'].'.png')){ $custom_48 = $theme['images'].'topscripts/48/'.$v['softname'].'.png'; }else{ $custom_48 = $theme['images'].'custom.png'; } } $info['overview'] .=' <div class="col-sm-3 col-md-2 col-6"> <a href="'.script_link($k).'" title="'.$v['desc'].'" alt="" class="someclass softtooltip related-scripts"> <div class="sai_blog_script"> <div class="sai_demo_script_logo"> <img src="'. (!empty($custom_48) ? $custom_48 : $globals['softimages'].'top15/48/'.$v['softname'].'.png').'" > </div> <div class="sai_script_name">'.$v['name'].'</div> </div> </a> </div>'; $i++; } $info['overview'] .='</div><!--end of row--> </div><!--end of bg2 class-->'; } //Parse and take care of images $info['features'] = '<div class="bg2"><br />'.softparse($info['features'], $soft).'</div><!--end of bg2 class-->'; $info['ratings'] = ''; $info['screenshots'] = '<div class="row"> <div class="col-12 mx-auto"> <iframe src="" id="screenshots_iframe" class="screenshots_iframe" frameborder="0" scrolling="no"></iframe> </div> </div>'; $info['reviews'] = '<div class="bg2"><div id="allreviews"></div></div><!--end of bg2 class-->'; foreach($info as $k => $v){ if(in_array($k, array('demo', 'support', 'import', 'changelog'))) continue; echo '<div id="'.$k.'_win" style="display: '.($init_tab == $k ? "block" : "none").'; width:100%;"><br /> '.$v.' </div>'; } echo '</div>'; // Is there a UI Controller ? if(function_exists('__'.$software['softname'].'_theme_html')){ call_user_func('__'.$software['softname'].'_theme_html'); } softfooter(); } ?>