function frontier_tax_input($tmp_post_id, $tmp_tax_name, $input_type = 'checkbox', $tmp_selected = array(), $tmp_shortcode_parms, $tmp_tax_list) { if (!empty($tmp_tax_name)) { /* if ( $input_type == "readonly" ) $force_simple = true; else $force_simple = false; */ if ($tmp_tax_name == 'category') { // need to handle include as this is user role dependendt $fp_capabilities = frontier_post_get_capabilities(); $cat_incl = fp_array_remove_zero(fp_list2array($fp_capabilities[frontier_get_user_role()]['fps_role_allowed_categories'])); //Remove all array entries that is not included if (count($cat_incl) > 0) { $tmp_tax_list = array_intersect_key($tmp_tax_list, array_flip($cat_incl)); } } //$tmp_selected = wp_get_post_terms( $tmp_post_id, $tmp_tax_name, array("fields" => "ids")); $tmp_tax_heading = $tmp_tax_name; $tmp_field_name = frontier_tax_field_name($tmp_tax_name); $tmp_input_field_name = $tmp_field_name . '[]'; if ($tmp_tax_name == 'category') { $exclude_list = fp_get_option("fps_excl_cats", ''); } else { $exclude_list = ""; } switch ($input_type) { case "single": if (count($tmp_selected) == 0) { $tmp_selected[0] = ''; } wp_dropdown_categories(array('taxonomy' => $tmp_tax_name, 'id' => $tmp_field_name, 'exclude' => $exclude_list, 'hide_empty' => 0, 'name' => $tmp_input_field_name, 'orderby' => 'name', 'selected' => $tmp_selected[0], 'hierarchical' => true, 'show_count' => true, 'show_option_none' => __("None", "frontier-post"), 'option_none_value' => '0', 'class' => 'frontier_post_dropdown')); break; case "multi": echo frontier_post_tax_multi($tmp_tax_list, $tmp_selected, $tmp_input_field_name, $tmp_field_name, 10); //echo '</br><div class="frontier_helptext">'.__("Select category, multiple can be selected using ctrl key", "frontier-post").'</div>'; break; case "checkbox": echo frontier_post_tax_checkbox($tmp_tax_list, $tmp_selected, $tmp_input_field_name, $tmp_field_name); break; case "radio": echo frontier_post_tax_radio($tmp_tax_list, $tmp_selected, $tmp_input_field_name, $tmp_field_name); break; case "radioline": echo frontier_post_tax_radioline($tmp_tax_list, $tmp_selected, $tmp_input_field_name, $tmp_field_name); break; case "readonly": echo frontier_post_tax_readonly($tmp_tax_list, $tmp_selected, $tmp_input_field_name, $tmp_field_name); break; } // switch } // if !empty() }
function frontier_user_posts($atts) { global $wp_roles; global $current_user; global $post; $sc_allowed_post_types = fp_get_option_array('fps_sc_allowed_in', array("page")); //new in version 3.6.6, admin can choose wich post types are aloowed if (has_shortcode($post->post_content, 'frontier-post') && in_array($post->post_type, $sc_allowed_post_types)) { if (is_user_logged_in()) { //if ( !is_page(get_the_id()) ) if (!in_array($post->post_type, $sc_allowed_post_types)) { die('<center><h1>ERROR: ' . __("frontier-post Shortcode only allowed in pages", "frontier-post") . " (" . $post->post_type . ")</h1></center>"); return; } if (isset($_POST['task'])) { $post_task = $_POST['task']; } else { if (isset($_GET['task'])) { $post_task = $_GET['task']; } else { $post_task = "notaskset"; } } $post_action = isset($_POST['action']) ? $_POST['action'] : "Unknown"; $fpost_sc_parms = shortcode_atts(array('frontier_mode' => 'none', 'frontier_parent_cat_id' => 0, 'frontier_cat_id' => 0, 'frontier_list_cat_id' => 0, 'frontier_list_all_posts' => 'false', 'frontier_list_pending_posts' => 'false', 'frontier_list_draft_posts' => 'false', 'frontier_list_text_before' => '', 'frontier_edit_text_before' => '', 'frontier_myid' => $post->ID, 'frontier_page_id' => $post->ID, 'frontier_return_text' => __("Save & Return", "frontier-post"), 'frontier_add_link_text' => '', 'frontier_add_post_type' => 'post', 'frontier_list_post_types' => 'post', 'frontier_custom_tax' => '', 'frontier_custom_tax_layout' => '', 'frontier_edit_form' => fp_get_option("fps_default_form", "standard"), 'frontier_editor_height' => fp_get_option_int("fps_editor_lines", 300), 'frontier_quick_editor_height' => fp_get_option_int("fps_quick_editor_lines", 200), 'frontier_list_form' => fp_get_option("fps_default_list", "list"), 'fps_cache_time_tax_lists' => fp_get_option_int("fps_cache_time_tax_lists", 30 * 60), 'frontier_pagination' => 'true', 'frontier_ppp' => (int) fp_get_option('fps_ppp', 5), 'frontier_user_status' => ''), $atts); // support for url link based creation of custom post types if (isset($_GET['task']) && $_GET['task'] == "new" && isset($_GET['frontier_add_post_type'])) { $tmp_post_type = $_GET['frontier_add_post_type']; $tmp_post_type_list = fp_get_option_array('fps_custom_post_type_list', array()); if (in_array($tmp_post_type, $tmp_post_type_list)) { $fpost_sc_parms['frontier_add_post_type'] = $tmp_post_type; } } // Remove quotes from post type $fpost_sc_parms['frontier_add_post_type'] = str_replace("'", "", $fpost_sc_parms['frontier_add_post_type']); $fpost_sc_parms['frontier_add_post_type'] = str_replace('"', '', $fpost_sc_parms['frontier_add_post_type']); //If Category parsed from widget assign it instead of category from shortcode if (isset($_GET['frontier_new_cat_widget']) && $_GET['frontier_new_cat_widget'] == "true") { $_REQUEST['frontier_new_cat_widget'] = "true"; $fpost_sc_parms['frontier_cat_id'] = isset($_GET['frontier_cat_id']) ? $_GET['frontier_cat_id'] : 0; } //Change Categories to array $fpost_sc_parms['frontier_cat_id'] = fp_list2array($fpost_sc_parms['frontier_cat_id']); $fpost_sc_parms['frontier_list_cat_id'] = fp_list2array($fpost_sc_parms['frontier_list_cat_id']); $fpost_sc_parms['frontier_list_post_types'] = fp_list2array($fpost_sc_parms['frontier_list_post_types']); $fpost_sc_parms['frontier_custom_tax'] = fp_list2array($fpost_sc_parms['frontier_custom_tax']); $fpost_sc_parms['frontier_custom_tax_layout'] = fp_list2array($fpost_sc_parms['frontier_custom_tax_layout']); $fpost_sc_parms['frontier_user_status'] = fp_list2array($fpost_sc_parms['frontier_user_status']); extract($fpost_sc_parms); // if mode is add, go directly to show form - enables use directly on several pages if ($frontier_mode == "add" && $post_task != 'delete') { $post_task = "new"; } ob_start(); switch ($post_task) { case 'new': if ($post_action == "wpfrtp_save_post") { frontier_posting_form_submit($fpost_sc_parms); } else { frontier_post_add_edit($fpost_sc_parms); } break; case 'edit': if ($post_action == "wpfrtp_save_post") { frontier_posting_form_submit($fpost_sc_parms); } else { frontier_post_add_edit($fpost_sc_parms); } break; case 'delete': if ($post_action == "wpfrtp_delete_post") { frontier_execute_delete_post($fpost_sc_parms); } else { frontier_prepare_delete_post($fpost_sc_parms); } break; case 'approve': if ($post_action == "wpfrtp_approve_post") { frontier_execute_approve_post($fpost_sc_parms); } else { frontier_prepare_approve_post($fpost_sc_parms); } break; case 'clone': frontier_clone_post($fpost_sc_parms); break; default: frontier_user_post_list($fpost_sc_parms); break; } //return content to shortcode for output $fp_content = ob_get_contents(); ob_end_clean(); return $fp_content; } else { echo fp_login_text(); } // user_logged_in } else { //Shortcode called from enything else than page, not allowed if (!in_array($post->post_type, $sc_allowed_post_types) && is_singular()) { // Only show warning if single post $sing = is_singular() ? "S" : "M"; echo '<br><div id="frontier-post-alert">frontier-post shortcode ' . __("only allowed in", "frontier-post") . ': ' . implode(", ", $sc_allowed_post_types) . ' - This post type: (' . $post->post_type . ') - (' . $post->ID . '/' . $sing . ')</div><br>'; return; } } // has_shortcode }
function frontier_user_posts($atts) { global $wp_roles; global $current_user; global $post; if (has_shortcode($post->post_content, 'frontier-post') && $post->post_type == 'page') { if (is_user_logged_in()) { //if ( !is_page(get_the_id()) ) if ($post->post_type != 'page') { die('<center><h1>ERROR: ' . __("frontier-post Shortcode only allowed in pages", "frontier-post") . '</h1></center>'); return; } //error_log("Custom tax from settings ----->"); //error_log(print_r(fp_get_option_array("fps_custom_tax_list"), true)); /* error_log("Get var---->"); error_log(print_r($_GET, true)); */ if (isset($_POST['task'])) { $post_task = $_POST['task']; } else { if (isset($_GET['task'])) { $post_task = $_GET['task']; } else { $post_task = "notaskset"; } } //$post_task = isset($_GET['task']) ? $_GET['task'] : "notaskset"; $post_action = isset($_POST['action']) ? $_POST['action'] : "Unknown"; /* error_log("Post task---->".$post_task); error_log("Post action---->".$post_action); error_log(print_r($_POST, true)); */ $frontier_post_shortcode_parms = shortcode_atts(array('frontier_mode' => 'none', 'frontier_parent_cat_id' => 0, 'frontier_cat_id' => 0, 'frontier_list_cat_id' => 0, 'frontier_list_all_posts' => 'false', 'frontier_list_pending_posts' => 'false', 'frontier_list_text_before' => '', 'frontier_edit_text_before' => '', 'frontier_myid' => $post->ID, 'frontier_page_id' => $post->ID, 'frontier_return_text' => __("Save & Return", "frontier-post"), 'frontier_add_link_text' => '', 'frontier_add_post_type' => 'post', 'frontier_list_post_types' => 'post', 'frontier_custom_tax' => '', 'frontier_custom_tax_layout' => '', 'frontier_edit_form' => fp_get_option("fps_default_form", "standard"), 'frontier_editor_height' => fp_get_option_int("fps_editor_lines", 300), 'frontier_list_form' => fp_get_option("fps_default_list", "list"), 'fps_cache_time_tax_lists' => fp_get_option_int("fps_cache_time_tax_lists", 30 * 60)), $atts); //error_log(print_r($frontier_post_shortcode_parms,true)); //If Category parsed from widget assign it instead of category from shortcode if (isset($_GET['frontier_new_cat_widget']) && $_GET['frontier_new_cat_widget'] == "true") { $_REQUEST['frontier_new_cat_widget'] = "true"; $frontier_post_shortcode_parms['frontier_cat_id'] = isset($_GET['frontier_cat_id']) ? $_GET['frontier_cat_id'] : 0; } //Change Categories to array $frontier_post_shortcode_parms['frontier_cat_id'] = fp_list2array($frontier_post_shortcode_parms['frontier_cat_id']); $frontier_post_shortcode_parms['frontier_list_cat_id'] = fp_list2array($frontier_post_shortcode_parms['frontier_list_cat_id']); $frontier_post_shortcode_parms['frontier_list_post_types'] = fp_list2array($frontier_post_shortcode_parms['frontier_list_post_types']); $frontier_post_shortcode_parms['frontier_custom_tax'] = fp_list2array($frontier_post_shortcode_parms['frontier_custom_tax']); $frontier_post_shortcode_parms['frontier_custom_tax_layout'] = fp_list2array($frontier_post_shortcode_parms['frontier_custom_tax_layout']); extract($frontier_post_shortcode_parms); // if mode is add, go directly to show form - enables use directly on several pages if ($frontier_mode == "add") { $post_task = "new"; } ob_start(); switch ($post_task) { case 'new': if ($post_action == "wpfrtp_save_post") { frontier_posting_form_submit($frontier_post_shortcode_parms); } else { frontier_post_add_edit($frontier_post_shortcode_parms); } break; case 'edit': if ($post_action == "wpfrtp_save_post") { frontier_posting_form_submit($frontier_post_shortcode_parms); } else { frontier_post_add_edit($frontier_post_shortcode_parms); } break; case 'delete': if ($post_action == "wpfrtp_delete_post") { frontier_execute_delete_post($frontier_post_shortcode_parms); } else { frontier_prepare_delete_post($frontier_post_shortcode_parms); } break; default: frontier_user_post_list($frontier_post_shortcode_parms); break; } //return content to shortcode for output $fp_content = ob_get_contents(); ob_end_clean(); return $fp_content; } else { echo fp_login_text(); } // user_logged_in } else { //Shortcode called from post, not allowed if (is_singular()) { // Only show warning if single post echo '<br><div id="frontier-post-alert">frontier-post shortcode ' . __("not allowed in posts, only pages !", "frontier-post") . '</div><br>'; return; } } // has_shortcode }