PluginProbe
Social Share Buttons / 1.1.2
Social Share Buttons v1.1.2
trunk 0.9 1.0 1.1 1.1.1 1.1.2 1.10 1.11 1.12 1.15 1.16 1.17 1.18 1.19 1.2 1.20 1.3 1.30 1.4 1.5 1.6 1.7 1.8 1.9
← All changes | classes/class-admin.php +11 -188 1.101.1.2 View file →
@@ -56,8 +56,9 @@
56 56 {
57 57 $fields = apply_filters('mbsocial/display_fields', $this->fields);
58 58 $output = '';
59 59
60 +
60 61 foreach($fields as $id => $item)
61 62 {
62 63 $field = $item['field'];
63 64 $output .= $field->output($item['start'], $item['end']);
@@ -100,8 +101,9 @@
100 101 {
101 102 $active_networks = array();
102 103 }
103 104 $networks = mbSocial()->networks()->get();
105 +
104 106 $selected = array();
105 107 $unselected = array();
106 108 $readmore = array();
107 109
@@ -108,19 +110,14 @@
108 110 // set active networks. Support doubles.
109 111 foreach($active_networks as $index => $network_name)
110 112 {
111 113 $network = mbSocial()->networks()->get($network_name);
112 - if (! is_object($network)) // could be removed network.
113 - continue;
114 - if ($network->get('is_active'))
115 - $selected[$index] = $network;
114 + $selected[$index] = $network;
116 115 }
117 116
118 117 foreach($networks as $index => $network)
119 118 {
120 119 $priority = $network->get('priority');
121 - if (! $network->get('is_active'))
122 - { continue; }
123 120 $is_active = array_search($network->get('network'), $active_networks); // retrieve the array index
124 121
125 122 if ($is_active !== false)
126 123 {
@@ -126,16 +123,22 @@
126 123 {
127 124 $priority = 'selected';
128 125 }
129 126
127 + /* if ($priority == 'selected')
128 + {
129 + continue; // ignore active, since it's set earlier.
130 + //$selected[$is_active] = $network;
131 +
132 + } */
130 133 if ($priority == 'unselected')
131 134 $unselected[] = $network;
132 135 if ($priority == 'readmore')
133 136 $readmore[] = $network;
134 137
138 +
135 139 if ($network->get('network') == 'maxbutton' && $priority != 'readmore') // exceptions
136 140 {
137 -
138 141 $readmore[] = $network;
139 142 }
140 143
141 144
@@ -140,8 +143,9 @@
140 143
141 144
142 145 } // foreach networks
143 146
147 +
144 148 // Sort networks by order saved.
145 149 ksort($selected);
146 150 return array('selected' => $selected, 'unselected' => $unselected, 'readmore' => $readmore);
147 151 }
@@ -154,110 +158,8 @@
154 158 $networks_array = $this->get_default_networks($active_networks);
155 159 return $networks_array;
156 160 }
157 161
158 - // render icons with input from different icon libraries (/future)
159 - public function renderIcon($args)
160 - {
161 - $defaults = array('icon' => '',
162 - 'icon_type' => '',
163 - 'icon_size' => 20,
164 - 'title' => '',
165 - );
166 -
167 - $args = wp_parse_args($args, $defaults);
168 -
169 - $icon_type = $args['icon_type'];
170 - $icon = $args['icon'];
171 - $icon_size = $args['icon_size'];
172 - $title = $args['title'];
173 -
174 - $faUtils = FAUtils::getInstance();
175 -
176 - switch($icon_type)
177 - {
178 - case 'fa': // FA5
179 - case 'fab':
180 - case 'fas':
181 - case 'far':
182 - $args = array('icon' => trim($icon_type) . ' ' . trim($icon), 'title' => $title);
183 - if ($icon_size)
184 - {
185 - $args['size'] = $icon_size;
186 - }
187 -
188 - $svg = $faUtils->getFASVG($args);
189 - $output = "<span class='mb-icon'>$svg</span>";
190 - break;
191 - case 'nucleo':
192 - $output = "<span class='mb-icon'><i class='$icon_type $icon' title='$title' > </i></span>";
193 - break;
194 - case 'svg':
195 - case 'png': // via network settings, or whatever.
196 - $output = "<span class='mb-icon " . $icon_type . "'><img src='" . $icon . "' alt='" . $title . "'></span>";
197 - break;
198 - case 'image': // via media uploader
199 - case 'image-remote':
200 - if ($icon_type == 'image-remote') // when loading a custom network, before import
201 - {
202 - $url = $args['image_url'];
203 - $output = '<img src="' . $url . '" border="0" />';
204 - }
205 - else {
206 - $image_id = isset($args['image_id']) ? $args['image_id'] : false;
207 - $image_size = isset($args['image_size']) ? $args['image_size'] : false;
208 -
209 - $img_data = wp_get_attachment_image_src($image_id, $image_size);
210 - $output = '';
211 -
212 - if ($img_data)
213 - {
214 - $width = $img_data[1];
215 - $height = $img_data[2];
216 - $url = $img_data[0];
217 - $output = '<span class="mb-icon ' . $icon_type . '"><img src="' . $url . '" width="' . $width . '" height="' . $height . '" border="0" /></span>';
218 - }
219 -
220 - }
221 - break;
222 - default:
223 - $output = '';
224 - break;
225 - }
226 -
227 - return apply_filters('display/render/icon', $output, $args);
228 - }
229 -
230 - public function applyVars($string)
231 - {
232 - //$vars = $this->getShareData();
233 - $w = MBSocial()->whistle();
234 -
235 - preg_match_all('/\{(.*?)\}/im', $string, $matches);
236 - //$vars = (isset($vars[0]) && count($vars[0]) > 0) ? $vars[0] : array();
237 -
238 - if (count($matches) == 0)
239 - return $string;
240 -
241 - $vars = $matches[0]; // i.e. {url}
242 - $clean_vars = $matches[1]; // i.e. url
243 -
244 - for($i = 0; $i < count($vars); $i++)
245 - {
246 - $var = $vars[$i];
247 - $clean_var = $clean_vars[$i];
248 -
249 - if (strpos($string, $var) !== false)
250 - {
251 - $val = $w->ask('display/vars/' . $clean_var);
252 - $string = str_replace($var, $val, $string);
253 - }
254 -
255 - }
256 -
257 - return $string;
258 - }
259 -
260 162 public function header( $args = array() )
261 163 {
262 164 $defaults = array(
263 165 'title' => '',
@@ -280,85 +182,6 @@
280 182 <a href="https://maxbuttons.com" target="_blank">', '</a>') );
281 183 }
282 184
283 185
284 - public function do_review_notice () {
285 -
286 - $current_user_id = get_current_user_id();
287 - $version = MBSOCIAL_VERSION_NUM;
288 -
289 - $review = get_user_meta( $current_user_id, 'mbsocial_review_notice' , true );
290 -
291 - if ($review == '')
292 - {
293 - //$created = get_option("MBFREE_CREATED");
294 - $show = time() + (7* DAY_IN_SECONDS);
295 - update_user_meta($current_user_id, 'mbsocial_review_notice', $show);
296 - return;
297 - }
298 -
299 - $display_review = false;
300 -
301 - if ($review == 'off')
302 - { return; // no show
303 -
304 - }
305 - elseif (is_numeric($review))
306 - {
307 - $now = time();
308 -
309 - if ($now > $review)
310 - {
311 - $display_review = true;
312 -
313 - }
314 - }
315 -
316 - // load style / script. It's seperated since it should show everywhere in admin.
317 - if ($display_review)
318 - {
319 - add_action( 'admin_notices', array( $this, 'mbsocial_review_notice'));
320 - // registered in admin scripts
321 - if (method_exists(MB(), 'load_library'))
322 - MB()->load_library('review_notice');
323 - }
324 -
325 - }
326 -
327 - public function mbsocial_review_notice()
328 - {
329 - include_once( mbSocial()->get_plugin_path() . '/admin/review_notice.php');
330 - }
331 -
332 - public function save_review_notice()
333 - {
334 - $status = isset($_POST["status"]) ? sanitize_text_field($_POST["status"]) : '';
335 - $current_user_id = get_current_user_id();
336 -
337 - $updated = false;
338 -
339 - if ($status == 'off')
340 - {
341 - $updated = true;
342 - update_user_meta($current_user_id, 'mbsocial_review_notice', 'off');
343 -
344 - }
345 - if ($status == 'later')
346 - {
347 - $updated = true;
348 - $later = time() + (14 * DAY_IN_SECONDS );
349 -
350 - update_user_meta($current_user_id, 'mbsocial_review_notice', $later);
351 - }
352 - if ($status == 'reviewoffer-dismiss') // different ad!
353 - {
354 - $updated = true;
355 - update_user_meta($current_user_id, 'mbsocial_review_notice', 'off');
356 -
357 - }
358 -
359 - echo json_encode(array("updated" => $updated)) ;
360 -
361 - exit();
362 - }
363 186
364 187 }