version = $version;
$this->settings = $settings;
$this->assets_url = $assets_url;
$this->renderer = $renderer;
$this->helper = new TT_Arkam_Lite_Helper();
}
/**
* Add Arkam to admin menu
*
* @since 1.0.0
*/
public function add_admin_menu() {
add_menu_page(
esc_html__( 'Arkam Lite', 'arkam-lite' ), // page title
esc_html__( 'Arkam Lite', 'arkam-lite' ), // menu title
'manage_options', // capability
'arkam-lite', // menu slug
array( $this, 'settings_page_callback' ), // callback
$this->assets_url . 'img/icon_32.svg', // icon url
110 // position
);
}
/**
* Admin page callback
*
* @since 1.0.0
*/
public function settings_page_callback() { ?>
settings_form_handler(); ?>
helper->sanitize_checkbox( $submitted['backlink'] );
} else {
unset( $options['backlink'] );
}
// Sanitize channel settings
foreach ( $submitted as $key => $data ) {
if ( array_key_exists( $key, $this->settings['profiles'] ) ) {
// Sanitize ID field
if ( isset( $data['id'] ) ) {
$options[$key]['id'] = $this->helper->sanitize_url_var( $data['id'] );
}
// Sanitize Access Token field
if ( isset( $data['access'] ) ) {
$options[$key]['access'] = $this->helper->sanitize_url_var( $data['access'] );
}
// Sanitize Type field
if ( isset( $data['type'] ) ) {
$options[$key]['type'] = esc_attr( $data['type'] );
}
// Sanitize URL field
if ( isset( $data['url'] ) ) {
$options[$key]['url'] = esc_url_raw( $data['url'] );
}
// Sanitize Label (Text) field
if ( isset( $data['text'] ) ) {
$options[$key]['text'] = esc_attr( $data['text'] );
}
// Sanitize Fallback field
if ( isset( $data['fallback'] ) ) {
$options[$key]['fallback'] = esc_attr( $data['fallback'] );
}
}
}
// All data were sanitized, lets save them
update_option( 'tt_arkam_lite', $options );
$class = 'notice notice-success is-dismissible';
$message = esc_html__( 'Settings Saved', 'arkam-lite' );
printf( '', $class, $message );
// Set new options
$this->renderer->set_options( $_POST['tt_arkam_lite'] );
// Clear transients
foreach ( $this->settings['profiles'] as $key => $value ) {
delete_transient( 'tt_arkam_lite_'. $key );
}
}
}
/**
* Token Panel
*
* @since 1.0.0
*/
public function token_panel() { ?>
|
renderer->render_text_option( array( 'name' => '' ) ); ?> |
|
renderer->render_text_option( array( 'name' => '') ); ?> |
|
renderer->render_button_option(
array(
'title' => esc_html__( 'Generate', 'arkam-lite' ),
'class' => 'arkam-sub-btn'
)
); ?> |
settings['profiles'] as $key => $data ) {
$channels[$key] = $data['label'];
}
$ajaxurl = in_array( 'sitepress-multilingual-cms/sitepress.php', get_option( 'active_plugins' ) )? admin_url( 'admin-ajax.php?lang='. ICL_LANGUAGE_CODE ): admin_url( 'admin-ajax.php' );
wp_enqueue_style( 'wp-color-picker' );
wp_enqueue_style( 'ark-lite-icons',
$this->assets_url . 'css/fontello.css',
null,
$this->version
);
// admin.css
wp_enqueue_style(
'arkam-lite-admin',
$this->assets_url . 'css/admin.css',
array(),
$this->version
);
// theia-sticky-sidebar.min.js
wp_enqueue_script(
'theia-sticky-sidebar',
$this->assets_url . 'js/theia-sticky-sidebar.min.js',
array( 'jquery' ),
'1.7.0',
true
);
// admin.js
wp_enqueue_script(
'arkam-lite-admin',
$this->assets_url . 'js/admin.js',
array( 'jquery', 'wp-color-picker' ),
$this->version,
true
);
wp_localize_script( 'arkam-lite-admin', 'arkamLiteAdmin', array(
'arkam-lite' => esc_html__( 'Arkam Lite', 'arkam-lite' ),
'ajaxurl' => $ajaxurl,
'nonce' => wp_create_nonce( 'tt-arkam-lite-ajax' ),
'channels' => json_encode( $channels ),
'mce' => array(
'arkam' => esc_html__( 'Arkam Lite', 'arkam-lite' ),
'settings' => esc_html__( 'Arkam Lite Settings', 'arkam-lite' ),
'error' => esc_html__( 'An error accured.', 'arkam-lite' ),
'layout' => esc_html__( 'Layout', 'arkam-lite' ),
'grid' => esc_html__( 'Grid', 'arkam-lite' ),
'mosaic' => esc_html__( 'Mosaic', 'arkam-lite' ),
'block' => esc_html__( 'Block', 'arkam-lite' ),
'spacing' => esc_html__( 'Spacing', 'arkam-lite' ),
'pixels_0' => esc_html__( '0 Pixels', 'arkam-lite' ),
'pixel_1' => esc_html__( '1 Pixel', 'arkam-lite' ),
'pixels_2' => esc_html__( '2 Pixels', 'arkam-lite' ),
'pixels_3' => esc_html__( '3 Pixels', 'arkam-lite' ),
'pixels_4' => esc_html__( '4 Pixels', 'arkam-lite' ),
'pixels_5' => esc_html__( '5 Pixels', 'arkam-lite' ),
'size' => esc_html__( 'Size', 'arkam-lite' ),
'medium' => esc_html__( 'Medium', 'arkam-lite' ),
'small' => esc_html__( 'Small', 'arkam-lite' ),
'large' => esc_html__( 'Large', 'arkam-lite' ),
'color' => esc_html__( 'Color Scheme', 'arkam-lite' ),
'colored' => esc_html__( 'Colored', 'arkam-lite' ),
'light' => esc_html__( 'Light', 'arkam-lite' ),
'dark' => esc_html__( 'Dark', 'arkam-lite' ),
'el_class' => esc_html__( 'Extra Class Name', 'arkam-lite' ),
)
) );
}
}
}