*
*/
-// public function glmMembersShortcode(){
-//
-// // load shortcodeBuilder.js when the shortcode function has been fired if it hasn't been enqueued yet
-// if( ! wp_script_is( 'jquery-ui-dialog', 'enqueued' ) ){
-// wp_enqueue_script('jquery-ui-dialog', false, array('jquery'), false, true);
-// wp_enqueue_style('jquery-style', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css');
-// }
-//
-// function custom_js_css() {
-//
-// wp_enqueue_script('your-meta-box', GLM_MEMBERS_PLUGIN_URL. '/js/shortcodeBuilder.js', array('jquery'), null, true);
-// }
-// add_action('admin_print_styles-post.php', 'custom_js_css');
-// add_action('admin_print_styles-post-new.php', 'custom_js_css');
-// reset($this->config['addOns']);
-// foreach ($this->config['addOns'] as $a) {
-// $cssFile = GLM_MEMBERS_WORDPRESS_PLUGIN_PATH.$a['slug'].'/css/admin.css';
-// if (is_file($cssFile)) {
-// $cssName = $a['slug'].'-admin-css';
-// wp_register_style(
-// $cssName,
-// GLM_MEMBERS_WORDPRESS_PLUGIN_URL.'/'.$a['slug'].'/css/admin.css',
-// false,
-// GLM_MEMBERS_PLUGIN_VERSION
-// );
-// wp_enqueue_style($cssName);
-// }
-// }
-//
-// add_meta_box("shortcode_builder",
-// "Shortcode Builder",
-// array($this,'shortcode_builder_markup'),
-// "page", 'normal', 'high'
-// );
-//
-// }
+ public function glmMembersShortcode(){
+
+ // load shortcodeBuilder.js when the shortcode function has been fired if it hasn't been enqueued yet
+ if( ! wp_script_is( 'jquery-ui-dialog', 'enqueued' ) ){
+ wp_enqueue_script('jquery-ui-dialog', false, array('jquery'), false, true);
+ wp_enqueue_style('jquery-style', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css');
+ }
+
+ function custom_js_css() {
+
+ wp_enqueue_script('your-meta-box', GLM_MEMBERS_PLUGIN_URL. '/js/shortcodeBuilder.js', array('jquery'), null, true);
+ }
+ add_action('admin_print_styles-post.php', 'custom_js_css');
+ add_action('admin_print_styles-post-new.php', 'custom_js_css');
+ reset($this->config['addOns']);
+ foreach ($this->config['addOns'] as $a) {
+ $cssFile = GLM_MEMBERS_WORDPRESS_PLUGIN_PATH.$a['slug'].'/css/admin.css';
+ if (is_file($cssFile)) {
+ $cssName = $a['slug'].'-admin-css';
+ wp_register_style(
+ $cssName,
+ GLM_MEMBERS_WORDPRESS_PLUGIN_URL.'/'.$a['slug'].'/css/admin.css',
+ false,
+ GLM_MEMBERS_PLUGIN_VERSION
+ );
+ wp_enqueue_style($cssName);
+ }
+ }
+
+ add_meta_box("shortcode_builder",
+ "Shortcode Builder",
+ array($this,'shortcode_builder_markup'),
+ "page", 'normal', 'high'
+ );
+
+ }
// metabox content
-// public function shortcode_builder_markup(){
-//
-// require_once(GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataCategories.php');
-// $listAttr = $this->config['addOns']['glm-member-db']['shortcodes']['glm-members-list']['attributes'];
-// $detailAttr = $this->config['addOns']['glm-member-db']['shortcodes']['glm-member-detail']['attributes'];
-//
-// $glmcat = new GlmDataCategories($this->wpdb, $this->wpconfig);
-// $list = $glmcat->getList();
-// // get the each addOn slugs to pass to the config array later
-// $addOns = $this->config['addOns'];
-// foreach($addOns as $addOn){
-// if(!is_array($addOn['slug'])){
-// $addOnSlugs[] = $addOn['slug'];
-// }
-// }
-//
-// // use the addOn slugs to access each of the shortcodes
-// foreach($addOnSlugs as $addOn){
-// $shortCodeList[] = $this->config['addOns'][$addOn]['shortcodes'];
-// }
-// // loop through the shortcodes to pull out the shortcode names
-// foreach($shortCodeList as $addonInfo) {
-// foreach($addonInfo as $shortCode=>$value){
-// if(!is_array($shortCode)){
-// $shortCodes[] = $shortCode;
-// }
-// }
-// }
-//
-// //dropdown for shortcode names
-// echo '<div id="shortcodeBuilder">';
-// echo '<select id="shortcodeDropdown">
-// <option value=""> Select Shortcode </option>';
-// foreach($shortCodes as $code){
-// echo '<option value = "' . $code . '">' . $code . '</option>';
-// }
-// echo '</select>';
-//
-// /*
-// * Member DB Shortcode Attributes
-// */
-//
-// //dropdown for categories
-// echo '<select id="category-scDropdown">';
-// echo '<option> Select Category </option>';
-// foreach($list as $key=>$value){
-// echo '<option value='. $key . '>' . $value['name'] . '</option>';
-// }
-// echo '</select>';
-//
-// // dropdown for blank start
-// echo '<select id="blank-start-scDropdown">';
-// echo '<option> Blank Start </option>
-// <option value="False"> False </option>
-// <option value="True"> True </option>';
-// echo '</select>';
-//
-// // dropdown for views
-// echo '<select id="view-scDropdown">';
-// echo '<option selected="selected" value="bars"> Bars </option>';
-// echo '<option value="grid"> Grid </option>';
-// echo '</select>';
-//
-// // show list options 'scb' = shortcode builder acronym
-// echo '<div id="showList" title="List Options">';
-// echo '<label><input class="showLists" type="checkbox" name="listBox" value="all">All</label>';
-// echo '<label><input class="showLists" type="checkbox" name="listBox" value="none">None</label>';
-// foreach($listAttr as $key=>$value){
-// if($value != ''){
-// echo '<label class="checkList"><input class="showLists" type="checkbox" name="listBox" value='. $key . '>' . $key .'</label>';
-// }
-// }
-// echo '</div>';
-//
-// // show detail options
-// echo '<div id="showDetail" title="Detail Options">';
-// echo '<label><input class="showDetails" type="checkbox" name="detailBox" value="all">All</label>';
-// echo '<label><input class="showDetails" type="checkbox" name="detailBox" value="none">None</label>';
-// foreach($detailAttr as $key=>$value){
-// if($value != ''){
-// echo '<label class="checkDetails"><input class="showDetails" type="checkbox" name="detailBox" value='. $key . '>' . $key .'</label>';
-// }
-// }
-// echo '</div>';
-//
-// // packaging addOn mark up
-// if(file_exists(GLM_MEMBERS_PACKAGING_PLUGIN_PATH . "/setup/shortcodeBuilder.php")){
-// include GLM_MEMBERS_PACKAGING_PLUGIN_PATH . "/setup/shortcodeBuilder.php";
-// }
-//
-// // list and detail buttons to open dialog for member db 'show' attr options
-// echo '<button id="listBtn" class="glm-button" type="button"> Show List Options </button>';
-// echo '<button id="detailBtn" class="glm-button" type="button"> Show Detail Options </button>';
-//
-// echo '<button id="generate" class="glm-button" type="button"> Insert Shortcode </button>';
-//
-// }
+ public function shortcode_builder_markup(){
+
+ require_once(GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataCategories.php');
+ $listAttr = $this->config['addOns']['glm-member-db']['shortcodes']['glm-members-list']['attributes'];
+ $detailAttr = $this->config['addOns']['glm-member-db']['shortcodes']['glm-member-detail']['attributes'];
+
+ $glmcat = new GlmDataCategories($this->wpdb, $this->wpconfig);
+ $list = $glmcat->getList();
+ // get the each addOn slugs to pass to the config array later
+ $addOns = $this->config['addOns'];
+ foreach($addOns as $addOn){
+ if(!is_array($addOn['slug'])){
+ $addOnSlugs[] = $addOn['slug'];
+ }
+ }
+
+ // use the addOn slugs to access each of the shortcodes
+ foreach($addOnSlugs as $addOn){
+ $shortCodeList[] = $this->config['addOns'][$addOn]['shortcodes'];
+ }
+ // loop through the shortcodes to pull out the shortcode names
+ foreach($shortCodeList as $addonInfo) {
+ foreach($addonInfo as $shortCode=>$value){
+ if(!is_array($shortCode)){
+ $shortCodes[] = $shortCode;
+ }
+ }
+ }
+
+ //dropdown for shortcode names
+ echo '<div id="shortcodeBuilder">';
+ echo '<select id="shortcodeDropdown">
+ <option value=""> Select Shortcode </option>';
+ foreach($shortCodes as $code){
+ echo '<option value = "' . $code . '">' . $code . '</option>';
+ }
+ echo '</select>';
+
+ /*
+ * Member DB Shortcode Attributes
+ */
+
+ //dropdown for categories
+ echo '<select id="category-scDropdown">';
+ echo '<option> Select Category </option>';
+ foreach($list as $key=>$value){
+ echo '<option value='. $key . '>' . $value['name'] . '</option>';
+ }
+ echo '</select>';
+
+ // dropdown for blank start
+ echo '<select id="blank-start-scDropdown">';
+ echo '<option> Blank Start </option>
+ <option value="False"> False </option>
+ <option value="True"> True </option>';
+ echo '</select>';
+
+ // dropdown for views
+ echo '<select id="view-scDropdown">';
+ echo '<option selected="selected" value="bars"> Bars </option>';
+ echo '<option value="grid"> Grid </option>';
+ echo '</select>';
+
+ // show list options 'scb' = shortcode builder acronym
+ echo '<div id="showList" title="List Options">';
+ echo '<label><input class="showLists" type="checkbox" name="listBox" value="all">All</label>';
+ echo '<label><input class="showLists" type="checkbox" name="listBox" value="none">None</label>';
+ foreach($listAttr as $key=>$value){
+ if($value != ''){
+ echo '<label class="checkList"><input class="showLists" type="checkbox" name="listBox" value='. $key . '>' . $key .'</label>';
+ }
+ }
+ echo '</div>';
+
+ // show detail options
+ echo '<div id="showDetail" title="Detail Options">';
+ echo '<label><input class="showDetails" type="checkbox" name="detailBox" value="all">All</label>';
+ echo '<label><input class="showDetails" type="checkbox" name="detailBox" value="none">None</label>';
+ foreach($detailAttr as $key=>$value){
+ if($value != ''){
+ echo '<label class="checkDetails"><input class="showDetails" type="checkbox" name="detailBox" value='. $key . '>' . $key .'</label>';
+ }
+ }
+ echo '</div>';
+
+ // packaging addOn mark up
+ if(file_exists(GLM_MEMBERS_PACKAGING_PLUGIN_PATH . "/setup/shortcodeBuilder.php")){
+ include GLM_MEMBERS_PACKAGING_PLUGIN_PATH . "/setup/shortcodeBuilder.php";
+ }
+
+ // list and detail buttons to open dialog for member db 'show' attr options
+ echo '<button id="listBtn" class="glm-button" type="button"> Show List Options </button>';
+ echo '<button id="detailBtn" class="glm-button" type="button"> Show Detail Options </button>';
+
+ echo '<button id="generate" class="glm-button" type="button"> Insert Shortcode </button>';
+
+ }
}
*/
jQuery(document).ready(function ($) {
//
-// var shortcodeDropdown, shortcodeCategory, blankStart, listBox, detailBox, target, boxTarget, shortcodeString;
-// var shortcodeValues = {};
-// $("#showDetail").hide();
-// $("#showList").hide();
-// $("#listBtn").hide();
-// $("#detailBtn").hide();
-// $("[id$=-scDropdown]").hide();
-// $("#packageListAttr").hide();
-//
-// // fire core events when switching between shortcodes
-// $("#shortcodeDropdown").on("change", function () {
-// // reset the dropdowns and checkbox if when switching shortcodes
-// document.getElementById('category-scDropdown').options[0].selected = 'selected';
-// if($('#blank-start-scDropdown').length)
-// document.getElementById('blank-start-scDropdown').options[0].selected = 'selected';
-// if($('#id-scDropdown').length)
-// document.getElementById('id-scDropdown').options[0].selected = 'selected';
-// UncheckAll();
-//
-// // delete the object properties to reset the object
-// shortcodeString = "";
-// for (var prop in shortcodeValues){
-// delete shortcodeValues[prop];
-// }
-//
-// // get the shortcode option name and hide / show necessary elements
-// shortcodeDropdown = $("#shortcodeDropdown option:selected").text();
-//
-// if(shortcodeDropdown === "glm-members-list"){
-// $("#listBtn").show();
-// $("#detailBtn").hide();
-// $("#category-scDropdown").show();
-// $("#blank-start-scDropdown").show();
-// $("#id-scDropdown").hide();
-// $("#view-scDropdown").show();
-// $("#map-opened-scDropdown").show();
-// $("[id^='packageList']").hide();
-// }
-//
-// if(shortcodeDropdown === "glm-member-detail") {
-// $("#detailBtn").show();
-// $("#listBtn").hide();
-// $("#blank-start-scDropdown").show();
-// $("#category-scDropdown").hide();
-// $("#id-scDropdown").hide();
-// $("[id^='packageList']").hide();
-// }
-//
-// if(shortcodeDropdown === "glm-members-packaging-list"){
-// $("#blank-start-scDropdown").hide();
-// $("#listBtn").hide();
-// $("#category-scDropdown").hide();
-// $("#detailBtn").hide();
-// $("#id-scDropdown").hide();
-// $("#packageListAttr").children().show();
-// $("[id^='packageList']").show();
-// }
-//
-// if (shortcodeDropdown === "glm-members-packaging-detail"){
-// $("#blank-start-scDropdown").hide();
-// $("#listBtn").hide();
-// $("#category-scDropdown").hide();
-// $("#detailBtn").hide();
-// $("#id-scDropdown").show();
-// $("[id^='packageList']").hide();
-// }
-// if (shortcodeDropdown === "glm-members-event-list"){
-// $("#blank-start-scDropdown").hide();
-// $("#listBtn").hide();
-// $("#category-scDropdown").hide();
-// $("#detailBtn").hide();
-// $("[id^='packageList']").hide();
-// $("#id-scDropdown").hide();
-// }
-// if (shortcodeDropdown === "glm-members-event-detail"){
-// $("#blank-start-scDropdown").hide();
-// $("#listBtn").hide();
-// $("#category-scDropdown").hide();
-// $("#detailBtn").hide();
-// $("[id^='packageList']").hide();
-// $("#id-scDropdown").hide();
-// }
-// if (shortcodeDropdown === "glm-members-event-front-add"){
-// $("#blank-start-scDropdown").hide();
-// $("#listBtn").hide();
-// $("#category-scDropdown").hide();
-// $("#detailBtn").hide();
-// $("[id^='packageList']").hide();
-// $("#id-scDropdown").hide();
-// }
-// });
-//
-//
-// // shortcode attribute name from dropdowns containing '-scDropdown' in their ID
-// // Then append the values to the shortcode object
-// $("[id$=-scDropdown]").on("change", function () {
-// target = $(this).attr("id").slice(0, -11);
-// var targetVal = $("#" + target + "-scDropdown option:selected").val();
-// shortcodeValues[target] = targetVal;
-// });
-// // use jquery dialog to separate the checkbox lists
-// $("#listBtn").on("click", function () {
-// $("#showList").dialog().dialog("option", "width", 422 );
-// });
-// $("#detailBtn").on("click", function () {
-// $("#showDetail").dialog().dialog("option", "width", 422);
-// });
-//
-// // generate the shortcode into a string and insert into the content upon clicking
-// $("#generate").on("click", function () {
-// // enforce the selection of a shortcode
-// if(shortcodeDropdown){
-// // set up properties for shortcode lists
-// if(shortcodeDropdown === "glm-members-list"){
-// var listValues = $('input[name="listBox"]:checkbox:checked').map(function() {
-// boxTarget = $(this).attr("class").slice(0, -5);
-// return this.value;
-// }).get();
-//
-// var listString = "";
-// listValues.forEach(function(value){
-// listString += value + ",";
-// });
-//
-// if(listValues !== ""){
-// listString = listString.replace(/,\s*$/, "");
-// shortcodeValues[boxTarget] = listString;
-// }
-//
-// // set up properties for detail shortcode
-// } else if( shortcodeDropdown === "glm-member-detail"){
-// var detailValues = $('input[name="detailBox"]:checkbox:checked').map(function() {
-// boxTarget = $(this).attr("class").slice(0, -7);
-// return this.value;
-// }).get();
-//
-// var detailString = '';
-// detailValues.forEach(function(value){
-// detailString += value + ",";
-// });
-// if(detailValues !== ""){
-// detailString = detailString.replace(/,\s*$/, "");
-// shortcodeValues[boxTarget] = detailString;
-// }
-// }
-// // start the shortcode string that will be added to the tinymce editor
-// shortcodeString = "[" + shortcodeDropdown;
-//
-// // populate the shortcode object
-// for (var key in shortcodeValues) {
-// if (shortcodeValues.hasOwnProperty(key)) {
-// if(key !== "undefined"){
-// shortcodeString += " " + key + '="' + shortcodeValues[key] +'"';
-// }
-// }
-// }
-// shortcodeString += ']';
-//
-// // insert shortcode at current cursor position
-// if($("#content").css("display") !== "none"){
-// var cursorPos = $('#content').prop('selectionStart');
-// var v = $('#content').val();
-// var textBefore = v.substring(0, cursorPos );
-// var textAfter = v.substring( cursorPos, v.length );
-// $('#content').val( textBefore + shortcodeString + textAfter );
-//
-// } else if($("#content").css("display") === "none") {
-// function insert_tag(text){
-// if(tinyMCE && tinyMCE.activeEditor)
-// {
-// tinyMCE.activeEditor.selection.setContent(text);
-// }
-// return false;
-// }
-// insert_tag(shortcodeString);
-// }
-// } else {
-// alert("Please Select a Shortcode");
-// }
-// });
-//
-// // reset dropdowns and checkboxes to default values on page reload
-// var scd = document.getElementById('shortcodeDropdown');
-// var catscd = document.getElementById('category-scDropdown');
-// var blank = document.getElementById('blank-start-scDropdown');
-// var list = document.getElementById('type-scList');
-// var members = document.getElementById('member-scDropdown');
-//
-// if(scd){
-// window.onload = document.getElementById('shortcodeDropdown').options[0].selected = 'selected';
-// }
-// if(catscd){
-// window.onload = document.getElementById('category-scDropdown').options[0].selected = 'selected';
-// }
-// if(blank){
-// window.onload = document.getElementById('blank-start-scDropdown').options[0].selected = 'selected';
-// }
-// if(list){
-// window.onload = document.getElementById('type-scList').options[0].selected = 'selected';
-// }
-// if(members){
-// window.onload = document.getElementById('member-scDropdown').options[0].selected = 'selected';
-// }
-// window.onload = UncheckAll();
-//
-// function UncheckAll(){
-// var w = document.getElementsByTagName('input');
-// for(var i = 0; i < w.length; i++){
-// if(w[i].type === 'checkbox'){
-// w[i].checked = false;
-// }
-// }
-// }
+ var shortcodeDropdown, shortcodeCategory, blankStart, listBox, detailBox, target, boxTarget, shortcodeString;
+ var shortcodeValues = {};
+ $("#showDetail").hide();
+ $("#showList").hide();
+ $("#listBtn").hide();
+ $("#detailBtn").hide();
+ $("[id$=-scDropdown]").hide();
+ $("#packageListAttr").hide();
+
+ // fire core events when switching between shortcodes
+ $("#shortcodeDropdown").on("change", function () {
+ // reset the dropdowns and checkbox if when switching shortcodes
+ document.getElementById('category-scDropdown').options[0].selected = 'selected';
+ if($('#blank-start-scDropdown').length)
+ document.getElementById('blank-start-scDropdown').options[0].selected = 'selected';
+ if($('#id-scDropdown').length)
+ document.getElementById('id-scDropdown').options[0].selected = 'selected';
+ UncheckAll();
+
+ // delete the object properties to reset the object
+ shortcodeString = "";
+ for (var prop in shortcodeValues){
+ delete shortcodeValues[prop];
+ }
+
+ // get the shortcode option name and hide / show necessary elements
+ shortcodeDropdown = $("#shortcodeDropdown option:selected").text();
+
+ if(shortcodeDropdown === "glm-members-list"){
+ $("#listBtn").show();
+ $("#detailBtn").hide();
+ $("#category-scDropdown").show();
+ $("#blank-start-scDropdown").show();
+ $("#id-scDropdown").hide();
+ $("#view-scDropdown").show();
+ $("#map-opened-scDropdown").show();
+ $("[id^='packageList']").hide();
+ }
+
+ if(shortcodeDropdown === "glm-member-detail") {
+ $("#detailBtn").show();
+ $("#listBtn").hide();
+ $("#blank-start-scDropdown").show();
+ $("#category-scDropdown").hide();
+ $("#id-scDropdown").hide();
+ $("[id^='packageList']").hide();
+ }
+
+ if(shortcodeDropdown === "glm-members-packaging-list"){
+ $("#blank-start-scDropdown").hide();
+ $("#listBtn").hide();
+ $("#category-scDropdown").hide();
+ $("#detailBtn").hide();
+ $("#id-scDropdown").hide();
+ $("#packageListAttr").children().show();
+ $("[id^='packageList']").show();
+ }
+
+ if (shortcodeDropdown === "glm-members-packaging-detail"){
+ $("#blank-start-scDropdown").hide();
+ $("#listBtn").hide();
+ $("#category-scDropdown").hide();
+ $("#detailBtn").hide();
+ $("#id-scDropdown").show();
+ $("[id^='packageList']").hide();
+ }
+ if (shortcodeDropdown === "glm-members-event-list"){
+ $("#blank-start-scDropdown").hide();
+ $("#listBtn").hide();
+ $("#category-scDropdown").hide();
+ $("#detailBtn").hide();
+ $("[id^='packageList']").hide();
+ $("#id-scDropdown").hide();
+ }
+ if (shortcodeDropdown === "glm-members-event-detail"){
+ $("#blank-start-scDropdown").hide();
+ $("#listBtn").hide();
+ $("#category-scDropdown").hide();
+ $("#detailBtn").hide();
+ $("[id^='packageList']").hide();
+ $("#id-scDropdown").hide();
+ }
+ if (shortcodeDropdown === "glm-members-event-front-add"){
+ $("#blank-start-scDropdown").hide();
+ $("#listBtn").hide();
+ $("#category-scDropdown").hide();
+ $("#detailBtn").hide();
+ $("[id^='packageList']").hide();
+ $("#id-scDropdown").hide();
+ }
+ });
+
+
+ // shortcode attribute name from dropdowns containing '-scDropdown' in their ID
+ // Then append the values to the shortcode object
+ $("[id$=-scDropdown]").on("change", function () {
+ target = $(this).attr("id").slice(0, -11);
+ var targetVal = $("#" + target + "-scDropdown option:selected").val();
+ shortcodeValues[target] = targetVal;
+ });
+ // use jquery dialog to separate the checkbox lists
+ $("#listBtn").on("click", function () {
+ $("#showList").dialog().dialog("option", "width", 422 );
+ });
+ $("#detailBtn").on("click", function () {
+ $("#showDetail").dialog().dialog("option", "width", 422);
+ });
+
+ // generate the shortcode into a string and insert into the content upon clicking
+ $("#generate").on("click", function () {
+ // enforce the selection of a shortcode
+ if(shortcodeDropdown){
+ // set up properties for shortcode lists
+ if(shortcodeDropdown === "glm-members-list"){
+ var listValues = $('input[name="listBox"]:checkbox:checked').map(function() {
+ boxTarget = $(this).attr("class").slice(0, -5);
+ return this.value;
+ }).get();
+
+ var listString = "";
+ listValues.forEach(function(value){
+ listString += value + ",";
+ });
+
+ if(listValues !== ""){
+ listString = listString.replace(/,\s*$/, "");
+ shortcodeValues[boxTarget] = listString;
+ }
+
+ // set up properties for detail shortcode
+ } else if( shortcodeDropdown === "glm-member-detail"){
+ var detailValues = $('input[name="detailBox"]:checkbox:checked').map(function() {
+ boxTarget = $(this).attr("class").slice(0, -7);
+ return this.value;
+ }).get();
+
+ var detailString = '';
+ detailValues.forEach(function(value){
+ detailString += value + ",";
+ });
+ if(detailValues !== ""){
+ detailString = detailString.replace(/,\s*$/, "");
+ shortcodeValues[boxTarget] = detailString;
+ }
+ }
+ // start the shortcode string that will be added to the tinymce editor
+ shortcodeString = "[" + shortcodeDropdown;
+
+ // populate the shortcode object
+ for (var key in shortcodeValues) {
+ if (shortcodeValues.hasOwnProperty(key)) {
+ if(key !== "undefined"){
+ shortcodeString += " " + key + '="' + shortcodeValues[key] +'"';
+ }
+ }
+ }
+ shortcodeString += ']';
+
+ // insert shortcode at current cursor position
+ if($("#content").css("display") !== "none"){
+ var cursorPos = $('#content').prop('selectionStart');
+ var v = $('#content').val();
+ var textBefore = v.substring(0, cursorPos );
+ var textAfter = v.substring( cursorPos, v.length );
+ $('#content').val( textBefore + shortcodeString + textAfter );
+
+ } else if($("#content").css("display") === "none") {
+ function insert_tag(text){
+ if(tinyMCE && tinyMCE.activeEditor)
+ {
+ tinyMCE.activeEditor.selection.setContent(text);
+ }
+ return false;
+ }
+ insert_tag(shortcodeString);
+ }
+ } else {
+ alert("Please Select a Shortcode");
+ }
+ });
+
+ // reset dropdowns and checkboxes to default values on page reload
+ var scd = document.getElementById('shortcodeDropdown');
+ var catscd = document.getElementById('category-scDropdown');
+ var blank = document.getElementById('blank-start-scDropdown');
+ var list = document.getElementById('type-scList');
+ var members = document.getElementById('member-scDropdown');
+
+ if(scd){
+ window.onload = document.getElementById('shortcodeDropdown').options[0].selected = 'selected';
+ }
+ if(catscd){
+ window.onload = document.getElementById('category-scDropdown').options[0].selected = 'selected';
+ }
+ if(blank){
+ window.onload = document.getElementById('blank-start-scDropdown').options[0].selected = 'selected';
+ }
+ if(list){
+ window.onload = document.getElementById('type-scList').options[0].selected = 'selected';
+ }
+ if(members){
+ window.onload = document.getElementById('member-scDropdown').options[0].selected = 'selected';
+ }
+ window.onload = UncheckAll();
+
+ function UncheckAll(){
+ var w = document.getElementsByTagName('input');
+ for(var i = 0; i < w.length; i++){
+ if(w[i].type === 'checkbox'){
+ w[i].checked = false;
+ }
+ }
+ }
});
\ No newline at end of file