Example #1
0
function nl_box_builder()
{
    require_once NB_DIR . '/functions.php';
    if (!isset($_POST['box_id'])) {
        die('data is missing');
    }
    $box_id = addslashes($_POST['box_id']);
    // get term and unserialize contents
    $box = get_term($box_id, 'nb_boxes');
    $data = empty($box->description) ? '' : unserialize(nb_fix_serialization($box->description));
    // eventually fix serialization errors
    if (!is_array($data)) {
        $data = array('src' => array(), 'settings' => array());
    }
    ?>
    <form class="form-wrap" id="nb_box_opts">  
		<div class="postbox">
          <h3 class="hndle"><?php 
    _e('News Sources', 'nb_ml');
    ?>
</h3>
          <div class="inside">
        
            <div class="lcwp_mainbox_meta">
				<div class="nb_add_src">
                	<?php 
    _e('Add new source', 'nb_ml');
    ?>
 
                    <select class="lcweb-chosen" data-placeholder="Select a source" tabindex="2">
                    	<?php 
    foreach (nb_news_sources() as $k => $v) {
        echo '<option value="' . $k . '">' . $v . '</option>';
    }
    ?>
                    </select>
                    <input type="button" class="button-secondary" value="<?php 
    _e('Add', 'nb_ml');
    ?>
" /><span></span>
                </div>
                <div class="nb_sources">
                	<?php 
    // saved sources
    foreach ($data['src'] as $src) {
        $cpt_src = strpos($src['src_type'], '|||') !== false ? 'nb_cpt_src' : '';
        echo '
						<div class="nb_type_block nb_' . $src['src_type'] . '_src ' . $cpt_src . '">
						<h4>
							' . nb_news_sources($src['src_type']) . ' 
							<div class="nb_cmd"><span class="lcwp_del_row"></span></div>
						</h4>';
        echo nb_src_form_block($src) . '<div class="mgom_btm_border_fix"></div></div>';
    }
    ?>
                </div>
            </div>  
          </div>
        </div>
        
        <br/>
        
        <div class="postbox" id="nb_box_settings">
          <h3 class="hndle"><?php 
    _e('Settings', 'nb_ml');
    ?>
</h3>
          <div class="inside">
            <div class="lcwp_mainbox_meta">
            	
                <div class="nb_type_block">
                    <h4><?php 
    _e('Initial mode', 'nb_ml');
    ?>
</h4>
                    
                    <?php 
    $fields = array('max_news', 'news_per_time', 'height', 'layout', 'boxed_news', 'horiz_img_mode', 'buttons_position', 'btn_over_img', 'show_src_logo', 'hide_elements', 'horiz_img_h', 'vert_img_w', 'title_behavior', 'img_behavior', 'date_format', 'elapsed_time', 'read_more_btn', 'read_more_btn_txt');
    foreach ($fields as $field) {
        $val = isset($data['settings'][$field]) ? $data['settings'][$field] : '';
        echo nb_fields_builder($field, $val);
    }
    ?>
                
                	<div class="mgom_btm_border_fix"></div>
            	</div>
                
                <div class="nb_type_block">
                    <h4><?php 
    _e('Expanded mode', 'nb_ml');
    ?>
</h4>
                    
                    <?php 
    //$fields = array('expandable_news', 'scroll_exp_elem', 'exp_main_img_pos', 'manage_exp_images', 'exp_img_w', 'exp_img_h');
    $fields = array('expandable_news', 'scroll_exp_elem', 'manage_exp_images');
    foreach ($fields as $field) {
        $val = isset($data['settings'][$field]) ? $data['settings'][$field] : '';
        echo nb_fields_builder($field, $val);
    }
    ?>
                
                	<div class="mgom_btm_border_fix"></div>
            	</div>
                
                <div class="nb_type_block">
                    <h4><?php 
    _e('Navigation / slideshow', 'nb_ml');
    ?>
</h4>
                    
                    <?php 
    $fields = array('nav_arrows', 'carousel', 'autoplay', 'animation_time', 'slideshow_time', 'pause_on_hover', 'slide_all', 'autop_after_exp');
    foreach ($fields as $field) {
        $val = isset($data['settings'][$field]) ? $data['settings'][$field] : '';
        echo nb_fields_builder($field, $val);
    }
    ?>
                
                	<div class="mgom_btm_border_fix"></div>
            	</div>
                
            </div>  
          </div>
        </div>
    </form>    
	<?php 
    die;
}
Example #2
0
function nb_src_form_block($data)
{
    $vals = array('src_val' => '', 'author' => '', 'hide_elements' => '', 'link_target' => '', 'exp_img_pos' => '', 'exp_img_w' => '', 'exp_img_h' => 250, 'self_s_link' => '', 'strip_tags' => '', 'remove_tags' => '');
    // override defaults
    foreach ($data as $i => $v) {
        $vals[$i] = $v;
    }
    // source value
    if ($data['src_type'] == 'wp_cat') {
        $src_val = '
		<label>' . __('Posts category', 'nb_ml') . '</label>
		<select name="src_val" class="lcweb-chosen" data-placeholder="' . __('Select a category', 'nb_ml') . '" style="width: 90%; max-width: 400px;">
			<option value="">' . __('All', 'nb_ml') . '</option>';
        foreach (get_categories() as $cat) {
            $cat->term_id == $vals['src_val'] ? $sel = 'selected="selected"' : ($sel = '');
            $src_val .= '<option value="' . $cat->term_id . '" ' . $sel . '>' . $cat->name . '</option>';
        }
        $src_val .= '</select>';
    } else {
        if ($data['src_type'] == 'qn_cat') {
            $src_val = '
		<label>' . __('News category', 'nb_ml') . '</label>
		<select name="src_val" class="lcweb-chosen" data-placeholder="' . __('Select a category', 'nb_ml') . '" style="width: 90%; max-width: 400px;">
			<option value="">' . __('All', 'nb_ml') . '</option>';
            $cats = get_terms('nb_news_cat', 'orderby=name&hide_empty=0');
            foreach ($cats as $cat) {
                $sel = $cat->term_id == $vals['src_val'] ? 'selected="selected"' : '';
                $src_val .= '<option value="' . $cat->term_id . '" ' . $sel . '>' . $cat->name . '</option>';
            }
            $src_val .= '</select>';
        } else {
            if ($data['src_type'] == 'woo_cat') {
                $src_val = '
		<label>' . __('Products category', 'nb_ml') . '</label>
		<select name="src_val" class="lcweb-chosen" data-placeholder="' . __('Select a category', 'nb_ml') . '" style="width: 90%; max-width: 400px;">
			<option value="">' . __('All', 'nb_ml') . '</option>';
                if (nb_woocomm_active()) {
                    $cats = get_terms('product_cat', 'orderby=name&hide_empty=0');
                    foreach ($cats as $cat) {
                        $sel = $cat->term_id == $vals['src_val'] ? 'selected="selected"' : '';
                        $src_val .= '<option value="' . $cat->term_id . '" ' . $sel . '>' . $cat->name . '</option>';
                    }
                }
                $src_val .= '</select>';
            } else {
                if (strpos($data['src_type'], '|||') !== false) {
                    // custom post type + taxonomy
                    $arr = explode('|||', $data['src_type']);
                    $src_val = '
		<label>' . nb_cptTax_to_cpt_name($data['src_type']) . '</label>
		<select name="src_val" class="lcweb-chosen" data-placeholder="' . __('Select a term', 'nb_ml') . '" style="width: 90%; max-width: 400px;">
			<option value="">' . __('All', 'nb_ml') . '</option>';
                    $cats = get_terms($arr[1], 'orderby=name&hide_empty=0');
                    foreach ($cats as $cat) {
                        $sel = $cat->term_id == $vals['src_val'] ? 'selected="selected"' : '';
                        $src_val .= '<option value="' . $cat->term_id . '" ' . $sel . '>' . $cat->name . '</option>';
                    }
                    $src_val .= '</select>';
                } else {
                    // source helper
                    switch ($data['src_type']) {
                        case 'rss':
                            $label = __("RSS feed URL", 'nb_ml');
                            break;
                        case 'facebook':
                            $label = __('Facebook page ID', 'nb_ml') . ' <a href="http://findmyfacebookid.com/" target="_blank">(' . __('get it', 'nb_ml') . ')</a>';
                            break;
                        case 'google':
                            $label = __('Profile URL', 'nb_ml');
                            break;
                        case 'twitter':
                            $label = __('Profile ID (without "@")', 'nb_ml');
                            break;
                        case 'youtube':
                            $label = __('Profile ID (contained in profile URL)', 'nb_ml');
                            break;
                        case 'pinterest':
                            $label = __("User's board URL", 'nb_ml');
                            break;
                        case 'soundcloud':
                            $label = __("User's page URL", 'nb_ml');
                            break;
                        case 'tumblr':
                            $label = __("Tumblr's blog URL", 'nb_ml');
                            break;
                    }
                    $src_val = '
		<label>' . $label . '</label>
		<input name="src_val" type="text" value="' . nb_sanitize_input($vals['src_val']) . '" />';
                }
            }
        }
    }
    $code = '
	<div class="nb_full_field">' . $src_val . '</div>
	<input name="src_type" type="hidden" value="' . $data['src_type'] . '" />';
    $common_fields = array('news_offset', 'author', 'src_hide_elements', 'link_target', 'exp_img_pos', 'exp_img_w', 'exp_img_h', 'self_s_link', 'strip_tags', 'remove_tags');
    foreach ($common_fields as $field) {
        $val = isset($vals[$field]) ? $vals[$field] : '';
        $code .= nb_fields_builder($field, $val);
    }
    return $code;
}