first commit

This commit is contained in:
2023-09-12 21:41:04 +02:00
commit 3361a7f053
13284 changed files with 2116755 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
<?php
/**
*
* King Composer
* (c) KingComposer.com
* kc.extension.php
*
*/
if(!defined('ABSPATH')) {
header('HTTP/1.0 403 Forbidden');
exit;
}
?>
<?php if (count($this->errors) > 0) { ?>
<div id="message" class="error">
<p><?php _e('There were some errors with the extensions are activated', 'kingcomposer'); ?>:</p>
<ol>
<?php
foreach ($this->errors as $error) {
echo '<li>'.$error.'</li>';
}
?>
</ol>
</div>
<?php } ?>
<?php
$this->list_table( $items, $actives );
?>

View File

@@ -0,0 +1,104 @@
<?php
/**
*
* King Composer
* (c) KingComposer.com
* kc.screen.tmpl.php
*
*/
if(!defined('ABSPATH')) {
header('HTTP/1.0 403 Forbidden');
exit;
}
?>
<div class="wrap">
<?php
if ($this->tab == 'upload') {
do_action('kc_list_extensions_'.$this->tab, $this->page);
} else {
?>
<h1 class="wp-heading-inline"><?php _e('KC Extensions', 'kingcomposer'); ?></h1>
<?php if (empty($_GET['tab']) || $_GET['tab'] == 'store'){ ?>
<a href="#upload-extension" class="upload-view-toggle page-title-action" role="button" aria-expanded="false">
<span class="upload"><?php _e('Upload Extension', 'kingcomposer'); ?></span>
<span class="browse"><?php _e('Browse Plugins', 'kingcomposer'); ?></span>
</a>
<hr class="wp-header-end">
<p><font color="#888"><?php _e('If you have a KC Pro license. You can access all the extensions for free, multiple domains.', 'kingcomposer'); ?><?php
if (!class_exists('kc_pro')) {
echo ' <a href="'.admin_url('admin.php?page=kingcomposer#kc_pro').'">'.__('Go to KC Pro!', 'kingcomposer').'</a>';
} else {
echo ' <a href="'.admin_url('admin.php?page=kingcomposer#kc_product_license').'">'.__('KC Pro license', 'kingcomposer').'</a>';
}
?></font></p>
<div class="upload-plugin-wrap">
<div class="upload-plugin">
<p class="install-help">
<?php _e('If you have an extension in a .zip format, you may install it by uploading it here.', 'kingcomposer'); ?>
</p>
<form method="post" enctype="multipart/form-data" class="wp-upload-form" action="">
<input type="hidden" name="kc-nonce" value="<?php echo wp_create_nonce('kc-nonce'); ?>" />
<label class="screen-reader-text" for="extensionzip"><?php _e('Extension zip file', 'kingcomposer'); ?></label>
<input type="file" name="extensionzip" id="extensionzip" />
<input type="hidden" name="action" value="upload" />
<input type="hidden" name="kc-extension-action" value="upload" />
<input type="submit" name="install-kcextension-submit" class="button" value="Install Now" disabled="" />
</form>
</div>
</div>
<?php } else { ?>
<a href="<?php echo admin_url('admin.php?page=kc-extensions&tab=store'); ?>" class="upload-view-toggle page-title-action" role="button" aria-expanded="false"><span class="upload"><?php _e('Add new', 'kingcomposer'); ?></span></a>
<?php } ?>
<?php if (empty($_GET['tab']) || $_GET['tab'] == 'store'){ ?>
<div class="wp-filter">
<ul class="filter-links">
<li class="kc-extension-all">
<a href="admin.php?page=kc-extensions&tab=store&filter=all" class="<?php
if (empty($_GET['filter']) || $_GET['filter'] == 'all')
echo 'current';
?>">
<?php _e('All extensions', 'kingcomposer'); ?>
</a>
</li>
<li class="kc-extension-store">
<a href="admin.php?page=kc-extensions&tab=store&filter=free" class="<?php
if (!empty($_GET['filter']) && $_GET['filter'] == 'free')
echo 'current';
?>">
<?php _e('Free extensions', 'kingcomposer'); ?>
</a>
</li>
<li class="kc-extension-updates">
<a href="admin.php?page=kc-extensions&tab=store&filter=featured" class="<?php
if (!empty($_GET['filter']) && $_GET['filter'] == 'featured')
echo 'current';
?>">
<?php _e('Featured', 'kingcomposer'); ?>
</a>
</li>
<li class="kc-extension-updates">
<a href="admin.php?page=kc-extensions&tab=installed">
<?php _e('Installed', 'kingcomposer'); ?>
</a>
</li>
</ul>
<form class="search-form search-extensions" method="get" id="kc-extension-search">
<input type="hidden" name="tab" value="<?php echo isset($_GET['tab'])? $_GET['tab'] : ''; ?>">
<input type="hidden" name="page" value="kc-extensions">
<label class="screen-reader-text" for="typeselector"><?php _e('Search extensions by', 'kingcomposer'); ?>:</label>
<label>
<span class="screen-reader-text"><?php _e('Search Extensions', 'kingcomposer'); ?></span>
<input type="search" name="q" class="wp-filter-search" placeholder="<?php _e('Search Extensions', 'kingcomposer'); ?>" value="<?php echo isset($_GET['q']) ? esc_html($_GET['q']) : ''; ?>" aria-describedby="live-search-desc">
</label>
<input type="submit" id="search-submit" class="button hide-if-js" value="<?php _e('Search Extensions', 'kingcomposer'); ?>">
</form>
</div>
<?php } ?>
<form id="extensions-filter" method="post">
<?php do_action('kc_list_extensions_'.$this->tab, $this->page); ?>
<input type="hidden" name="kc-nonce" id="kc-nonce" value="<?php echo wp_create_nonce('kc-nonce'); ?>" />
<input type="hidden" name="kc-extension-action" value="filter" />
</form>
</div>
<?php } ?>
<script type="text/javascript" src="<?php echo esc_url(KC_URL); ?>/assets/js/kc.settings.js"></script>

View File

@@ -0,0 +1,172 @@
<?php
/**
*
* King Composer
* (c) KingComposer.com
* kc.store.tmpl.php
*
*/
if(!defined('ABSPATH')) {
header('HTTP/1.0 403 Forbidden');
exit;
}
add_thickbox();
$url = admin_url('admin.php?page=kc-extensions&tab=store');
$query = isset($_GET['q']) && !empty($_GET['q']) ? esc_html(strtolower($_GET['q'])) : '';
$paged = isset($_GET['paged']) && !empty($_GET['paged']) ? esc_attr($_GET['paged']) : 1;
?>
<div class="wp-list-table widefat extension-install">
<?php
if (count($items) > 0) {
for ($i=0; $i < count($items); $i++) {
$item = $items[$i];
?>
<div class="plugin-card plugin-card-<?php echo sanitize_title($item['name']); ?>">
<div class="plugin-card-top">
<div class="name column-name">
<h3>
<?php if (isset($item['details']) && !empty($item['details'])) { ?>
<a href="<?php echo esc_url($item['details']); ?>" class="thickbox open-plugin-details-modal">
<?php } else { ?>
<a href="#" class="">
<?php } ?>
<?php echo esc_html($item['name']); ?>
<?php echo isset($item['featured']) && $item['featured'] == 1 ? '<font title="Featured" color="green">&star;</font>' : ''; ?>
<img src="<?php echo esc_url($item['thumbnail']); ?>" class="plugin-icon" alt="">
</a>
</h3>
</div>
<div class="action-links">
<ul class="plugin-action-buttons">
<li>
<price style="color: green;font-weight: bold;"><?php
echo (!empty($item['currency']) && isset($item['currency']) ? esc_html($item['currency']) : '');
echo (empty($item['price']) || $item['price'] === 0) ? 'Free' : esc_html($item['price']);
?></price>
</li>
<li>
<?php if (!isset($installs[$item['id']])) { ?>
<a class="install-now button" data-verify="<?php
echo (empty($item['price']) || $item['price'] === 0) ? '1' :
(!class_exists('kc_pro') ? '0' : (!empty($key) ? '1' : '2'));
?>" href="#<?php echo esc_html($item['id']); ?>">
<?php _e('Install Now', 'kingcomposer'); ?>
</a>
<?php } else { ?>
<a class="install-now button <?php
echo (
(isset($actives[$item['id']]) && $actives[$item['id']] == 1) ?
'button-link-delete' :
'button-primary'
);
?>" data-verify="1" data-installed="true" href="#<?php echo esc_html($item['id']); ?>">
<?php
echo (isset($actives[$item['id']]) && $actives[$item['id']] == 1) ?
_e('Deactive', 'kingcomposer') :
_e('Active Now', 'kingcomposer');
?>
</a>
<?php } ?>
</li>
<?php if (isset($item['details']) && !empty($item['details'])) { ?>
<li>
<a class="thickbox" href="<?php echo esc_url($item['details']); ?>">
<?php _e('More details', 'kingcomposer'); ?>
</a>
</li>
<?php } ?>
</ul>
</div>
<div class="desc column-description">
<p><?php echo $item['description']; ?></p>
<p class="authors">
<cite>
<?php _e('By', 'kingcomposer'); ?>
<a href="<?php echo esc_url($item['author_link']); ?>" target=_blank>
<?php echo esc_html($item['author']); ?>
</a>
</cite>
</p>
</div>
</div>
<div class="plugin-card-bottom">
<div class="column-updated">
<strong>
<?php _e('Last Updated', 'kingcomposer'); ?>:
</strong>
<?php echo esc_html($item['last_updated']); ?>
</div>
<div class="column-downloaded">
<?php _e('Download', 'kingcomposer'); ?> <?php echo esc_html($item['download']); ?> |
<?php _e('Version', 'kingcomposer'); ?> <?php echo esc_html($item['version']); ?>
</div>
</div>
</div>
<?php
}
} else {
echo '<center><h2 style="color: #888; margin-top: 50px">'.__('No items found', 'kingcomposer').'</h2></center>';;
}
?>
</div>
<?php if ($pages > 1) { ?>
<div class="tablenav bottom">
<div class="tablenav-pages">
<span class="displaying-num"><?php echo $total; ?> <?php _e('items', 'kingcomposer'); ?></span>
<span class="pagination-links">
<?php if($paged == 1) { ?>
<span class="tablenav-pages-navspan" aria-hidden="true">«</span>
<span class="tablenav-pages-navspan" aria-hidden="true"></span>
<?php } else { ?>
<a class="last-page" href="<?php echo esc_url($url); ?>">
<span class="screen-reader-text"><?php _e('First page', 'kingcomposer'); ?></span>
<span aria-hidden="true">«</span>
</a>
<a class="prev-page" href="<?php echo esc_url($url.'&paged='.($paged-1)); ?>">
<span class="screen-reader-text"><?php _e('Prev page', 'kingcomposer'); ?></span>
<span aria-hidden="true"></span>
</a>
<?php } ?>
<span class="screen-reader-text"><?php _e('Current Page', 'kingcomposer'); ?></span>
<span id="table-paging" class="paging-input">
<span class="tablenav-paging-text"><?php _e('Page', 'kingcomposer'); ?> <?php echo $paged; ?> of <span class="total-pages"><?php echo $pages; ?></span></span>
</span>
<?php if($paged < $pages) { ?>
<a class="next-page" href="<?php echo esc_url($url.'&paged='.($paged+1)); ?>">
<span class="screen-reader-text"><?php _e('Next page', 'kingcomposer'); ?></span>
<span aria-hidden="true"></span>
</a>
<a class="last-page" href="<?php echo esc_url($url.'&paged='.$pages); ?>">
<span class="screen-reader-text"><?php _e('Last page', 'kingcomposer'); ?></span>
<span aria-hidden="true">»</span>
</a>
<?php } else { ?>
<span class="tablenav-pages-navspan" aria-hidden="true"></span>
<span class="tablenav-pages-navspan" aria-hidden="true">»</span>
<?php } ?>
</span>
</div>
<br class="clear">
</div>
<?php } ?>
<div id="kc-extension-notice">
<div id="kc-extension-notice-body">
<p>
<?php
if (!class_exists('kc_pro')){
_e('We are sorry! extensions are currently only available for the pro version.', 'kingcomposer');
} else if (empty($key)){
_e('We are sorry! you need to verify your license before using extentions.', 'kingcomposer');
}
?>
</p>
<a href="#close"><i class="dashicons dashicons-no-alt"></i></a>
<a href="<?php echo admin_url('admin.php?page=kingcomposer#').(!class_exists('kc_pro') ? 'kc_pro' : 'kc_product_license'); ?>" class="prim"><?php _e('Go to KC Pro!', 'kingcomposer'); ?></a>
</div>
</div>

View File

@@ -0,0 +1,67 @@
<?php
/**
*
* King Composer
* (c) KingComposer.com
* kc.store.tmpl.php
*
*/
if(!defined('ABSPATH')) {
header('HTTP/1.0 403 Forbidden');
exit;
}
?>
<h1><?php _e('Installing Extension from uploaded file', 'kingcomposer'); ?>: <?php echo esc_html($upload[0]); ?></h1>
<?php
if (count($errors) > 0) {
?>
<div class="kc-notice error" style="margin-top:30px;">
<?php foreach ($errors as $error) {
echo '<p>Error: '.esc_html($error).'</p>';
} ?>
</div>
<p>
<a href="<?php echo admin_url('admin.php?page=kc-extensions&tab=installed'); ?>">
<?php _e('Back to extentions', 'kingcomposer'); ?>
</a>
</p>
<div class="upload-plugin" style="display: block;">
<p class="install-help">
<?php _e('If you have an extension in a .zip format, you may install it by uploading it here.', 'kingcomposer'); ?>
</p>
<form method="post" enctype="multipart/form-data" class="wp-upload-form" action="">
<p>
<input type="hidden" name="kc-nonce" value="<?php echo wp_create_nonce('kc-nonce'); ?>" />
<label class="screen-reader-text" for="extensionzip"><?php _e('Extension zip file', 'kingcomposer'); ?></label>
<input type="file" name="extensionzip" id="extensionzip" />
<input type="hidden" name="action" value="upload" />
<input type="hidden" name="action" value="upload" />
<input type="hidden" name="kc-extension-action" value="upload" />
<input type="submit" name="install-kcextension-submit" class="button" value="<?php _e('Install Now', 'kingcomposer'); ?>" disabled="" />
</p>
</form>
</div>
<?php } else {?>
<p><?php _e('Uploading package', 'kingcomposer'); ?></p>
<p><?php _e('Unpacking extension', 'kingcomposer'); ?></p>
<p><?php _e('Installed successful', 'kingcomposer'); ?></p>
<p>
<form method="post" action="<?php echo admin_url('admin.php?page=kc-extensions&tab=installed'); ?>">
<button class="button button-primary"><?php _e('Active Extension', 'kingcomposer'); ?></button>
<input type="hidden" name="action" value="bulk-activate" />
<input type="hidden" name="checked[]" value="<?php echo sanitize_title($upload[1]); ?>" />
<input type="hidden" name="kc-nonce" value="<?php echo wp_create_nonce('kc-nonce'); ?>" />
<input type="hidden" name="kc-extension-action" value="active now" />
</form>
</p>
<p>
<a href="<?php echo admin_url('admin.php?page=kc-extensions&tab=installed'); ?>">
<?php _e('Return to extentions', 'kingcomposer'); ?>
</a>
</p>
<?
}
?>