Import legacy nurinda.co.id website

This commit is contained in:
dirga committed 2026-10-01 14:27:19 +07:00
1 parent 3f59bb9038
commit 6e21646ac4
13389 files changed
+3246690

No files matched your search

@@ -0,0 +1,14 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<h2 class="nav-tab-wrapper">
<?php foreach ( $tabs as $slug => $title ) : ?>
<?php $url = 'admin.php?page=' . rawurlencode( $slug ); ?>
<a href="<?php echo esc_attr( is_network_admin() ? network_admin_url( $url ) : admin_url( $url ) ) ?>"
class="nav-tab<?php echo $active_tab === $slug ? esc_attr( ' nav-tab-active' ) : '' ?>">
<?php echo $title ?>
</a>
<?php endforeach ?>
</h2>
@@ -0,0 +1,14 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<h2 class="nav-tab-wrapper">
<?php foreach ( $tabs as $tab_slug => $title ) : ?>
<?php $url = 'admin.php?page=' . rawurlencode( $slug ) . '&tab=' . rawurlencode( $tab_slug ); ?>
<a href="<?php echo esc_attr( is_network_admin() ? network_admin_url( $url ) : admin_url( $url ) ) ?>"
class="nav-tab<?php echo $active_tab === $tab_slug ? esc_attr( ' nav-tab-active' ) : '' ?>">
<?php echo $title ?>
</a>
<?php endforeach ?>
</h2>
@@ -0,0 +1,21 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
// 'custom_value' => array(true, 'default'),
'capabilities' => array(
array( 'disabled_ce_editor', __( 'Disable Classic editor', 'js_composer' ) ),
),
'options' => array(
array( true, __( 'Enabled', 'js_composer' ) ),
array( 'default', __( 'Enabled and default', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Backend editor', 'js_composer' ),
'custom_label' => __( 'Backend editor', 'js_composer' ),
) );
@@ -0,0 +1,16 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'options' => array(
array( true, __( 'Enabled', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Drag and Drop', 'js_composer' ),
'description' => __( 'Control access rights to drag and drop functionality within the editor.', 'js_composer' ),
) );
@@ -0,0 +1,20 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
if ( vc_frontend_editor()->inlineEnabled() ) {
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'custom_value' => 'custom',
'options' => array(
array( true, __( 'Enabled', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Frontend editor', 'js_composer' ),
'custom_label' => __( 'Frontend editor', 'js_composer' ),
) );
}
@@ -0,0 +1,17 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'options' => array(
array( true, __( 'Enabled', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Grid Builder', 'js_composer' ),
'custom_label' => __( 'Grid Builder', 'js_composer' ),
'description' => __( 'Control user access to Grid Builder and Grid Builder Elements.', 'js_composer' ),
) );
@@ -0,0 +1,166 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<?php /** @var $controller Vc_Role_Access_Controller */ ?>
<tr>
<th scope="row"><?php echo esc_html( $main_label ) ?></th>
<td>
<fieldset>
<legend class="screen-reader-text">
<span><?php esc_html( $main_label ) ?></span></legend>
<select name="<?php echo esc_attr( $params_prefix . '[_state]' ) ?>"
data-vc-part="<?php echo esc_attr( $part ) ?>"
data-vc-name="<?php echo esc_attr( '_state' ) ?>"
<?php if ( ! empty( $capabilities ) ) : ?>data-vc-roles="part-state"
data-vc-role-part="<?php echo esc_attr( $part . '-' . $role ) ?>"<?php endif; ?>
class="vc_ui-settings-roles-dropdown">
<?php foreach ( $options as $option ) : ?>
<option
value="<?php echo esc_attr( $option[0] ? (string) $option[0] : '0' ) ?>"
<?php echo isset( $option[2] ) ? ' data-vc-custom-selector="' . esc_attr( $option[2] ) . '"' : '' ?>
<?php echo $controller->getState() === $option[0] ? ' selected' : '' ?>><?php echo esc_html( $option[1] ) ?></option>
<?php endforeach; ?>
</select>
<?php if ( isset( $description ) && ! empty( $description ) ) : ?>
<p class="description"><?php echo esc_html( $description ) ?></p>
<?php endif; ?>
</fieldset>
</td>
</tr>
<?php if ( ! empty( $capabilities ) ) : ?>
<?php if ( isset( $use_table ) && true === $use_table ) : ?>
<?php
require_once vc_path_dir( 'EDITORS_DIR', 'popups/class-vc-add-element-box.php' );
$add_box = new Vc_Add_Element_Box();
?>
<tr data-vc-role-related-part="<?php echo esc_attr( $part . '-' . $role ) ?>"
data-vc-role-part-state="<?php echo esc_attr( isset( $custom_value ) ? $custom_value : '*' ) ?>"
class="vc_role-custom-settings<?php echo ! isset( $custom_value ) || (string) $controller->getState() === (string) $custom_value ? ' vc_visible' : '' ?>">
<th scope="row"></th>
<td>
<fieldset>
<legend class="screen-reader-text">
<span><?php echo esc_html( $custom_label ) ?></span>
</legend>
<?php if ( isset( $categories ) && ! empty( $categories ) ) : ?>
<?php vc_include_template( 'editors/partials/add_element_tabs.tpl.php', array(
'categories' => $categories,
) ) ?>
<?php endif; ?>
<table class="vc_general vc_wp-form-table fixed" data-vc-roles="table">
<thead>
<tr>
<th><?php echo esc_html( $item_header_name ) ?></th>
<?php foreach ( $cap_types as $type ) : ?>
<th class="column-date">
<label>
<input type="checkbox" name="all"
data-vc-related-controls="tfoot [data-vc-roles-select-all-checkbox]"
data-vc-roles-select-all-checkbox="<?php echo esc_attr( $type[0] ) ?>"><?php echo esc_html( $type[1] ) ?>
</label>
</th>
<?php endforeach; ?>
</tr>
</thead>
<tfoot<?php echo isset( $global_set ) ? ' style="display: none;"' : '' ?>>
<tr>
<th><?php echo esc_html( $item_header_name ) ?></th>
<?php foreach ( $cap_types as $type ) : ?>
<th class="column-date">
<label>
<input type="checkbox" name="all"
data-vc-related-controls="thead [data-vc-roles-select-all-checkbox]"
data-vc-roles-select-all-checkbox="<?php echo esc_attr( $type[0] ) ?>"><?php echo esc_html( $type[1] ) ?>
</label>
</th>
<?php endforeach; ?>
</tr>
</tfoot>
<tbody<?php echo isset( $global_set ) ? ' style="display: none;"' : '' ?>>
<?php foreach ( $capabilities as $cap ) : ?>
<?php if ( ! isset( $ignore_capabilities ) || ! in_array( $cap['base'], $ignore_capabilities ) ) : ?>
<?php
$category_css_classes = '';
if ( isset( $cap['_category_ids'] ) ) {
foreach ( $cap['_category_ids'] as $id ) {
$category_css_classes .= ' js-category-' . $id;
}
}
?>
<tr data-vc-capability="<?php echo esc_attr( $cap['base'] ) ?>"
class="<?php echo esc_attr( trim( $category_css_classes ) ) ?>">
<td title="<?php echo esc_attr( $cap['base'] ) ?>">
<?php echo $add_box->renderIcon( $cap ) ?>
<div>
<?php echo esc_html( $cap['name'] ) ?>
<?php echo ! empty( $cap['description'] ) ? '<span class="vc_element-description">' . esc_html( $cap['description'] ) . '</span>' : '' ?>
</div>
</td>
<?php foreach ( $cap_types as $type ) : ?>
<td>
<div class="vc_wp-form-checkbox">
<label>
<input type="checkbox"
name="<?php echo esc_attr( $params_prefix . '[' . $role . '][' . $part . ']' . '[' . $cap['base'] . '_' . $type[0] . ']' ) ?>"
data-vc-part="<?php echo esc_attr( $part ) ?>"
data-vc-name="<?php echo esc_attr( $cap['base'] . '_' . $type[0] ) ?>"
data-vc-roles="table-checkbox"
data-vc-cap="<?php echo esc_attr( $type[0] ) ?>"
value="1"<?php echo ! isset( $global_set ) && $controller->can( $cap['base'] . '_' . $type[0], false )->get() ? ' checked' : '' ?>>
<?php echo esc_html( $type[1] ) ?>
</label>
</div>
</td>
<?php endforeach; ?>
</tr>
<?php endif; ?>
<?php endforeach; ?>
</tbody>
</table>
</fieldset>
</td>
</tr>
<?php else : ?>
<tr data-vc-role-related-part="<?php echo esc_attr( $part . '-' . $role ) ?>"
data-vc-role-part-state="<?php echo esc_attr( isset( $custom_value ) ? $custom_value : '*' ) ?>"
class="vc_role-custom-settings<?php echo ! isset( $custom_value ) || $controller->getState() === $custom_value ? ' vc_visible' : '' ?>">
<th scope="row"></th>
<td>
<fieldset>
<legend class="screen-reader-text">
<span><?php echo esc_html( $custom_label ) ?></span>
</legend>
<div class="vc_wp-form-row">
<?php foreach ( $capabilities as $cap ) : ?>
<div class="vc_wp-form-col vc_wp-form-checkbox">
<label>
<input type="checkbox"
name="<?php echo esc_attr( $params_prefix . '[' . $cap[0] . ']' ) ?>"
value="1"
class="vc_roles-settings-checkbox"
<?php
// hard coded yes :)
if ( 'administrator' === $role && 'settings' === $part && ( 'vc-roles-tab' === $cap[0] || 'vc-updater-tab' === $cap[0] ) ) {
echo ' disabled checked';
} else {
?>
data-vc-part="<?php echo esc_attr( $part ) ?>"
data-vc-name="<?php echo esc_attr( $cap[0] ) ?>"
data-vc-roles="serialize"
data-vc-roles="checkbox"<?php echo $controller->can( $cap[0], false )
->get() ? ' checked' : '' ?>
<?php
}
?>>
<?php echo esc_html( $cap[1] ) ?>
</label>
</div>
<?php endforeach; ?>
</div>
</fieldset>
</td>
</tr>
<?php endif; ?>
<?php endif; ?>
@@ -0,0 +1,16 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'options' => array(
array( true, __( 'Enabled', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Page settings', 'js_composer' ),
'description' => __( 'Control access to WPBakery Page Builder page settings. Note: Disable page settings to restrict editing of Custom CSS through page.', 'js_composer' ),
) );
@@ -0,0 +1,21 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'custom_value' => 'custom',
'capabilities' => $vc_role->getPostTypes(),
'options' => array(
array( true, __( 'Pages only', 'js_composer' ) ),
array( 'custom', __( 'Custom', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Post types', 'js_composer' ),
'custom_label' => __( 'Post types', 'js_composer' ),
'description' => __( 'Enable WPBakery Page Builder for pages, posts and custom post types. Note: By default WPBakery Page Builder is available for pages only.', 'js_composer' ),
) );
@@ -0,0 +1,17 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'options' => array(
array( true, __( 'All', 'js_composer' ) ),
array( 'add', __( 'Apply presets only', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Element Presets', 'js_composer' ),
'description' => __( 'Control access rights to element presets in element edit form. Note: "Apply presets only" restricts users from saving new presets and deleting existing.', 'js_composer' ),
) );
@@ -0,0 +1,24 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
$tabs = array();
foreach ( vc_settings()->getTabs() as $tab => $title ) {
$tabs[] = array( $tab . '-tab', $title );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'custom_value' => 'custom',
'capabilities' => $tabs,
'options' => array(
array( true, __( 'All', 'js_composer' ) ),
array( 'custom', __( 'Custom', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Settings options', 'js_composer' ),
'custom_label' => __( 'Settings options', 'js_composer' ),
'description' => __( 'Control access rights to WPBakery Page Builder admin settings tabs (e.g. General Settings, Shortcode Mapper, ...)', 'js_composer' ),
) );
@@ -0,0 +1,39 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'custom_value' => 'custom',
'capabilities' => WPBMap::getSortedAllShortCodes(),
'ignore_capabilities' => array(
'vc_gitem',
'vc_gitem_animated_block',
'vc_gitem_zone',
'vc_gitem_zone_a',
'vc_gitem_zone_b',
'vc_gitem_zone_c',
'vc_column',
'vc_row_inner',
'vc_column_inner',
'vc_posts_grid',
),
'categories' => WPBMap::getCategories(),
'cap_types' => array(
array( 'all', __( 'All', 'js_composer' ) ),
array( 'edit', __( 'Edit', 'js_composer' ) ),
),
'item_header_name' => __( 'Element', 'js_composer' ),
'options' => array(
array( true, __( 'All', 'js_composer' ) ),
array( 'edit', __( 'Edit only', 'js_composer' ) ),
array( 'custom', __( 'Custom', 'js_composer' ) ),
),
'main_label' => __( 'Elements', 'js_composer' ),
'custom_label' => __( 'Elements', 'js_composer' ),
'description' => __( 'Control user access to content elements.', 'js_composer' ),
'use_table' => true,
) );
@@ -0,0 +1,17 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
vc_include_template( 'pages/partials/vc-roles-parts/_part.tpl.php', array(
'part' => $part,
'role' => $role,
'params_prefix' => 'vc_roles[' . $role . '][' . $part . ']',
'controller' => vc_role_access()->who( $role )->part( $part ),
'options' => array(
array( true, __( 'All', 'js_composer' ) ),
array( 'add', __( 'Apply templates only', 'js_composer' ) ),
array( false, __( 'Disabled', 'js_composer' ) ),
),
'main_label' => __( 'Templates', 'js_composer' ),
'description' => __( 'Control access rights to templates and predefined templates. Note: "Apply templates only" restricts users from saving new templates and deleting existing.', 'js_composer' ),
) );
@@ -0,0 +1,45 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<fieldset>
<legend class="screen-reader-text">
<span><?php echo esc_html( $title ) ?></span>
</legend>
<table class="vc_general vc_wp-form-table fixed">
<thead>
<tr>
<th><?php _e( 'Post type', 'js_composer' ) ?></th>
<th><?php _e( 'Template', 'js_composer' ) ?></th>
</tr>
</thead>
<tbody>
<?php foreach ( $post_types as $post_type ) : ?>
<?php $post_type_object = get_post_type_object( $post_type[0] ); ?>
<tr>
<td title="<?php echo esc_attr( $post_type[0] ) ?>">
<?php echo esc_html( $post_type_object ? $post_type_object->labels->name : $post_type[0] ) ?>
</td>
<td>
<select name="<?php echo $field_key ?>[<?php echo $post_type[0] ?>]">
<option value=""><?php _e( 'None', 'js_composer' ) ?></option>
<?php foreach ( $templates as $templates_category ) : ?>
<optgroup label="<?php echo esc_attr( $templates_category['category_name'] ) ?>">
<?php foreach ( $templates_category['templates'] as $template ) : ?>
<?php
$key = $template['type'] . '::' . esc_attr( $template['unique_id'] );
$selected = isset( $value[ $post_type[0] ] ) && $value[ $post_type[0] ] === $key ? ' selected="true"' : '';
?>
<option value="<?php echo esc_attr( $key ) ?>"<?php echo $selected ?>><?php echo esc_html( $template['name'] ) ?></option>
<?php endforeach; ?>
</optgroup>
<?php endforeach; ?>
</select>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</fieldset>
@@ -0,0 +1,16 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<div class="wrap vc_settings" id="wpb-js-composer-settings">
<h2><?php _e( 'WPBakery Page Builder Settings', 'js_composer' ); ?></h2>
<?php settings_errors(); ?>
<?php vc_include_template( '/pages/partials/_settings_tabs.php',
array(
'active_tab' => $active_page->getSlug(),
'tabs' => $pages,
) );
?>
<?php $active_page->render(); ?>
</div>
@@ -0,0 +1,88 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
$tab = esc_attr( preg_replace( '/^vc\-/', '', $page->getSlug() ) );
$editable_roles = get_editable_roles();
require_once vc_path_dir( 'SETTINGS_DIR', 'class-vc-roles.php' );
$vc_role = new Vc_Roles();
?>
<form action="<?php echo admin_url( 'admin-ajax.php' ); ?>" method="post"
id="vc_settings-<?php echo $tab ?>"
class="vc_settings-tab-content vc_settings-tab-content-active"<?php echo apply_filters( 'vc_setting-tab-form-' . $tab, '' ) ?>
data-vc-roles="form">
<div class="tab_intro">
<p><?php _e( 'Control user group role access to the features and options of WPBakery Page Builder - manage WordPress default and custom roles.', 'js_composer' ) ?></p>
</div>
<!-- Settings template start -->
<div class="vc_wp-settings">
<div class="vc_wp-accordion" data-vc-action="collapseAll">
<?php foreach ( $editable_roles as $role => $details ) :
$name = translate_user_role( $details['name'] );
$unique_id = 'vc_role-' . $role;
$valid_roles = array();
foreach ( $vc_role->getParts() as $part ) {
if ( $vc_role->hasRoleCapability( $role, $vc_role->getPartCapability( $part ) ) ) {
$valid_roles[] = $part;
}
}
if ( count( $valid_roles ) > 0 ) :
?>
<div
class="vc_wp-accordion-panel vc_ui-settings-roles-role<?php echo ! isset( $next ) ? ' vc_active' : '' ?>"
data-vc-unique-id="<?php echo esc_attr( $unique_id ) ?>"
data-vc-content=".vc_wp-accordion-panel-body"
data-vc-role="<?php echo esc_attr( $role ) ?>">
<div class="widget" data-vc-accordion=""
data-vc-container=".vc_wp-accordion"
data-vc-target="[data-vc-unique-id=<?php echo esc_attr( $unique_id ) ?>]">
<div class="widget-top">
<div class="widget-title-action">
<button type="button" class="widget-action hide-if-no-js" aria-expanded="true">
<span class="screen-reader-text">Edit widget: Search</span>
<span class="toggle-indicator" aria-hidden="true"></span>
</button>
</div>
<div class="widget-title">
<h4>
<?php echo esc_html( $name ) ?>
<span class="in-widget-title"></span>
</h4>
</div>
</div>
</div>
<div class="vc_wp-accordion-panel-body">
<table class="form-table">
<tbody>
<?php
$next = true;
foreach ( $valid_roles as $part ) {
vc_include_template( 'pages/partials/vc-roles-parts/_' . $part . '.tpl.php', array(
'part' => $part,
'role' => $role,
'vc_role' => $vc_role,
) );
}
?>
</tbody>
</table>
</div>
</div>
<?php endif; ?>
<?php endforeach; ?>
</div>
</div>
<span class="vc_settings-spinner vc_ui-wp-spinner" style="display: none;" id="vc_wp-spinner"></span>
<!-- Settings template end -->
<?php
wp_nonce_field( 'vc_settings-' . $tab . '-action', 'vc_nonce_field' );
$submit_button_attributes = array();
$submit_button_attributes = apply_filters( 'vc_settings-tab-submit-button-attributes', $submit_button_attributes, $tab );
$submit_button_attributes = apply_filters( 'vc_settings-tab-submit-button-attributes-' . $tab, $submit_button_attributes, $tab );
submit_button( __( 'Save Changes', 'js_composer' ), 'primary', 'submit_btn', true, $submit_button_attributes );
?>
<input type="hidden" name="action" value="vc_roles_settings_save"
id="vc_settings-<?php echo $tab; ?>-action"/>
</form>
@@ -0,0 +1,127 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
$tab = preg_replace( '/^vc\-/', '', $page->getSlug() );
$use_custom = get_option( vc_settings()->getFieldPrefix() . 'use_custom' );
$css = ( ( 'color' === $tab ) && $use_custom ) ? ' color_enabled' : '';
$dev_environment = vc_license()->isDevEnvironment();
$license_key = vc_license()->getLicenseKey();
$classes = 'vc_settings-tab-content vc_settings-tab-content-active ' . esc_attr( $css );
?>
<script type="text/javascript">
var vcAdminNonce = '<?php echo vc_generate_nonce( 'vc-admin-nonce' ); ?>';
</script>
<?php if ( 'updater' === $tab && $dev_environment && ! vc_license()->isActivated() ) : ?>
<br/>
<div class="updated vc_updater-result-message">
<p>
<strong>
<?php _e( 'It is optional to activate license on localhost development environment. You can still activate license on localhost to receive plugin updates and get access to template library.', 'js_composer' ) ?>
</strong>
</p>
</div>
<?php endif ?>
<form action="options.php"
method="post"
id="vc_settings-<?php echo $tab ?>"
data-vc-ui-element="settings-tab-<?php echo $tab ?>"
class="<?php echo $classes ?>"
<?php echo apply_filters( 'vc_setting-tab-form-' . $tab, '' ) ?>
>
<?php settings_fields( vc_settings()->getOptionGroup() . '_' . $tab ) ?>
<?php do_settings_sections( vc_settings()->page() . '_' . $tab ) ?>
<?php if ( 'general' === $tab && vc_pointers_is_dismissed() ) : ?>
<table class="form-table">
<tr>
<th scope="row"><?php _e( 'Guide tours', 'js_composer' ) ?></th>
<td>
<a href="#" class="button vc_pointers-reset-button"
id="vc_settings-vc-pointers-reset"
data-vc-done-txt="<?php _e( 'Done', 'js_composer' ) ?>"><?php _e( 'Reset', 'js_composer' ) ?></a>
<p
class="description indicator-hint"><?php _e( 'Guide tours are shown in VC editors to help you to start working with editors. You can see them again by clicking button above.', 'js_composer' ) ?></p>
</td>
</tr>
</table>
<?php endif ?>
<?php
$submit_button_attributes = array();
$submit_button_attributes = apply_filters( 'vc_settings-tab-submit-button-attributes', $submit_button_attributes, $tab );
$submit_button_attributes = apply_filters( 'vc_settings-tab-submit-button-attributes-' . $tab, $submit_button_attributes, $tab );
?>
<?php if ( 'updater' !== $tab ) : ?>
<?php submit_button( __( 'Save Changes', 'js_composer' ), 'primary', 'submit_btn', true, $submit_button_attributes ); ?>
<?php endif ?>
<input type="hidden" name="vc_action" value="vc_action-<?php echo $tab; ?>"
id="vc_settings-<?php echo $tab; ?>-action"/>
<?php if ( 'color' === $tab ) : ?>
<a href="#" class="button vc_restore-button" id="vc_settings-color-restore-default">
<?php echo __( 'Restore Default', 'js_composer' ) ?>
</a>
<?php endif ?>
<?php if ( 'updater' === $tab ) : ?>
<div class="vc_settings-activation-deactivation">
<?php if ( vc_license()->isActivated() ) : ?>
<p>
<?php echo __( 'You have activated WPBakery Page Builder version which allows you to access all the customer benefits. Thank you for choosing WPBakery Page Builder as your page builder. If you do not wish to use WPBakery Page Builder on this WordPress site you can deactivate your license below.', 'js_composer' ) ?>
</p>
<br/>
<p>
<button
class="button button-primary button-hero button-updater"
data-vc-action="deactivation"
type="button"
id="vc_settings-updater-button">
<?php echo __( 'Deactivate WPBakery Page Builder', 'js_composer' ) ?>
</button>
<img src="<?php echo get_admin_url() ?>/images/wpspin_light.gif" class="vc_updater-spinner"
id="vc_updater-spinner" width="16" height="16" alt="spinner"/>
</p>
<?php else : ?>
<p>
<?php echo __( 'In order to receive all benefits of WPBakery Page Builder, you need to activate your copy of the plugin. By activating WPBakery Page Builder license you will unlock premium options - <strong>direct plugin updates</strong>, access to <strong>template library</strong> and <strong>official support.</strong>', 'js_composer' ) ?>
</p>
<br/>
<p>
<button
class="button button-primary button-hero button-updater"
data-vc-action="activation"
type="button"
id="vc_settings-updater-button">
<?php echo __( 'Activate WPBakery Page Builder', 'js_composer' ) ?>
</button>
<img src="<?php echo get_admin_url() ?>/images/wpspin_light.gif" class="vc_updater-spinner"
id="vc_updater-spinner" width="16" height="16" alt="spinner"/>
</p>
<p class="description">
<?php echo sprintf( __( 'Don\'t have direct license yet? <a href="%s" target="_blank">Purchase WPBakery Page Builder license</a>.', 'js_composer' ), esc_url( 'http://go.wpbakery.com/wpb-buy' ) ) ?>
</p>
<?php endif ?>
</div>
<?php endif ?>
</form>
@@ -0,0 +1,12 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<script type="text/javascript">
var vcAdminNonce = '<?php echo vc_generate_nonce( 'vc-admin-nonce' ); ?>';
</script>
<form action="options.php" method="post" id="vc_settings-automapper"
class="vc_settings-tab-content vc_settings-tab-content-active"<?php echo apply_filters( 'vc_setting-tab-form-automapper', '' ) ?>>
<?php vc_automapper()->renderHtml(); ?>
</form>
@@ -0,0 +1,46 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
preg_match( '/^(\d+)(\.\d+)?/', WPB_VC_VERSION, $matches );
?>
<div class="wrap vc-page-welcome about-wrap">
<h1><?php echo sprintf( __( 'Welcome to WPBakery Page Builder %s', 'js_composer' ), isset( $matches[0] ) ? $matches[0] : WPB_VC_VERSION ) ?></h1>
<div class="about-text">
<?php _e( 'Congratulations! You are about to use most powerful time saver for WordPress ever - page builder plugin with Frontend and Backend editors by WPBakery.', 'js_composer' ) ?>
</div>
<div class="wp-badge vc-page-logo">
<?php echo sprintf( __( 'Version %s', 'js_composer' ), WPB_VC_VERSION ) ?>
</div>
<p class="vc-page-actions">
<?php if ( vc_user_access()
->wpAny( 'manage_options' )
->part( 'settings' )
->can( 'vc-general-tab' )
->get() && ( ! is_multisite() || ! is_main_site() )
) : ?>
<a href="<?php echo esc_attr( admin_url( 'admin.php?page=vc-general' ) ) ?>"
class="button button-primary"><?php _e( 'Settings', 'js_composer' ) ?></a><?php endif; ?>
<a href="https://twitter.com/share" class="twitter-share-button"
data-via="wpbakery"
data-text="Take full control over your #WordPress site with WPBakery Page Builder page builder"
data-url="http://wpbakery.com" data-size="large">Tweet</a>
<script>! function ( d, s, id ) {
var js, fjs = d.getElementsByTagName( s )[ 0 ], p = /^http:/.test( d.location ) ? 'http' : 'https';
if ( ! d.getElementById( id ) ) {
js = d.createElement( s );
js.id = id;
js.src = p + '://platform.twitter.com/widgets.js';
fjs.parentNode.insertBefore( js, fjs );
}
}( document, 'script', 'twitter-wjs' );</script>
</p>
<?php vc_include_template( '/pages/partials/_tabs.php', array(
'slug' => $page->getSlug(),
'active_tab' => $active_page->getSlug(),
'tabs' => $pages,
) );
?>
<?php echo $active_page->render(); ?>
</div>
@@ -0,0 +1,101 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<div class="vc_faq-tab changelog">
<h3><?php _e( 'New to WPBakery Page Builder or Looking for More Information?', 'js_composer' ); ?></h3>
<p><?php printf( __( 'WPBakery has complete documentation available at our knowledge base: <a target="_blank" href="%s">kb.wpbakery.com</a> which covers everything related to WPBakery Page Builder starting from Installation and up to more advanced features based on our Inner API.', 'js_composer' ), 'http://kb.wpbakery.com' ); ?></p>
<div class="feature-section vc_row">
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/preface">Preface</a></h4>
<ul>
<li><a target="_blank" href="http://go.wpbakery.com/introduction">Introduction</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/support-and-resources">Support and Resources</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/support-policy">Support Policy</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/release-notes">Release Notes</a></li>
</ul>
</div>
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/licensing">Licensing</a></h4>
<ul>
<li><a target="_blank" href="http://go.wpbakery.com/regular-license">Regular License</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/extended-license">Extended License</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/in-stock-license-terms">In-Stock License (Theme Integration)</a></li>
</ul>
</div>
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/getting-started">Getting Started</a></h4>
<ul>
<li><a target="_blank" href="http://go.wpbakery.com/install">Plugin Installation</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/activation">Activation</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/update">Update</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/content-type">Content Type</a></li>
</ul>
</div>
</div>
<div class="feature-section vc_row">
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/learning-more">Learning More</a>
</h4>
<ul>
<li><a target="_blank" href="http://go.wpbakery.com/basic-concept">Basic Concept</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/content-elements">Content Elements</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/general-settings">General Settings</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/custom-css">Custom CSS</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/element-design-options">Element Design Options</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/responsive-settings">Responsive Settings</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/templates">Templates</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/predefined-layouts">Predefined Layouts</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/shortcode-mapper">Shortcode Mapper</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/grid-builder">Grid Builder</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/image-filters">Image filters</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/element-presets">Element Presets</a></li>
</ul>
</div>
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/vc-how-tos">WPBakery Page Builder "How To's"</a></h4>
<p>In this section, you will find quick tips in form of video tutorials on how to operate with WPBakery Page Builder.</p>
</div>
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/faq">FAQ</a></h4>
<p>Here you can find answers to the Frequently Asked Question about WPBakery Page Builder.</p>
</div>
</div>
<div class="feature-section vc_row">
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/addons">Add-ons</a></h4>
<ul>
<li><a target="_blank" href="http://go.wpbakery.com/templatera">Templatera</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/easy-tables">Easy Tables</a></li>
<li><a target="_blank" href="http://go.wpbakery.com/addon-development-rules">Add-on Development Rules</a></li>
</ul>
</div>
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/theme-integration">Theme Integration</a></h4>
<p>See how you can integrate WPBakery Page Builder within your WordPress theme.</p>
</div>
<div class="vc_col-xs-4">
<h4><a target="_blank" href="http://go.wpbakery.com/inner-api">Inner API</a></h4>
<p>Inner API section describes capabilities of interaction with WPBakery Page Builder.</p>
</div>
</div>
</div>
<div class="return-to-dashboard">
<a target="_blank" href="http://kb.wpbakery.com"><?php _e( 'Visit Knowledge Base for more information', 'js_composer' ); ?></a>
</div>
@@ -0,0 +1,30 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<div class="vc_resources-tab changelog">
<div class="feature-section vc_row">
<div class="vc_col-xs-6">
<h3><?php _e( 'Resources', 'js_composer' ); ?></h3>
<p><?php _e( 'There are several resources available to WPBakery Page Builder users to help you to get around plugin:', 'js_composer' ); ?></p>
<ul>
<li><a href="http://wpbakery.com/?utm_campaign=VCplugin&amp;utm_source=vc_user&amp;utm_medium=welcome_page" target="_blank">Official website</a></li>
<li><a href="http://kb.wpbakery.com" target="_blank">Official Knowledge Base</a></li>
<li><a href="http://wpbakery.com/video-academy/" target="_blank">Video Academy</a></li>
<li><a href="http://support.wpbakery.com" target="_blank">Official support</a></li>
<li><a href="http://facebook.com/wpbakery" target="_blank">Facebook page</a></li>
<li><a href="http://twitter.com/wpbakery" target="_blank">Twitter account</a></li>
</ul>
</div>
<div class="vc_col-xs-6">
<h3><?php _e( 'Official Support', 'js_composer' ); ?></h3>
<p><?php printf( __( 'To get your support related question answered in the fastest timing, please head over to our <a href="%s" target="_blank">support page</a> and open Support ticket. To open a support ticket you should have a valid support subscription in case if your support has expired you can <a href="%s" target="_blank">purchase support extension</a> on support.wpbakery.com.', 'js_composer' ), 'http://support.wpbakery.com', 'http://support.wpbakery.com' ); ?></p>
<p><?php printf( __( 'Before applying for support please make sure you understand the rules of support and go through all steps described and listed in <a href="%s" target="_blank">Support Policy</a> in order to get your issues solved as soon as possible.', 'js_composer' ), 'http://go.wpbakery.com/support-policy' ); ?></p>
</div>
</div>
</div>
@@ -0,0 +1,17 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
?>
<div class="vc_welcome-tab changelog">
<div class="vc_feature-section-teaser">
<div>
<img class="vc-featured-img" src="<?php echo vc_asset_url( 'vc/vc-welcome/vc_5-6/1.png' ); ?>"/>
<h3><?php _e( 'WordPress 5.0 Compatible', 'js_composer' ); ?></h3>
<p><?php _e( 'WPBakery Page Builder goes hand in hand with the latest releases of WordPress. Want to stay up to date with WordPress 5.0? No problem, WPBakery Page Builder is fully compatible with the latest WordPress version and the new editor.', 'js_composer' ); ?></p>
</div>
</div>
<p class="vc-thank-you">Thank you for choosing WPBakery Page Builder,<br/>Michael M, CEO at WPBakery</p>
</div>