PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 1.7
Advanced Ads – Ad Manager & AdSense v1.7
2.0.24 2.0.23 2.0.22 2.0.21 1.38.0 1.39.0 1.39.1 1.39.2 1.39.3 1.39.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.42.1 1.42.2 1.43.0 1.44.0 1.44.1 1.45.0 1.45.1 1.46.0 1.47.0 1.47.1 1.47.2 1.47.3 1.47.4 1.47.5 1.48.0 1.48.1 1.49.0 1.5.0 1.5.0.1 1.5.1 1.5.2 1.5.2.1 1.5.4 1.5.4.1 1.5.5 1.50.0 1.51.0 1.51.1 1.51.2 1.51.3 1.52.0 1.52.1 1.52.2 1.52.3 1.52.4 1.53.0 1.53.1 1.53.2 1.54.0 1.54.1 1.55.0 1.56.0 1.56.1 1.56.2 1.56.3 1.56.4 1.6 1.6.1 1.6.10 1.6.10.1 1.6.10.2 1.6.11 1.6.11.1 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.2 1.6.2.1 1.6.3 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.6.1 1.6.7 1.6.7.1 1.6.8 1.6.8.1 1.6.8.2 1.6.8.3 1.6.9 1.6.9.1 1.6.9.2 1.6.9.3 1.6.9.4 1.7 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.1.1 1.7.1.2 1.7.1.3 1.7.1.4 1.7.1.5 1.7.10 trunk 1.7.11 1.0.1 1.7.12 1.0.2 1.7.13 1.0.3 1.7.14 1.1.0 1.7.15 1.1.1 1.7.16 1.1.2 1.7.17 1.1.3 1.7.18 1.10 1.7.19 1.10.1 1.7.2 1.10.10 1.7.2.1 1.10.11 1.7.20 1.10.12 1.7.21 1.10.2 1.7.22 1.10.3 1.7.23 1.10.4 1.7.24 1.10.5 1.7.25 1.10.6 1.7.3 1.10.7 1.7.4 1.10.8 1.7.4.1 1.10.9 1.7.4.2 1.11 1.7.4.3 1.11.1 1.7.4.4 1.11.2 1.7.4.5 1.12 1.7.5 1.13 1.7.5.1 1.13.1 1.7.6 1.13.2 1.7.7 1.13.3 1.7.8 1.13.4 1.7.9 1.13.5 1.7.9.1 1.13.6 1.7.9.2 1.13.7 1.7.9.3 1.13.8 1.8 1.14 1.8.1 1.14.1 1.8.10 1.14.10 1.8.11 1.14.11 1.8.12 1.14.2 1.8.13 1.14.3 1.8.14 1.14.4 1.8.15 1.14.5 1.8.16 1.14.6 1.8.17 1.14.7 1.8.18 1.14.8 1.8.19 1.14.9 1.8.2 1.15 1.8.20 1.16 1.8.21 1.16.1 1.8.22 1.17 1.8.23 1.17.1 1.8.24 1.17.10 1.8.25 1.17.10-rc.1 1.8.26 1.17.11 1.8.27 1.17.12 1.8.28 1.17.12-rc.1 1.8.29 1.17.2 1.8.3 1.17.3 1.8.30 1.17.4 1.8.4 1.17.5 1.8.5 1.17.6 1.8.6 1.17.7 1.8.7 1.17.8 1.8.8 1.17.9 1.8.9 1.17.9-beta.1 1.9 1.18.0 2.0.0 1.19.0 2.0.1 1.19.1 2.0.10 1.2 2.0.11 1.2.1 2.0.12 1.2.2 2.0.13 1.2.3 2.0.14 1.2.4 2.0.15 1.2.5 2.0.16 1.2.6 2.0.17 1.2.7 2.0.18 1.20.0 2.0.19 1.20.0-rc.1 2.0.2 1.20.0-rc.2 2.0.20 1.20.1 2.0.3 1.20.2 2.0.4 1.20.3 2.0.5 1.21.0 2.0.6 1.21.1 2.0.7 1.22.0 2.0.8 1.22.1 2.0.9 1.22.2 1.23.0 1.23.1 1.23.2 1.24.0 1.24.1 1.24.2 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.29.0 1.29.1 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.16 1.3.17 1.3.18 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.30.0 1.30.1 1.30.2 1.30.2-rc.1 1.30.3 1.30.4 1.30.4-rc.1 1.30.5 1.31.0 1.31.1 1.32.0 1.32.0-rc.1 1.33.0 1.33.1 1.33.2 1.34.0 1.35.0 1.35.1 1.36.0 1.36.1 1.36.2 1.36.3 1.37.0 1.37.1 1.37.2
advanced-ads / admin / includes / class-shortcode-creator.php
advanced-ads / admin / includes Last commit date
class-ad-groups-list.php 10 years ago class-notices.php 10 years ago class-overview-widgets.php 10 years ago class-shortcode-creator.php 10 years ago notices.php 10 years ago shortcode-creator-l10n.php 10 years ago
class-shortcode-creator.php
139 lines
1 <?php
2 /**
3 * shortcode generator for TinyMCE editor
4 *
5 */
6 class Advanced_Ads_Shortcode_Creator {
7 /**
8 * instance of this class.
9 *
10 * @var object
11 */
12 protected static $instance = null;
13
14 public function __construct() {
15 add_action( 'init', array ( $this, 'init' ) );
16 }
17
18 /**
19 * Return an instance of this class.
20 *
21 * @return object A single instance of this class.
22 */
23 public static function get_instance() {
24 // If the single instance hasn't been set, set it now.
25 if ( null == self::$instance ) {
26 self::$instance = new self;
27 }
28
29 return self::$instance;
30 }
31
32 public function init() {
33 if( ! current_user_can( Advanced_Ads_Plugin::user_cap( 'advanced_ads_place_ads') ) ) {
34 return;
35 }
36
37 if ( 'true' == get_user_option( 'rich_editing' ) ) {
38 add_filter( 'mce_external_plugins', array( $this, 'add_plugin' ) );
39 add_filter( 'mce_buttons', array( $this, 'register_buttons' ) );
40 add_filter( 'mce_external_languages', array( $this, 'add_l10n' ) );
41 add_action( 'wp_ajax_advads_content_for_shortcode_creator', array( $this, 'get_content_for_shortcode_creator' ) );
42 }
43 }
44
45 /**
46 * add the plugin to array of external TinyMCE plugins
47 *
48 */
49 public function add_plugin( $plugin_array ) {
50 $plugin_array['advads_shortcode'] = ADVADS_BASE_URL . 'admin/assets/js/shortcode.js';
51 return $plugin_array;
52 }
53
54 /**
55 * add button to tinyMCE window
56 *
57 */
58 public function register_buttons( $buttons ) {
59 $buttons[] = 'advads_shortcode_button';
60 return $buttons;
61 }
62
63 /**
64 * prints html select field for shortcode creator
65 *
66 */
67 public function get_content_for_shortcode_creator() {
68 if ( ! ( current_user_can( 'edit_posts' ) || current_user_can( 'edit_pages' ) ) ) {
69 return;
70 }
71
72 $items = self::items_for_select(); ?>
73
74 <select id="advads-select-for-shortcode">
75 <option value=""><?php _e( '--empty--', 'advanced-ads' ); ?></option>
76 <?php if ( isset( $items['ads'] ) ) : ?>
77 <optgroup label="<?php _e( 'Ads', 'advanced-ads' ); ?>">
78 <?php foreach ( $items['ads'] as $_item_id => $_item_title ) : ?>
79 <option value="<?php echo $_item_id; ?>"><?php echo $_item_title; ?></option>
80 <?php endforeach; ?>
81 </optgroup>
82 <?php endif; ?>
83 <?php if ( isset( $items['groups'] ) ) : ?>
84 <optgroup label="<?php _e( 'Ad Groups', 'advanced-ads' ); ?>">
85 <?php foreach ( $items['groups'] as $_item_id => $_item_title ) : ?>
86 <option value="<?php echo $_item_id; ?>"><?php echo $_item_title; ?></option>
87 <?php endforeach; ?>
88 </optgroup>
89 <?php endif; ?>
90 <?php if ( isset( $items['placements'] ) ) : ?>
91 <optgroup label="<?php _e( 'Placements', 'advanced-ads' ); ?>">
92 <?php foreach ( $items['placements'] as $_item_id => $_item_title ) : ?>
93 <option value="<?php echo $_item_id; ?>"><?php echo $_item_title; ?></option>
94 <?php endforeach; ?>
95 </optgroup>
96 <?php endif; ?>
97 </select><?php
98 exit();
99 }
100
101 /**
102 * get items for item select field
103 *
104 * @return arr $select items for select field
105 */
106 public static function items_for_select(){
107 $select = array();
108 $model = Advanced_Ads::get_instance()->get_model();
109
110 // load all ads
111 $ads = $model->get_ads( array( 'orderby' => 'name', 'order' => 'ASC' ) );
112 foreach ( $ads as $_ad ){
113 $select['ads']['ad_' . $_ad->ID] = $_ad->post_title;
114 }
115
116 // load all ad groups
117 $groups = $model->get_ad_groups();
118 foreach ( $groups as $_group ){
119 $select['groups']['group_' . $_group->term_id] = $_group->name;
120 }
121
122 // load all placements
123 $placements = $model->get_ad_placements_array();
124 foreach ( $placements as $key => $_placement ) {
125 $select['placements']['placement_' . $key] = $_placement['name'];
126 }
127
128 return $select;
129 }
130
131 /**
132 * add localisation
133 */
134 public function add_l10n( $mce_external_languages ) {
135 $mce_external_languages[ 'advads_shortcode' ] = ADVADS_BASE_PATH . 'admin/includes/shortcode-creator-l10n.php';
136 return $mce_external_languages;
137 }
138 }
139