Beispiel #1
0
 function form_generate_callback($shortcode)
 {
     global $post;
     $pt_shortcodes = ptsc_shortcodes_list();
     $shortcode = $_POST['shortcode'];
     $output = '';
     if (isset($pt_shortcodes) && is_array($pt_shortcodes)) {
         // get shortcode config stuff
         if (isset($pt_shortcodes[$shortcode]['params'])) {
             $params = $pt_shortcodes[$shortcode]['params'];
         }
         $labelbefore = '<tr valign="top"><th scope="row"><label>';
         $labelafter = '</label></th><td>';
         $rowend = '</td></tr>';
         if (isset($pt_shortcodes[$shortcode]['wrapper'])) {
             $output .= '<tbody class="multi">';
         } else {
             $output .= '<tbody>';
         }
         if ($pt_shortcodes[$shortcode]['has_content'] === true) {
             $output .= '<input type="hidden" name="content_flag" id="content_flag" value="1" />';
         }
         if (isset($pt_shortcodes[$shortcode]['wrapper'])) {
             $output .= '<input type="hidden" name="wrapper_tag" id="wrapper_tag" value="' . $pt_shortcodes[$shortcode]['wrapper'] . '" />';
         }
         if (isset($params)) {
             foreach ($params as $key => $param) {
                 $output .= $labelbefore . $param['label'] . $labelafter;
                 switch ($param['type']) {
                     case 'text':
                         $output .= '<input type="text" name="' . $key . '" id="' . $key . '" class="ptsc" value="' . $param['std'] . '" />';
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                     case 'gallery':
                         $upload_link = esc_url(get_upload_iframe_src('image'));
                         $output .= ' <a class="ptsc-upload-images button"  href="' . $upload_link . '">' . __('Select images') . '</a>';
                         $output .= '<input type="text" name="' . $key . '" id="' . $key . '" class="ptsc ptsc-img-ids" value="' . $param['std'] . '" />';
                         $output .= $rowend . "\n";
                         break;
                     case 'colorpicker':
                         $output .= '<input type="text" name="' . $key . '" data-default-color="#ffffff" id="' . $key . '" class="ptsc wp-color-picker-field" value="' . $param['std'] . '" />';
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                     case 'select':
                         $output .= '<select name="' . $key . '"  class="ptsc" id="' . $key . '">' . "\n";
                         foreach ($param['options'] as $value => $option) {
                             if ($value == $param['std']) {
                                 $output .= '<option selected value="' . $value . '">' . $option . '</option>' . "\n";
                             } else {
                                 $output .= '<option value="' . $value . '">' . $option . '</option>' . "\n";
                             }
                         }
                         $output .= '</select>';
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                     case 'textarea':
                         $output .= '<textarea name="' . $key . '" class="ptsc-content" rows="4" cols="50" id="ptsc-' . $key . '"></textarea>';
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                     case 'checkbox':
                         $output .= '<input type="checkbox"  class="ptsc"  name="' . $key . '" id="' . $key . '" ' . ($param['std'] ? 'checked' : '') . ' />' . "\n";
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                     case 'checkbox-multi':
                         $output .= "<ul>";
                         foreach ($param['options'] as $value => $option) {
                             $output .= '<li><input type="checkbox"  class="ptsc"  name="' . $value . '" id="' . $value . '"/>';
                             $output .= ' <span>' . $option . '</span></li>';
                         }
                         $output .= "</ul>";
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                     case 'select-multi':
                         $output .= '<select multiple name="' . $key . '"  class="ptsc" id="' . $key . '">' . "\n";
                         foreach ($param['options'] as $value => $option) {
                             if ($value == $param['std']) {
                                 $output .= '<option selected value="' . $value . '">' . $option . '</option>' . "\n";
                             } else {
                                 $output .= '<option value="' . $value . '">' . $option . '</option>' . "\n";
                             }
                         }
                         $output .= '</select>';
                         if (!empty($param['desc'])) {
                             $output .= '<p class="description">' . $param['desc'] . '</p>';
                         }
                         $output .= $rowend . "\n";
                         break;
                 }
             }
         }
         if (isset($pt_shortcodes[$shortcode]['wrapper'])) {
             $output .= '<tr valign="top"><th scope="row"></th><td><a href="#" class="button button-secondary button-small ptsc-duplicate">Duplicate</a>' . $rowend . "\n";
         }
         $output .= '</tbody>';
     }
     echo $output;
     die;
 }
Beispiel #2
0
<?php

/* set arrays for select options */
function ptsc_shortcodes_list()
{
    $ptsc_icons = array('icon-glass' => 'icon-glass', 'icon-music' => 'icon-music', 'icon-search' => 'icon-search', 'icon-envelope' => 'icon-envelope', 'icon-heart' => 'icon-heart', 'icon-star' => 'icon-star', 'icon-star-empty' => 'icon-star-empty', 'icon-user' => 'icon-user', 'icon-film' => 'icon-film', 'icon-th-large' => 'icon-th-large', 'icon-th' => 'icon-th', 'icon-th-list' => 'icon-th-list', 'icon-ok' => 'icon-ok', 'icon-remove' => 'icon-remove', 'icon-zoom-in' => 'icon-zoom-in', 'icon-zoom-out' => 'icon-zoom-out', 'icon-off' => 'icon-off', 'icon-signal' => 'icon-signal', 'icon-cog' => 'icon-cog', 'icon-trash' => 'icon-trash', 'icon-home' => 'icon-home', 'icon-file' => 'icon-file', 'icon-time' => 'icon-time', 'icon-road' => 'icon-road', 'icon-download-alt' => 'icon-download-alt', 'icon-download' => 'icon-download', 'icon-upload' => 'icon-upload', 'icon-inbox' => 'icon-inbox', 'icon-play-circle' => 'icon-play-circle', 'icon-rotate-right' => 'icon-rotate-right', 'icon-refresh' => 'icon-refresh', 'icon-list-alt' => 'icon-list-alt', 'icon-lock' => 'icon-lock', 'icon-flag' => 'icon-flag', 'icon-headphones' => 'icon-headphones', 'icon-volume-off' => 'icon-volume-off', 'icon-volume-down' => 'icon-volume-down', 'icon-volume-up' => 'icon-volume-up', 'icon-qrcode' => 'icon-qrcode', 'icon-barcode' => 'icon-barcode', 'icon-tag' => 'icon-tag', 'icon-tags' => 'icon-tags', 'icon-book' => 'icon-book', 'icon-bookmark' => 'icon-bookmark', 'icon-print' => 'icon-print', 'icon-camera' => 'icon-camera', 'icon-font' => 'icon-font', 'icon-bold' => 'icon-bold', 'icon-italic' => 'icon-italic', 'icon-text-height' => 'icon-text-height', 'icon-text-width' => 'icon-text-width', 'icon-align-left' => 'icon-align-left', 'icon-align-center' => 'icon-align-center', 'icon-align-right' => 'icon-align-right', 'icon-align-justify' => 'icon-align-justify', 'icon-list' => 'icon-list', 'icon-indent-left' => 'icon-indent-left', 'icon-indent-right' => 'icon-indent-right', 'icon-facetime-video' => 'icon-facetime-video', 'icon-picture' => 'icon-picture', 'icon-pencil' => 'icon-pencil', 'icon-map-marker' => 'icon-map-marker', 'icon-adjust' => 'icon-adjust', 'icon-tint' => 'icon-tint', 'icon-edit' => 'icon-edit', 'icon-share' => 'icon-share', 'icon-check' => 'icon-check', 'icon-move' => 'icon-move', 'icon-step-backward' => 'icon-step-backward', 'icon-fast-backward' => 'icon-fast-backward', 'icon-backward' => 'icon-backward', 'icon-play' => 'icon-play', 'icon-pause' => 'icon-pause', 'icon-stop' => 'icon-stop', 'icon-forward' => 'icon-forward', 'icon-fast-forward' => 'icon-fast-forward', 'icon-step-forward' => 'icon-step-forward', 'icon-eject' => 'icon-eject', 'icon-chevron-left' => 'icon-chevron-left', 'icon-chevron-right' => 'icon-chevron-right', 'icon-plus-sign' => 'icon-plus-sign', 'icon-minus-sign' => 'icon-minus-sign', 'icon-remove-sign' => 'icon-remove-sign', 'icon-ok-sign' => 'icon-ok-sign', 'icon-question-sign' => 'icon-question-sign', 'icon-info-sign' => 'icon-info-sign', 'icon-screenshot' => 'icon-screenshot', 'icon-remove-circle' => 'icon-remove-circle', 'icon-ok-circle' => 'icon-ok-circle', 'icon-ban-circle' => 'icon-ban-circle', 'icon-arrow-left' => 'icon-arrow-left', 'icon-arrow-right' => 'icon-arrow-right', 'icon-arrow-up' => 'icon-arrow-up', 'icon-arrow-down' => 'icon-arrow-down', 'icon-mail-forward' => 'icon-mail-forward', 'icon-resize-full' => 'icon-resize-full', 'icon-resize-small' => 'icon-resize-small', 'icon-plus' => 'icon-plus', 'icon-minus' => 'icon-minus', 'icon-asterisk' => 'icon-asterisk', 'icon-exclamation-sign' => 'icon-exclamation-sign', 'icon-gift' => 'icon-gift', 'icon-leaf' => 'icon-leaf', 'icon-fire' => 'icon-fire', 'icon-eye-open' => 'icon-eye-open', 'icon-eye-close' => 'icon-eye-close', 'icon-warning-sign' => 'icon-warning-sign', 'icon-plane' => 'icon-plane', 'icon-calendar' => 'icon-calendar', 'icon-random' => 'icon-random', 'icon-comment' => 'icon-comment', 'icon-magnet' => 'icon-magnet', 'icon-chevron-up' => 'icon-chevron-up', 'icon-chevron-down' => 'icon-chevron-down', 'icon-retweet' => 'icon-retweet', 'icon-shopping-cart' => 'icon-shopping-cart', 'icon-folder-close' => 'icon-folder-close', 'icon-folder-open' => 'icon-folder-open', 'icon-resize-vertical' => 'icon-resize-vertical', 'icon-resize-horizontal' => 'icon-resize-horizontal', 'icon-bar-chart' => 'icon-bar-chart', 'icon-camera-retro' => 'icon-camera-retro', 'icon-key' => 'icon-key', 'icon-cogs' => 'icon-cogs', 'icon-comments' => 'icon-comments', 'icon-thumbs-up' => 'icon-thumbs-up', 'icon-thumbs-down' => 'icon-thumbs-down', 'icon-star-half' => 'icon-star-half', 'icon-heart-empty' => 'icon-heart-empty', 'icon-signout' => 'icon-signout', 'icon-pushpin' => 'icon-pushpin', 'icon-external-link' => 'icon-external-link', 'icon-signin' => 'icon-signin', 'icon-trophy' => 'icon-trophy', 'icon-github-sign' => 'icon-github-sign', 'icon-upload-alt' => 'icon-upload-alt', 'icon-lemon' => 'icon-lemon', 'icon-phone' => 'icon-phone', 'icon-check-empty' => 'icon-check-empty', 'icon-bookmark-empty' => 'icon-bookmark-empty', 'icon-phone-sign' => 'icon-phone-sign', 'icon-github' => 'icon-github', 'icon-unlock' => 'icon-unlock', 'icon-credit-card' => 'icon-credit-card', 'icon-rss' => 'icon-rss', 'icon-hdd' => 'icon-hdd', 'icon-bullhorn' => 'icon-bullhorn', 'icon-bell' => 'icon-bell', 'icon-certificate' => 'icon-certificate', 'icon-hand-right' => 'icon-hand-right', 'icon-hand-left' => 'icon-hand-left', 'icon-hand-up' => 'icon-hand-up', 'icon-hand-down' => 'icon-hand-down', 'icon-circle-arrow-left' => 'icon-circle-arrow-left', 'icon-circle-arrow-right' => 'icon-circle-arrow-right', 'icon-circle-arrow-up' => 'icon-circle-arrow-up', 'icon-circle-arrow-down' => 'icon-circle-arrow-down', 'icon-globe' => 'icon-globe', 'icon-wrench' => 'icon-wrench', 'icon-tasks' => 'icon-tasks', 'icon-filter' => 'icon-filter', 'icon-briefcase' => 'icon-briefcase', 'icon-fullscreen' => 'icon-fullscreen', 'icon-group' => 'icon-group', 'icon-link' => 'icon-link', 'icon-cloud' => 'icon-cloud', 'icon-beaker' => 'icon-beaker', 'icon-cut' => 'icon-cut', 'icon-copy' => 'icon-copy', 'icon-paper-clip' => 'icon-paper-clip', 'icon-save' => 'icon-save', 'icon-sign-blank' => 'icon-sign-blank', 'icon-reorder' => 'icon-reorder', 'icon-list-ul' => 'icon-list-ul', 'icon-list-ol' => 'icon-list-ol', 'icon-strikethrough' => 'icon-strikethrough', 'icon-underline' => 'icon-underline', 'icon-table' => 'icon-table', 'icon-magic' => 'icon-magic', 'icon-truck' => 'icon-truck', 'icon-money' => 'icon-money', 'icon-caret-down' => 'icon-caret-down', 'icon-caret-up' => 'icon-caret-up', 'icon-caret-left' => 'icon-caret-left', 'icon-caret-right' => 'icon-caret-right', 'icon-columns' => 'icon-columns', 'icon-sort' => 'icon-sort', 'icon-sort-down' => 'icon-sort-down', 'icon-sort-up' => 'icon-sort-up', 'icon-envelope-alt' => 'icon-envelope-alt', 'icon-rotate-left' => 'icon-rotate-left', 'icon-legal' => 'icon-legal', 'icon-dashboard' => 'icon-dashboard', 'icon-comment-alt' => 'icon-comment-alt', 'icon-comments-alt' => 'icon-comments-alt', 'icon-bolt' => 'icon-bolt', 'icon-sitemap' => 'icon-sitemap', 'icon-umbrella' => 'icon-umbrella', 'icon-paste' => 'icon-paste', 'icon-lightbulb' => 'icon-lightbulb', 'icon-exchange' => 'icon-exchange', 'icon-cloud-download' => 'icon-cloud-download', 'icon-cloud-upload' => 'icon-cloud-upload', 'icon-user-md' => 'icon-user-md', 'icon-stethoscope' => 'icon-stethoscope', 'icon-suitcase' => 'icon-suitcase', 'icon-bell-alt' => 'icon-bell-alt', 'icon-coffee' => 'icon-coffee', 'icon-food' => 'icon-food', 'icon-file-alt' => 'icon-file-alt', 'icon-building' => 'icon-building', 'icon-hospital' => 'icon-hospital', 'icon-ambulance' => 'icon-ambulance', 'icon-medkit' => 'icon-medkit', 'icon-fighter-jet' => 'icon-fighter-jet', 'icon-beer' => 'icon-beer', 'icon-h-sign' => 'icon-h-sign', 'icon-plus-sign-alt' => 'icon-plus-sign-alt', 'icon-double-angle-left' => 'icon-double-angle-left', 'icon-double-angle-right' => 'icon-double-angle-right', 'icon-double-angle-up' => 'icon-double-angle-up', 'icon-double-angle-down' => 'icon-double-angle-down', 'icon-angle-left' => 'icon-angle-left', 'icon-angle-right' => 'icon-angle-right', 'icon-angle-up' => 'icon-angle-up', 'icon-angle-down' => 'icon-angle-down', 'icon-desktop' => 'icon-desktop', 'icon-laptop' => 'icon-laptop', 'icon-tablet' => 'icon-tablet', 'icon-mobile-phone' => 'icon-mobile-phone', 'icon-circle-blank' => 'icon-circle-blank', 'icon-quote-left' => 'icon-quote-left', 'icon-quote-right' => 'icon-quote-right', 'icon-spinner' => 'icon-spinner', 'icon-circle' => 'icon-circle', 'icon-mail-reply' => 'icon-mail-reply', 'icon-folder-close-alt' => 'icon-folder-close-alt', 'icon-folder-open-alt' => 'icon-folder-open-alt', 'icon-expand-alt' => 'icon-expand-alt', 'icon-collapse-alt' => 'icon-collapse-alt', 'icon-smile' => 'icon-smile', 'icon-frown' => 'icon-frown', 'icon-meh' => 'icon-meh', 'icon-gamepad' => 'icon-gamepad', 'icon-keyboard' => 'icon-keyboard', 'icon-flag-alt' => 'icon-flag-alt', 'icon-flag-checkered' => 'icon-flag-checkered', 'icon-terminal' => 'icon-terminal', 'icon-code' => 'icon-code', 'icon-reply-all' => 'icon-reply-all', 'icon-mail-reply-all' => 'icon-mail-reply-all', 'icon-star-half-empty' => 'icon-star-half-empty', 'icon-location-arrow' => 'icon-location-arrow', 'icon-crop' => 'icon-crop', 'icon-code-fork' => 'icon-code-fork', 'icon-unlink' => 'icon-unlink', 'icon-question' => 'icon-question', 'icon-info' => 'icon-info', 'icon-exclamation' => 'icon-exclamation', 'icon-superscript' => 'icon-superscript', 'icon-subscript' => 'icon-subscript', 'icon-eraser' => 'icon-eraser', 'icon-puzzle-piece' => 'icon-puzzle-piece', 'icon-microphone' => 'icon-microphone', 'icon-microphone-off' => 'icon-microphone-off', 'icon-shield' => 'icon-shield', 'icon-calendar-empty' => 'icon-calendar-empty', 'icon-fire-extinguisher' => 'icon-fire-extinguisher', 'icon-rocket' => 'icon-rocket', 'icon-maxcdn' => 'icon-maxcdn', 'icon-chevron-sign-left' => 'icon-chevron-sign-left', 'icon-chevron-sign-right' => 'icon-chevron-sign-right', 'icon-chevron-sign-up' => 'icon-chevron-sign-up', 'icon-chevron-sign-down' => 'icon-chevron-sign-down', 'icon-html5' => 'icon-html5', 'icon-css3' => 'icon-css3', 'icon-anchor' => 'icon-anchor', 'icon-unlock-alt' => 'icon-unlock-alt', 'icon-bullseye' => 'icon-bullseye', 'icon-ellipsis-horizontal' => 'icon-ellipsis-horizontal', 'icon-ellipsis-vertical' => 'icon-ellipsis-vertical', 'icon-rss-sign' => 'icon-rss-sign', 'icon-play-sign' => 'icon-play-sign', 'icon-ticket' => 'icon-ticket', 'icon-minus-sign-alt' => 'icon-minus-sign-alt', 'icon-check-minus' => 'icon-check-minus', 'icon-level-up' => 'icon-level-up', 'icon-level-down' => 'icon-level-down', 'icon-check-sign' => 'icon-check-sign', 'icon-edit-sign' => 'icon-edit-sign', 'icon-external-link-sign' => 'icon-external-link-sign', 'icon-share-sign' => 'icon-share-sign');
    $pt_shortcodes = array('clear' => array('label' => 'Clearfix div', 'has_content' => false, 'std' => ''), 'dropcap' => array('label' => 'Dropcap', 'has_content' => true, 'params' => array('content' => array('type' => 'textarea', 'label' => 'Content', 'std' => ''), 'color' => array('type' => 'select', 'label' => 'Color', 'desc' => 'Select color for dropcap letter', 'options' => array('gray' => 'Gray', 'color' => 'Curent Main Color'), 'std' => ''))), 'accordion' => array('label' => 'Accordion', 'has_content' => true, 'wrapper' => 'accordionwrap', 'params' => array('title' => array('type' => 'text', 'label' => 'Title', 'desc' => 'Set title', 'std' => ''), 'content' => array('type' => 'textarea', 'label' => 'Content', 'std' => ''))), 'button' => array('label' => 'Button', 'has_content' => true, 'params' => array('url' => array('type' => 'text', 'label' => 'Url', 'desc' => 'Set URL', 'std' => ''), 'color' => array('type' => 'select', 'label' => 'Color', 'desc' => 'Select the color for button', 'options' => array('gray' => 'Gray', 'light' => 'Light', 'color' => 'Curent Main Color'), 'std' => ''), 'customcolor' => array('type' => 'colorpicker', 'label' => 'Custom Color', 'desc' => 'Select the custom color for button (ignores previous setting)', 'std' => ''), 'iconcolor' => array('type' => 'select', 'label' => 'Icon Color', 'desc' => 'Select the color for icon in the button', 'options' => array('white' => 'White', 'dark' => 'Dark'), 'std' => ''), 'icon' => array('type' => 'select', 'label' => 'Icon', 'desc' => 'Select the icon for button', 'options' => $ptsc_icons, 'std' => ''), 'target' => array('type' => 'select', 'label' => 'Target', 'desc' => 'Select the target of a button link', 'options' => array('_top' => 'Top', '_self' => 'Self', '_blank' => 'Blank', '_parent' => 'Parent'), 'std' => ''), 'content' => array('type' => 'textarea', 'label' => 'Content', 'std' => ''), 'custom_class' => array('type' => 'text', 'label' => 'Custom class', 'std' => ''))), 'tab' => array('label' => 'Tabs', 'has_content' => true, 'wrapper' => 'tabgroup', 'params' => array('title' => array('type' => 'text', 'label' => 'Title', 'desc' => 'Set title', 'std' => ''), 'content' => array('type' => 'textarea', 'label' => 'Content', 'std' => ''))), 'toggle' => array('label' => 'Toggle', 'has_content' => true, 'params' => array('open' => array('type' => 'select', 'label' => 'Open/closed', 'desc' => 'Set type', 'options' => array('no' => 'Closed', 'yes' => 'Open'), 'std' => ''), 'title' => array('type' => 'text', 'label' => 'Title', 'std' => ''), 'content' => array('type' => 'textarea', 'label' => 'Content', 'std' => ''))));
    //eof main array
    return apply_filters('ptsc_shortcodes', $pt_shortcodes);
}
ptsc_shortcodes_list();
Beispiel #3
0
<?php

// this file contains the contents of the popup window
require_once 'get_wp.php';
?>
<div id="purethemes-popup">
	<div id="purethemes-popup-header">
		<table>
			<tr>
				<td><label for="shortcode-type">Select shortcode</label></td>
				<td><select name="shortcode-type" id="shortcode-type" class="notloaded" size="1">
					<option value="" selected="selected">Choose shortcode</option>
					<?php 
$pt_shortcodes = ptsc_shortcodes_list();
foreach ($pt_shortcodes as $shortcode => $key) {
    echo '<option value="' . $shortcode . '">' . $key['label'] . '</option>';
}
?>
				</select></td>
				<td><div id="purethemes-spinner" style="display:none"></div></td>
			</tr>
		</table>
	</div>
	<form  id="purethemes-popup-form" action="">
		<div id="form-container-ajax">
			<table class="form-table">

			</table>
			<table class="form-table-footer">
				<tr class="form-row">
					<td class="field"><a href="#" class="button button-primary button-large ptsc-insert">Insert Shortcode</a></td>