Exemplo n.º 1
0
 public static function load($old_image = '', $args = null)
 {
     $new_image = false;
     if (isset($args['fancybox']) && $args['fancybox']) {
         unset($args['fancybox']);
     }
     $args = self::process_defaults($args);
     $disable_dragonfly = pls_get_option('pls-disable-dragonfly');
     // use standard default image
     if ($old_image === '' || empty($old_image)) {
         if (!empty($args['null_image'])) {
             $old_image = $args['null_image'];
         } else {
             $old_image = PLS_IMG_URL . "/null/listing-1200x720.jpg";
         }
     } elseif ($args['allow_resize'] && $args['resize']['w'] && $args['resize']['h'] && get_theme_support('pls-dragonfly') && $disable_dragonfly != true) {
         $img_args = array('resize' => $args['resize'], 'old_image' => $old_image);
         $new_image = PLS_Plugin_API::resize_image($img_args);
     }
     if ($args['fancybox'] || $args['as_html']) {
         if ($new_image) {
             $new_image = self::as_html($old_image, $new_image, $args);
         } else {
             $new_image = self::as_html($old_image, null, $args);
         }
     }
     // return the new image if we've managed to create one
     if ($new_image) {
         return $new_image;
     } else {
         return $old_image;
     }
 }
Exemplo n.º 2
0
 public static function get_currency_symbol()
 {
     $current_symbol = pls_get_option('pls-currency-symbol');
     if (!$current_symbol) {
         return '$';
     }
     return $current_symbol;
 }
    public function widget($args, $instance)
    {
        // Widget output
        /** Define the default argument array. */
        $defaults = array('before_widget' => '<section id="pls_feedburner_widget" class="pls_feedburner_widget_wrapper widget">', 'after_widget' => '</section>', 'title' => '', 'before_title' => '<h3 class="widget-title">', 'after_title' => '</h3>');
        /** Merge the arguments with the defaults. */
        $args = wp_parse_args($args, $defaults);
        extract($args, EXTR_SKIP);
        $title = empty($instance['title']) ? ' ' : apply_filters('widget_title', $instance['title']);
        $instructions = empty($instance['instructions']) ? ' ' : apply_filters('instructions', $instance['instructions']);
        $email_placeholder = empty($instance['email_placeholder']) ? ' ' : apply_filters('email_placeholder', $instance['email_placeholder']);
        ?>

    
     <?php 
        echo $before_widget;
        ?>

      <?php 
        echo $before_title . $title . $after_title;
        ?>

      <form action="http://feedburner.google.com/fb/a/mailverify" method="post" target="popupwindow" onsubmit="window.open('http://feedburner.google.com/fb/a/mailverify?uri=<?php 
        echo pls_get_option('pls-feedburner-uri');
        ?>
', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true">

        <p><?php 
        echo $instructions;
        ?>
</p>

        <input type="email" name="email" placeholder="<?php 
        echo $email_placeholder;
        ?>
" />

        <input type="hidden" value="<?php 
        echo pls_get_option('pls-feedburner-uri');
        ?>
" name="uri"/>
        <input type="hidden" name="loc" value="en_US"/>
        <input type="submit" value="Subscribe" class="button-primary" />

      </form>

      <?php 
        echo $after_widget;
        ?>

<?php 
    }
Exemplo n.º 4
0
    public function widget($args, $instance)
    {
        // Widget output
        /** Define the default argument array. */
        $defaults = array('before_widget' => '<section class="twitter-widget widget">', 'after_widget' => '</section>', 'title' => '', 'before_title' => '<h3 class="widget-title">', 'after_title' => '</h3>');
        /** Merge the arguments with the defaults. */
        $args = wp_parse_args($args, $defaults);
        extract($args, EXTR_SKIP);
        $title = empty($instance['title']) ? ' ' : apply_filters('title', $instance['title']);
        $twitter_username = empty($instance['username']) ? ' ' : apply_filters('username', $instance['username']);
        $count = empty($instance['count']) ? ' ' : apply_filters('count', $instance['count']);
        if (!empty($twitter_username)) {
            $username = $twitter_username;
        } else {
            $username = @pls_get_option('pls-twitter-username');
        }
        ?>

      <?php 
        echo $before_widget;
        ?>
      
        <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
        
        <?php 
        echo $before_title . $title . $after_title;
        ?>
        
        <p class="twitter-handle"><a href="https://twitter.com/<?php 
        echo $username;
        ?>
">@<?php 
        echo $username;
        ?>
</a></p>
        
        <section id="twitter-sidebar-widget">
          <?php 
        echo get_twitter_feed($username, $count);
        ?>
        </section>
    
      <?php 
        echo $after_widget;
        ?>
    
    <?php 
    }
Exemplo n.º 5
0
 public static function show_window()
 {
     $show_debug = pls_get_option('display-debug-messages');
     // optionally show debug messages.
     if ($show_debug == 1) {
         self::assemble_messages();
         ?>
         <div style="position:fixed; bottom: 0px; left: 0px; width:100%; height: 35%; background-color: #F8F8F8 ; overflow: auto; border-top: 2px solid black; font-size: 11px; color: black;z-index: 9999">
             <h4>Blueprint Debug Messages</h4>
             <?php 
         echo self::$message_text;
         ?>
 
         </div>
         <?php 
     }
 }
Exemplo n.º 6
0
 private static function handle_style($style, $id, $default, $type, $important)
 {
     if ($value = pls_get_option($id, $default)) {
         $css_style = '';
         // check for special cases
         // sometimes the options framework saves certain options
         // in unique ways which can't be directly translated into styles
         if (self::is_special_case($type)) {
             //handles edge cases, returns a property formatted string
             return self::handle_special_case($value, $id, $default, $type, $important);
         } else {
             $css_style = self::make_style($style, $value, $important);
             return $css_style;
         }
     } else {
         return '';
     }
 }
Exemplo n.º 7
0
 public static function get_featured($featured_option_id, $args = array())
 {
     $api_response = array('listings' => array());
     $option_ids = pls_get_option($featured_option_id);
     if (!empty($option_ids)) {
         $property_ids = array_keys($option_ids);
         if (!empty($property_ids)) {
             $args['property_ids'] = $property_ids;
         }
         $api_response = PLS_Plugin_API::get_listing_details($args);
         // Remove listings without images...
         foreach ($api_response['listings'] as $key => $listing) {
             if (empty($listing['images'])) {
                 unset($api_response['listings'][$key]);
             }
         }
     }
     return $api_response;
 }
Exemplo n.º 8
0
function tampa_custom_css()
{
    $custom_css = pls_get_option('pls-custom-css');
    if (pls_get_option('pls-css-options') && $custom_css) {
        printf('<style type="text/css">%s</style>', $custom_css);
    }
}
    public static function init($content)
    {
        global $post;
        if ($post->post_type == 'property') {
            $html = '';
            $listing_data = PLS_Plugin_API::get_listing_in_loop();
            // re-order images by assigned order
            $property_images = is_array($listing_data['images']) ? $listing_data['images'] : array();
            usort($property_images, array('PLS_Partials_Property_Details', 'sort_images_by_order'));
            // reset the images
            $listing_data['images'] = $property_images;
            // Problems with API key or inconsistent data lead to notices due to null listings
            if (!is_null($listing_data)) {
                $listing_data['location']['full_address'] = $listing_data['location']['address'] . ' ' . $listing_data['location']['locality'] . ' ' . $listing_data['location']['region'];
                // This has to happen here to ensure it's not filtered out by whatever might be filtering this output...
                echo PLS_Plugin_API::log_snippet_js('listing_view', array('prop_id' => $listing_data['id']));
                ob_start();
                ?>
					<h2 itemprop="name" itemscope itemtype="http://schema.org/PostalAddress">
						<span itemprop="streetAdress"><?php 
                echo $listing_data['location']['address'];
                ?>
</span> <span itemprop="addressLocality"><?php 
                echo $listing_data['location']['locality'];
                ?>
</span>, <span itemprop="addressRegion"><?php 
                echo $listing_data['location']['region'];
                ?>
</span>
					</h2>
	
					<?php 
                echo PLS_Plugin_API::placester_favorite_link_toggle(array('property_id' => $listing_data['id'], 'add_text' => 'Add To Favorites', 'remove_text' => 'Remove From Favorites'));
                ?>
	
					<p itemprop="price"><?php 
                echo PLS_Format::number($listing_data['cur_data']['price'], array('abbreviate' => false, 'add_currency_sign' => true));
                ?>
 <span><?php 
                echo PLS_Format::translate_lease_terms($listing_data);
                ?>
</span></p>
	
					<p class="listing_type"><?php 
                if (isset($listing_data['zoning_types'][0]) && isset($listing_data['purchase_types'][0])) {
                    echo ucwords(@$listing_data['zoning_types'][0] . ' ' . @$listing_data['purchase_types'][0]);
                }
                ?>
</p>

					<div class="clearfix"></div>
	
					<?php 
                if ($listing_data['images']) {
                    ?>
						<div class="theme-default property-details-slideshow">
							<?php 
                    echo PLS_Image::load($listing_data['images'][0]['url'], array('resize' => array('w' => 590, 'h' => 300), 'fancybox' => false, 'as_html' => true, 'html' => array('itemprop' => 'image')));
                    ?>
							<?php 
                    // echo PLS_Slideshow::slideshow( array( 'anim_speed' => 1000, 'pause_time' => 15000, 'control_nav' => true, 'width' => 620, 'height' => 300, 'context' => 'home', 'data' => PLS_Slideshow::prepare_single_listing($listing_data) ) );
                    ?>
						</div>

						<div class="details-wrapper grid_8 alpha">
							<div id="slideshow" class="clearfix theme-default left bottomborder">
								<div class="grid_8 alpha">
									<ul class="property-image-gallery grid_8 alpha">
										<?php 
                    foreach ($listing_data['images'] as $images) {
                        ?>
											<li><?php 
                        echo PLS_Image::load($images['url'], array('resize' => array('w' => 100, 'h' => 75), 'fancybox' => true, 'as_html' => true, 'html' => array('itemprop' => 'image')));
                        ?>
</li>
										<?php 
                    }
                    ?>
									</ul>
								</div>

							</div>
						</div>
					<?php 
                }
                ?>
	                
	                <div class="basic-details grid_8 alpha">
	                    <ul>
	                        <li><span>Beds: </span><?php 
                echo $listing_data['cur_data']['beds'];
                ?>
</li>
	                        <li><span>Baths: </span><?php 
                echo $listing_data['cur_data']['baths'];
                ?>
</li>
	                        <?php 
                if (isset($listing_data['cur_data']['half_baths']) && $listing_data['cur_data']['half_baths'] != null) {
                    ?>
	                        	<li><span>Half Baths: </span><?php 
                    echo $listing_data['cur_data']['half_baths'];
                    ?>
</li>
	                        <?php 
                }
                ?>
	                        <li><span>Square Feet: </span><?php 
                echo PLS_Format::number($listing_data['cur_data']['sqft'], array('abbreviate' => false, 'add_currency_sign' => false));
                ?>
</li>
	                        <?php 
                if (isset($listing_data['cur_data']['avail_on']) && $listing_data['cur_data']['avail_on'] != null) {
                    ?>
	                        	<li itemprop="availability"><span>Available: </span><?php 
                    echo @$listing_data['cur_data']['avail_on'];
                    ?>
</li>
	                        <?php 
                }
                ?>
	                        <li>Property Type: <?php 
                echo PLS_Format::translate_property_type($listing_data);
                ?>
</li>
	                        <?php 
                if (isset($listing_data['rets']) && isset($listing_data['rets']['mls_id'])) {
                    ?>
	                        	<li><span>MLS #: </span><?php 
                    echo $listing_data['rets']['mls_id'];
                    ?>
</li>	
	                        <?php 
                }
                ?>
	                    </ul>
	                </div>
	
	                <div class="details-wrapper grid_8 alpha">
	                    <h3>Property Description</h3>
	                    <?php 
                if (!empty($listing_data['cur_data']['desc'])) {
                    ?>
	                        <p itemprop="description"><?php 
                    echo $listing_data['cur_data']['desc'];
                    ?>
</p>
	                    <?php 
                } else {
                    ?>
	                        <p> No description available </p>
	                    <?php 
                }
                ?>
	                </div>
	
	                
	
	                <?php 
                $amenities = PLS_Format::amenities_but($listing_data, array('half_baths', 'beds', 'baths', 'url', 'sqft', 'avail_on', 'price', 'desc'));
                ?>
	               
	                <?php 
                if (!empty($amenities['list'])) {
                    ?>
	                  <div class="amenities-section grid_8 alpha">
	                    <h3>Listing Amenities</h3>
	                    <ul>
	                    <?php 
                    $amenities['list'] = PLS_Format::translate_amenities($amenities['list']);
                    ?>
	                      <?php 
                    foreach ($amenities['list'] as $amenity => $value) {
                        ?>
	                        <li><span><?php 
                        echo $amenity;
                        ?>
</span> <?php 
                        echo $value;
                        ?>
</li>
	                      <?php 
                    }
                    ?>
	                    </ul>
		                </div>	
	                <?php 
                }
                ?>
	                <?php 
                if (!empty($amenities['ngb'])) {
                    ?>
		                <div class="amenities-section grid_8 alpha">
		                  <h3>Local Amenities</h3>
	                    <ul>
		                  <?php 
                    $amenities['ngb'] = PLS_Format::translate_amenities($amenities['ngb']);
                    ?>
		                    <?php 
                    foreach ($amenities['ngb'] as $amenity => $value) {
                        ?>
		                      <li><span><?php 
                        echo $amenity;
                        ?>
</span> <?php 
                        echo $value;
                        ?>
</li>
		                    <?php 
                    }
                    ?>
		                  </ul>
		                </div>
	                <?php 
                }
                ?>
	                
	                <?php 
                if (!empty($amenities['uncur'])) {
                    ?>
		                <div class="amenities-section grid_8 alpha">
		                  <h3>Custom Amenities</h3>
	                    <ul>
		                  <?php 
                    $amenities['uncur'] = PLS_Format::translate_amenities($amenities['uncur']);
                    ?>
		                    <?php 
                    foreach ($amenities['uncur'] as $amenity => $value) {
                        ?>
		                      <li><span><?php 
                        echo $amenity;
                        ?>
</span> <?php 
                        echo $value;
                        ?>
</li>
		                    <?php 
                    }
                    ?>
	                    </ul>
		                </div>	
	                <?php 
                }
                ?>
	
		            <div class="map-wrapper grid_8 alpha">
		                <h3>Property Map</h3>
                        <script type="text/javascript">
                          jQuery(document).ready(function( $ ) {
                            var map = new Map();
                            var listing = new Listings({
                              single_listing : <?php 
                echo json_encode($listing_data);
                ?>
,
                              map: map
                            });
                            map.init({
                              type: 'single_listing', 
                              listings: listing,
                              lat : <?php 
                echo json_encode($listing_data['location']['coords'][0]);
                ?>
,
                              lng : <?php 
                echo json_encode($listing_data['location']['coords'][1]);
                ?>
,
                              zoom : 14
                            });
                            listing.init();
                          });
     	                </script>
	                    <div class="map">
     	                  <?php 
                echo PLS_Map::dynamic($listing_data, array('lat' => $listing_data['location']['coords'][0], 'lng' => $listing_data['location']['coords'][1], 'height' => 250, 'zoom' => 16));
                ?>
	                    </div>
		            </div>
	              
	              	<?php 
                PLS_Listing_Helper::get_compliance(array('context' => 'listings', 'agent_name' => @$listing_data['rets']['aname'], 'office_name' => @$listing_data['rets']['oname']));
                ?>
	
		      	<?php 
                // Store output...
                $html = ob_get_clean();
            }
            // Enable Lead Capture
            $lead_capture_enable = pls_get_option('pd-lc-enable');
            if ($lead_capture_enable == 1) {
                ob_start();
                ?>
	                <!-- Lead Capture Shortcode -->
	                <div style="display:none;" href="#" id="property-details-lead-capture">
	                  <?php 
                do_shortcode('[lead_capture_template 
	                        lead_capture_cookie="true" 
	                        name_required="true" 
	                        question_required="false" 
	                        width="440"]');
                ?>
	                </div>
                <?php 
                // Store output...
                $lead_capture_block = ob_get_clean();
            }
            $html = apply_filters('property_details_filter', $html, $listing_data);
            // Add lead capture block to HTML
            if (isset($lead_capture_block)) {
                $html = $lead_capture_block . $html;
            }
            return $html;
        }
        // Post is not of type property, so just return what was initially passed in...
        return $content;
    }
Exemplo n.º 10
0
    public function widget($args, $instance)
    {
        global $post;
        if (!empty($post) && isset($post->post_type) && $post->post_type == 'property') {
            $data = PLS_Plugin_API::get_listing_in_loop();
        } else {
            $data = array();
        }
        // Labels and Values
        $title = apply_filters('widget_title', empty($instance['title']) ? '&nbsp;' : $instance['title']);
        $success_message = apply_filters('success_message', empty($instance['success_message']) ? 'Thank you for the email, we\'ll get back to you shortly' : $instance['success_message']);
        $submit_value = apply_filters('button', empty($instance['button']) ? 'Send' : $instance['button']);
        $email_label = apply_filters('email_label', !isset($instance['email_label']) ? 'Email Address (required)' : $instance['email_label']);
        $email_value = apply_filters('email_value', !isset($instance['email_value']) ? 'Email Address' : $instance['email_value']);
        $phone_label = apply_filters('phone_label', !isset($instance['phone_label']) ? 'Phone Number (required)' : $instance['phone_label']);
        $phone_value = apply_filters('phone_value', !isset($instance['phone_value']) ? 'Phone Number' : $instance['phone_value']);
        $subject_label = apply_filters('subject_label', !isset($instance['subject_label']) ? 'Subject' : $instance['subject_label']);
        $subject_value = apply_filters('subject_value', !isset($instance['subject_value']) ? 'Subject' : $instance['subject_value']);
        $departments_label = apply_filters('departments_label', !isset($instance['departments_label']) ? 'Department' : $instance['departments_label']);
        $departments_value = apply_filters('departments_value', !isset($instance['departments_value']) ? 'Department' : $instance['departments_value']);
        $include_name = isset($instance['include_name']) && $instance['include_name'] == "false" ? false : true;
        $name_label = apply_filters('name_label', !isset($instance['name_label']) ? 'Name (required)' : $instance['name_label']);
        $name_value = apply_filters('name_value', !isset($instance['name_value']) ? 'Name' : $instance['name_value']);
        $question_label = apply_filters('question_label', !isset($instance['question_label']) ? 'Questions/Comments' : $instance['question_label']);
        $question_value = apply_filters('question_value', !isset($instance['question_value']) ? 'Any questions for us?' : $instance['question_value']);
        $custom_link = apply_filters('custom_link', !isset($instance['custom_link']) ? '' : $instance['custom_link']);
        $custom_link_target = apply_filters('custom_link_target', !isset($instance['custom_link_target']) ? '_blank' : $instance['custom_link_target']);
        $form_title = apply_filters('form_title', !isset($instance['form_title']) ? '' : $instance['form_title']);
        // Reguired Attribute
        $name_required = isset($instance['name_required']) && $instance['name_required'] == "false" ? false : true;
        $email_required = isset($instance['email_required']) && $instance['email_required'] == "false" ? true : true;
        $phone_required = isset($instance['phone_required']) && $instance['phone_required'] == "true" ? true : false;
        $subject_required = isset($instance['subject_required']) && $instance['subject_required'] == "true" ? true : false;
        $question_required = isset($instance['question_required']) && $instance['question_required'] == "false" ? false : true;
        // Error Messages
        $name_error = isset($instance['name_error']) && $instance['name_error'] != "" ? $instance['name_error'] : "Your name is required.";
        $email_error = isset($instance['email_error']) && $instance['email_error'] != "" ? $instance['email_error'] : "A valid email is required.";
        $phone_error = isset($instance['phone_error']) && $instance['phone_error'] != "" ? $instance['phone_error'] : "A valid phone is required.";
        $question_error = isset($instance['question_error']) && $instance['question_error'] != "" ? $instance['question_error'] : "Don't forget to leave a question or comment.";
        $subject_error = isset($instance['subject_error']) && $instance['subject_error'] != "" ? $instance['subject_error'] : "What subject would you like to speak about?";
        // Classes
        $container_class = apply_filters('container_class', empty($instance['container_class']) ? '' : $instance['container_class']);
        $inner_class = apply_filters('inner_class', empty($instance['inner_class']) ? '' : $instance['inner_class']);
        $inner_containers = apply_filters('inner_containers', empty($instance['inner_containers']) ? '' : $instance['inner_containers']);
        $textarea_container = apply_filters('textarea_container', !isset($instance['textarea_container']) ? $inner_containers : $instance['textarea_container']);
        $button_class = apply_filters('button_class', !isset($instance['button_class']) ? 'button-primary' : $instance['button_class']);
        // Send To Options
        $email_confirmation = apply_filters('email_confirmation', empty($instance['email_confirmation']) ? false : $instance['email_confirmation']);
        $send_to_email = apply_filters('send_to_email', !isset($instance['send_to_email']) ? '' : $instance['send_to_email']);
        $cc_value = apply_filters('cc_value', !isset($instance['cc_value']) ? '' : $instance['cc_value']);
        $bcc_value = apply_filters('bcc_value', !isset($instance['bcc_value']) ? '' : $instance['bcc_value']);
        // Lead Capture Cookie
        $lead_capture_cookie = apply_filters('lead_capture_cookie', !isset($instance['lead_capture_cookie']) ? '' : $instance['lead_capture_cookie']);
        // Form Options
        // Get lead capture's force-back theme option from admin
        $back_on_lc_cancel_option = pls_get_option('pd-lc-force-back');
        if (!empty($instance['back_on_lc_cancel'])) {
            // if option has been set in the contact form call
            $back_on_lc_cancel = apply_filters('back_on_lc_cancel', !isset($instance['back_on_lc_cancel']) ? '' : $instance['back_on_lc_cancel']);
        } elseif (isset($back_on_lc_cancel_option)) {
            // Elseif the theme option is set, let the theme option set the force-back for canceling the lead capture form
            $back_on_lc_cancel = $back_on_lc_cancel_option;
        } else {
            // else, don't force users back
            $back_on_lc_cancel = 0;
        }
        $show_property = isset($instance['show_property']) && !empty($instance['show_property']) ? 1 : 0;
        $template_url = get_template_directory_uri();
        /** Define the default argument array. */
        $defaults = array('before_widget' => '<section class="side-ctnr placester_contact ' . $container_class . ' widget">', 'after_widget' => '</section>', 'title' => '', 'before_title' => '<h3>', 'after_title' => '</h3>');
        /** Merge the arguments with the defaults. */
        $args = wp_parse_args($args, $defaults);
        extract($args, EXTR_SKIP);
        ?>
        
          <?php 
        pls_do_atomic('contact_form_before_widget');
        ?>
          
          <?php 
        echo $before_widget;
        ?>

              <?php 
        pls_do_atomic('contact_form_before_title');
        ?>
              
              <?php 
        echo $before_title . $title . $after_title;
        ?>
              
              <?php 
        pls_do_atomic('contact_form_after_title');
        ?>
              
              <section class="<?php 
        echo $inner_class;
        ?>
 common-side-cont placester_contact_form clearfix">

                  <div class="success"><?php 
        echo $success_message;
        ?>
</div>

                  <form name="widget_contact" action="" method="post">

                    <?php 
        //this must be included to get additional user data;
        ?>
                    <input type="hidden" name="ip" value="<?php 
        print $ip = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
        ?>
"/>
                    <input type="hidden" name="user_agent" value="<?php 
        print $_SERVER['HTTP_USER_AGENT'];
        ?>
"/>
                    <input type="hidden" name="url" value="<?php 
        print 'https://' . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
        ?>
"/>
                    
                    <?php 
        if (isset($lead_capture_cookie) && $lead_capture_cookie == true) {
            ?>
                      <input type="hidden" name="lead_capture_cookie" value="true">
                    <?php 
        }
        ?>
                    
                    <input type="hidden" name="id" value="<?php 
        if (isset($data['id'])) {
            echo $data['id'];
        }
        ?>
">
                    <input type="hidden" name="fullAddress" value="<?php 
        echo @self::_get_full_address($data);
        ?>
">
                    <input type="hidden" name="email_confirmation" value="<?php 
        echo $email_confirmation;
        ?>
">
                    <input type="hidden" name="send_to_email" value="<?php 
        echo $send_to_email;
        ?>
">
                    <input type="hidden" name="cc_value" value="<?php 
        echo @$cc_value;
        ?>
">
                    <input type="hidden" name="bcc_value" value="<?php 
        echo @$bcc_value;
        ?>
">
                    <input type="hidden" name="back_on_lc_cancel" value="<?php 
        echo @$back_on_lc_cancel;
        ?>
">
                    <input type="hidden" name="form_submitted" value="0">
                    <input type="hidden" name="custom_link" value="<?php 
        echo @$custom_link;
        ?>
">
                    <input type="hidden" name="custom_link_target" value="<?php 
        echo @$custom_link_target;
        ?>
">
                    <input type="hidden" name="form_title" value="<?php 
        echo @$form_title;
        ?>
">
                    
                    <?php 
        if (!empty($include_name)) {
            ?>
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '<div class="' . $instance['inner_containers'] . '">';
            ?>
                      <label class="required" for="name"><?php 
            echo $name_label;
            ?>
</label>
                      <input class="required" id="name" placeholder="<?php 
            echo $name_value;
            ?>
" type="text" name="name" <?php 
            echo $name_required == true ? 'required="required"' : '';
            ?>
 <?php 
            echo !empty($name_error) ? 'data-message="' . $name_error . '"' : '';
            ?>
 />
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '</div>';
            ?>
                    <?php 
        }
        ?>

                    <?php 
        echo empty($instance['inner_containers']) ? '' : '<div class="' . $instance['inner_containers'] . '">';
        ?>
                    <label class="required" for="email"><?php 
        echo $email_label;
        ?>
</label><input class="required" id="email" placeholder="<?php 
        echo $email_value;
        ?>
" type="email" name="email" <?php 
        echo $email_required == true ? 'required="required"' : '';
        ?>
 <?php 
        echo !empty($email_error) ? 'data-message="' . $email_error . '"' : '';
        ?>
 />
                    <?php 
        echo empty($instance['inner_containers']) ? '' : '</div>';
        ?>

                    <?php 
        if (!empty($instance['phone_number'])) {
            ?>
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '<div class="' . $instance['inner_containers'] . '">';
            ?>
                      <label class="required" for="phone"><?php 
            echo $phone_label;
            ?>
</label><input class="required" id="phone" placeholder="<?php 
            echo $phone_value;
            ?>
" type="text" name="phone" <?php 
            echo $phone_required == true ? 'required="required"' : '';
            ?>
 <?php 
            echo !empty($phone_error) ? 'data-message="' . $phone_error . '"' : '';
            ?>
 />
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '</div>';
            ?>
                    <?php 
        }
        ?>

                    <?php 
        if (!empty($instance['subject'])) {
            ?>
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '<div class="' . $instance['inner_containers'] . '">';
            ?>
                      <label class="required" for="subject"><?php 
            echo $subject_label;
            ?>
</label><input class="required" id="subject" placeholder="<?php 
            echo $subject_value;
            ?>
" type="text" name="subject" <?php 
            echo $subject_required == true ? 'required="required"' : '';
            ?>
 <?php 
            echo !empty($subject_error) ? 'data-message="' . $subject_error . '"' : '';
            ?>
 />
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '</div>';
            ?>
                    <?php 
        }
        ?>

                    <?php 
        if (!empty($instance['departments'])) {
            ?>
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '<div class="' . $instance['inner_containers'] . '">';
            ?>
                      <label class="required" for="department"><?php 
            echo $departments_label;
            ?>
</label>
                      <?php 
            $departments = explode(',', $instance['departments']);
            ?>
                      <select id="department" placeholder="<?php 
            echo $departments_value;
            ?>
" name="department">
                        <?php 
            foreach ($departments as $department) {
                ?>
                          <option value="<?php 
                echo $department;
                ?>
"><?php 
                echo $department;
                ?>
</option>
                        <?php 
            }
            ?>
                      </select>
                      <?php 
            echo empty($instance['inner_containers']) ? '' : '</div>';
            ?>
                    <?php 
        }
        ?>

                    <?php 
        if ($show_property == 1) {
            ?>
                      <?php 
            $full_address = @self::_get_full_address($data);
            if (!empty($full_address)) {
                ?>
                        <?php 
                echo empty($instance['inner_containers']) ? '' : '<div class="' . $instance['inner_containers'] . '">';
                ?>
                        <label>Property</label><span class="info"><?php 
                echo str_replace("\n", " ", $full_address);
                ?>
</span>
                        <?php 
                echo empty($instance['inner_containers']) ? '' : '</div>';
                ?>
                      
                      <?php 
            }
            ?>
                    <?php 
        }
        ?>

                    <?php 
        echo empty($instance['textarea_container']) ? '' : '<div class="' . $instance['textarea_container'] . '">';
        ?>
                    <label for="question"><?php 
        echo $question_label;
        ?>
</label>
                    <textarea rows="5" id="question" name="question" placeholder="<?php 
        echo $question_value;
        ?>
" <?php 
        echo $question_required == true ? 'required="required"' : '';
        ?>
 <?php 
        echo !empty($question_error) ? 'data-message="' . $question_error . '"' : '';
        ?>
></textarea>
                    <?php 
        echo empty($instance['textarea_container']) ? '' : '</div>';
        ?>
                    

                  <input type="submit" value="<?php 
        echo $submit_value;
        ?>
" class="<?php 
        echo $button_class;
        ?>
" />
                  
                  <div class="pls-contact-form-loading" style='display:none;'>
                    <div id="medium-spinner"><div class="bar1"></div><div class="bar2"></div><div class="bar3"></div><div class="bar4"></div><div class="bar5"></div><div class="bar6"></div><div class="bar7"></div><div class="bar8"></div></div>
                  </div>
                  
                </form>
                
              </section>
              <div class="separator"></div>

            <?php 
        echo $after_widget;
        ?>

            <?php 
        pls_do_atomic('contact_form_after_widget');
        ?>
            
    <?php 
    }
Exemplo n.º 11
0
 /**
  * Outputs and filters the widget.
  * 
  * The widget connects to the plugin using the framework plugin api class. 
  * If the class returns false, this means that either the plugin is 
  * missing, either the it has no API key set.
  *
  * @since 0.0.1
  */
 public function widget($args, $instance)
 {
     list($args, $instance) = self::process_defaults($args, $instance);
     /** Extract the arguments into separate variables. */
     extract($args, EXTR_SKIP);
     /** Get the agent information from the plugin. */
     $agent = PLS_Plugin_API::get_user_details();
     $agent_array = array();
     // pls_dump($agent);
     /** If the plugin is active, and has an API key set... */
     if ($agent) {
         /* Output the theme's $before_widget wrapper. */
         echo $before_widget;
         /* If a title was input by the user, display it. */
         $widget_title = '';
         if (!empty($instance['title'])) {
             $widget_title = $before_title . apply_filters('widget_title', $instance['title'], $instance, $this->id_base) . $after_title;
         }
         /** This array will hold the html for the agent info sections and will be passed to the filters. */
         $agent_html = $instance;
         unset($agent_html['title']);
         // Add Name
         if (!empty($instance['name_custom'])) {
             // if admin set custom name
             $agent_html['name'] = self::checkForCustom($instance, 'name');
             $agent_array['name'] = $instance['name_custom'];
         } else {
             // otherwise use admin's name
             if (!empty($instance['name']) && (!empty($agent['user']['first_name']) || !empty($agent['user']['last_name']))) {
                 $agent_html['name'] = pls_h_p(trim($agent['user']['first_name'] . ' ' . $agent['user']['last_name']), array('class' => 'fn h5', 'itemprop' => 'name'));
                 $agent_array['name'] = $agent['user']['first_name'] . ' ' . $agent['user']['last_name'];
             } else {
                 $agent_html['name'] = '';
                 $agent_array['name'] = '';
             }
         }
         // Add Email
         if (!empty($instance['email_custom'])) {
             // if admin set custom email
             $agent_html['email'] = self::checkForCustom($instance, 'email');
             $agent_array['email'] = $instance['email_custom'];
         } else {
             // otherwise use admin's email
             if (!empty($instance['email']) && !empty($agent['user']['email'])) {
                 $agent_html['email'] = pls_h_p(pls_h_a("mailto:{$agent['user']['email']}", $agent['user']['email']), array('class' => 'email', 'itemprop' => 'email'));
                 $agent_array['email'] = $agent['user']['email'];
             } else {
                 $agent_html['email'] = '';
                 $agent_array['email'] = '';
             }
         }
         // Add Phone
         if (!empty($instance['phone_custom'])) {
             // if admin set custom phone
             $agent_html['phone'] = self::checkForCustom($instance, 'phone');
             $agent_array['phone'] = $instance['phone_custom'];
         } else {
             // otherwise use admin's phone
             if (!empty($instance['phone']) && !empty($agent['user']['phone'])) {
                 $agent_html['phone'] = pls_h_p(PLS_Format::phone($agent['user']['phone']), array('class' => 'phone', 'itemprop' => 'phone'));
                 $agent_array['phone'] = PLS_Format::phone($agent['user']['phone'], array('class' => 'phone', 'itemprop' => 'phone'));
             } else {
                 $agent_html['phone'] = '';
                 $agent_array['phone'] = '';
             }
         }
         // Add Description
         if (!empty($instance['description_custom'])) {
             // if admin set custom description
             $agent_html['description'] = self::checkForCustom($instance, 'description');
             $agent_array['description'] = $instance['description_custom'];
         } else {
             // otherwise use admin's descriptions
             if (!empty($instance['description']) && pls_get_option('pls-user-description')) {
                 $agent_bio = pls_get_option('pls-user-description');
                 $agent_html['description'] = pls_h_p($agent_bio, array('class' => 'desc p4', 'itemprop' => 'description'));
                 $agent_array['description'] = $agent_bio;
             } else {
                 $agent_html['description'] = '';
                 $agent_array['description'] = '';
             }
         }
         // Add Photo
         if (!empty($instance['image_uri'])) {
             // if admin set custom photo
             self::checkForCustom($instance, 'photo');
             $agent_array['photo'] = $instance['image_uri'];
         } else {
             // otherwise use admin's photo
             $user_image_option = pls_get_option('pls-user-image');
             if (!empty($instance['photo']) && !empty($user_image_option)) {
                 $agent_html['photo'] = pls_h_img(@pls_get_option('pls-user-image'), trim($agent['user']['first_name'] . ' ' . $agent['user']['last_name']), array('class' => 'photo', 'itemprop' => 'image') + array() + array());
                 $agent_array['photo'] = $user_image_option;
             } else {
                 if (isset($agent['user']['headshot'])) {
                     $agent_html['photo'] = pls_h_img($agent['user']['headshot'], trim($agent['user']['first_name'] . ' ' . $agent['user']['last_name']), array('class' => 'photo', 'itemprop' => 'image') + array() + array());
                     $agent_array['photo'] = $agent['user']['headshot'];
                 } else {
                     $agent_array['photo'] = '';
                 }
             }
         }
         // Form the HTML elements
         // photo
         $agent_html['photo'] = '<img class="pls-agent-phone" src="' . esc_url($instance['image_uri']) . '" />';
         // texts
         $agent_info = array('name', 'email', 'phone', 'description');
         foreach ($agent_info as $value) {
             $agent_html[$value] = pls_h_p($agent_html[$value], array('class' => 'pls-agent-' . $value));
         }
         /** Combine the agent information. */
         $widget_body = $agent_html['photo'] . $agent_html['name'] . $agent_html['email'] . $agent_html['phone'] . $agent_html['description'];
         /** Wrap the agent information in a section element. */
         $widget_body = apply_filters('pls_widget_agent_inner', $widget_body, $agent_html, $agent_array, $instance, $agent, $widget_id);
         /** Apply a filter on the whole widget */
         echo apply_filters('pls_widget_agent', $widget_title . $widget_body, $widget_title, $before_title, $after_title, $widget_body, $agent_html, $agent, $instance, $widget_id);
         /* Close the theme's widget wrapper. */
         if ($args['clearfix']) {
             echo '<div class="clearfix"></div>';
         }
         echo $after_widget;
     } elseif (current_user_can('administrator')) {
         /** Display an error message if the user is admin. */
         // echo pls_get_no_plugin_placeholder( $widget_id );
     }
 }
Exemplo n.º 12
0
    public static function get_contact_form()
    {
        // Get args passed to shortcode
        $form_args = func_get_args();
        extract($form_args[0], EXTR_SKIP);
        $title_text = pls_get_option('pd-lc-form-title');
        $description = pls_get_option('pd-lc-form-description');
        // Default
        ob_start();
        ?>
            <div class="lead-capture-wrapper" style="width: <?php 
        echo $width;
        ?>
px !important; height:<?php 
        echo $height;
        ?>
px !important;">
              
              <?php 
        if ($title_visible == 1 && !empty($title_text)) {
            ?>
                <p class="lc-title"><?php 
            echo $title_text;
            ?>
</p>
              <?php 
        }
        ?>
              
              <!-- Lead Capture Description Text -->
              <?php 
        if ($description_visible == true && !empty($description)) {
            ?>
                <div class="lc-description">
                  <?php 
            echo $description;
            ?>
                </div>
              <?php 
        }
        ?>
              
              <!-- Contact Form -->
              <div class="lc-contact-form">
                <?php 
        if (class_exists('Placester_Contact_Widget')) {
            // Lead Capture Form
            $instance = array("title" => '', "title_visible" => $title_visible != false ? true : false, "success_message" => !empty($success_message) ? $success_message : "Thank you for the email, we'll get back to you shortly", "name_value" => $name_placeholder != "Full Name" ? $name_placeholder : "Full Name", "name_required" => $name_required != false ? $name_required : true, "name_error" => $name_error != false ? $name_error : false, "email_value" => $email_placeholder != "Email Address" ? $email_placeholder : "Email Address", "email_required" => $email_required != false ? $email_required : true, "email_error" => $email_error != false ? $email_error : false, "phone_value" => $phone_placeholder != "Phone Number" ? $phone_placeholder : "Phone Number", "phone_required" => $phone_required != false ? $phone_required : true, "phone_error" => $phone_error != false ? $phone_error : false, "subject_value" => $subject_placeholder != "Subject" ? $subject_placeholder : "Subject", "subject_required" => $subject_required != false ? $subject_required : true, "subject_error" => $subject_error != false ? $subject_error : false, "question_label" => $question_placeholder != "Comments" ? $question_placeholder : "Comments", "question_required" => $question_required != false ? $question_required : true, "question_error" => $question_error != false ? $question_error : false, "phone_number" => $phone_include != true ? false : true, "cc_value" => $cc_value != false ? $cc_value : false, "bcc_value" => $bcc_value != false ? $bcc_value : false, "back_on_lc_cancel" => '', "button" => $button_text != "Submit" ? $button_text : "Submit", "number" => 9);
            $args = array("id" => 99);
            //giving high tab index numbers as to not collide with sidebar widgets
            $sb = new Placester_Contact_Widget();
            $sb->number = $instance['number'];
            $sb->widget($args, $instance);
        }
        ?>
              </div>
              
            </div>
        <?php 
        $form = ob_get_clean();
        return $form;
    }
 /**
  * Returns a form that can be used to search for listings.
  * 
  * The defaults are as follows:
  *     'ajax' - Default is false. Wether the resulting form should use ajax 
  *          or not. If ajax is set to true, then for the form to work, the 
  *          results container should be defined on the page. 
  *          {@link PLS_Partials::get_listings_list_ajax()} should be used.
  *     'context' - An execution context for the function. Used when the 
  *          filters are created.
  *     'context_var' - Any variable that needs to be passed to the filters 
  *          when function is executed.
  * Defines the following hooks.
  *      pls_listings_search_form_bedrooms_array[_context] - Filters the 
  *          array with the data used to generate the select.
  *      pls_listings_search_form_bathrooms_array[_context]
  *      pls_listings_search_form_available_on_array[_context]
  *      pls_listings_search_form_cities_array[_context]
  *      pls_listings_search_form_min_price_array[_context]
  *      pls_listings_search_form_max_price_array[_context]
  *      
  *      pls_listings_search_form_bedrooms_attributes[_context] - Filters 
  *          the attribute array for the select. If extra attributes need to 
  *          be added to the select element, they should be provided in 
  *          a array( $attribute_key => $attribute_value ) form.
  *      pls_listings_search_form_bathrooms_attributes[_context]
  *      pls_listings_search_form_available_on_attributes[_context]
  *      pls_listings_search_form_cities_attributes[_context]
  *      pls_listings_search_form_min_price_attributes[_context]
  *      pls_listings_search_form_max_price_attributes[_context]
  *      
  *      pls_listings_search_form_bedrooms_html[_context] - Filters the html 
  *          for this option. Can be used to add extra containers.
  *      pls_listings_search_form_bathrooms_html[_context]
  *      pls_listings_search_form_available_on_html[_context]
  *      pls_listings_search_form_cities_html[_context]
  *      pls_listings_search_form_min_price_html[_context]
  *      pls_listings_search_form_max_price_html[_context]
  *      
  *      pls_listings_search_form_submit[_context] - Filters the form submit 
  *          button.
  *
  *      pls_listings_search_form_inner[_context] - Filters the form inner html.
  *      pls_listings_search_form_outer[_context] - Filters the form html.
  *
  * @static
  * @param array $args Optional. Overrides defaults.
  * @return string The html for the listings search form.
  * @since 0.0.1
  */
 public static function init($args = '')
 {
     // Define the default argument array
     $defaults = array('ajax' => false, 'class' => 'pls_search_form_listings', 'context' => '', 'theme_option_id' => '', 'context_var' => null, 'bedrooms' => 1, 'min_beds' => 1, 'max_beds' => 1, 'bathrooms' => 1, 'min_baths' => 1, 'max_baths' => 1, 'price' => 1, 'half_baths' => 1, 'property_type' => 1, 'listing_types' => 1, 'zoning_types' => 1, 'purchase_types' => 1, 'available_on' => 1, 'cities' => 1, 'multi_cities' => 0, 'states' => 1, 'multi_states' => 0, 'zips' => 1, 'neighborhood' => 1, 'multi_neighborhoods' => 0, 'county' => 1, 'min_price' => 1, 'max_price' => 1, 'min_price_rental' => 1, 'max_price_rental' => 1, 'min_price_sales' => 1, 'max_price_sales' => 1, 'neighborhood_polygons' => 0, 'neighborhood_polygons_type' => false, 'min_sqft' => 1, 'max_sqft' => 1, 'include_submit' => true, 'pls_empty_value' => array());
     $args = wp_parse_args($args, $defaults);
     $cache_id = $args;
     if ($_SERVER['REQUEST_METHOD'] === 'POST') {
         $cache_id['$_POST'] = $_POST;
     }
     $cache = new PLS_Cache('Search Form');
     if ($result = $cache->get($cache_id)) {
         return $result;
     }
     $form_options = array();
     // Set Form Defaults for params onload, set in Theme Options
     $form_options['location']['locality'] = pls_get_option('form_default_options_locality');
     $form_options['location']['region'] = pls_get_option('form_default_options_region');
     $form_options['location']['postal'] = pls_get_option('form_default_options_postal');
     $form_options['location']['neighborhood'] = pls_get_option('form_default_options_neighborhood');
     $form_options['location']['county'] = pls_get_option('form_default_options_county');
     $form_options['property_type'] = pls_get_option('form_default_options_property_type');
     $_POST = wp_parse_args($_POST, $form_options);
     //respect user settings, unless they are all empty.
     $user_search_params = pls_get_option($args['theme_option_id']);
     if (isset($user_search_params['hide_all']) && $user_search_params['hide_all'] == 1) {
         return '';
     }
     $args = wp_parse_args($args, $user_search_params);
     /** Extract the arguments after they merged with the defaults. */
     extract(wp_parse_args($args, $defaults), EXTR_SKIP);
     // Set the default empty values for the all the form elements.
     // Dev can change defaults via a filter in process defaults.
     $pls_empty_value = self::process_default_value_array($pls_empty_value, $context);
     /**
      * Elements options arrays. Used to generate the HTML.
      */
     /** Prepend the default empty valued element. */
     $user_beds_start = pls_get_option('pls-option-bed-min');
     $user_beds_end = pls_get_option('pls-option-bed-max');
     if (is_numeric($user_beds_start) && is_numeric($user_beds_end)) {
         $beds_range = range($user_beds_start, $user_beds_end);
         $form_options['bedrooms'] = array('pls_empty_value' => $pls_empty_value['bedrooms']) + array_combine($beds_range, $beds_range);
     } else {
         $form_options['bedrooms'] = array('pls_empty_value' => $pls_empty_value['bedrooms']) + range(0, 16);
     }
     /** Prepend the default empty valued element. */
     $user_baths_start = pls_get_option('pls-option-bath-min');
     $user_baths_end = pls_get_option('pls-option-bath-max');
     if (is_numeric($user_baths_start) && is_numeric($user_baths_end)) {
         $baths_range = range($user_baths_start, $user_baths_end);
         $form_options['bathrooms'] = array('pls_empty_value' => $pls_empty_value['bathrooms']) + array_combine($baths_range, $baths_range);
     } else {
         $form_options['bathrooms'] = array('pls_empty_value' => $pls_empty_value['bathrooms']) + range(0, 10);
     }
     /** Prepend the default empty valued element. */
     $user_half_baths_start = pls_get_option('pls-option-half-bath-min');
     $user_half_baths_end = pls_get_option('pls-option-half-bath-max');
     if (is_numeric($user_half_baths_start) && is_numeric($user_half_baths_end)) {
         $half_bath_range = range($user_half_baths_start, $user_half_baths_end);
         $form_options['half_baths'] = array('pls_empty_value' => $pls_empty_value['half_baths']) + array_combine($half_bath_range, $half_bath_range);
     } else {
         $form_options['half_baths'] = array('pls_empty_value' => $pls_empty_value['half_baths']) + range(0, 10);
     }
     /** Generate an array with the next 12 months. */
     $current_month = (int) date('m');
     for ($i = $current_month; $i < $current_month + 12; $i++) {
         $form_options['available_on'][date('d-m-Y', mktime(0, 0, 0, $i, 1))] = date('F Y', mktime(0, 0, 0, $i, 1));
     }
     /** Get the property type options */
     $get_type_response = PLS_Plugin_API::get_type_list();
     // error_log("GET_TYPE_RESPONSE\n" . serialize($get_type_response) . "\n");
     if (empty($get_type_response)) {
         $form_options['property_type'] = array('pls_empty_value' => $pls_empty_value['property_type']);
     } else {
         // if API serves up 'false' key in the array, remove it, because we're going to add one.
         if (isset($get_type_response['false'])) {
             unset($get_type_response['false']);
         }
         $form_options['property_type'] = array_merge(array('pls_empty_value' => $pls_empty_value['property_type']), $get_type_response);
     }
     /** Get the listing type options. */
     $form_options['listing_types'] = array('pls_empty_value' => $pls_empty_value['listing_types']) + PLS_Plugin_API::get_type_values('listing');
     /** Get the zoning type options. */
     $form_options['zoning_types'] = array('pls_empty_value' => $pls_empty_value['zoning_types']) + PLS_Plugin_API::get_type_values('zoning');
     // removed "All" - it's not giving all listings. jquery needs to change to not include "[]"s
     // $form_options['zoning_types'] = PLS_Plugin_API::get_type_values( 'zoning' ); // for Multiple, not for single, see below
     /** Get the purchase type options. */
     $form_options['purchase_types'] = array('pls_empty_value' => $pls_empty_value['purchase_types']) + PLS_Plugin_API::get_type_values('purchase');
     // removed "All" - it's not giving all listings. jquery needs to change to not include "[]"s
     // $form_options['purchase_types'] = PLS_Plugin_API::get_type_values( 'purchase' );
     /** Prepend the default empty valued element. */
     $form_options['available_on'] = array('pls_empty_value' => $pls_empty_value['available_on']) + $form_options['available_on'];
     /** Prepend the default empty valued element. */
     $locations = PLS_Plugin_API::get_location_list();
     $neighborhood_polygons_options = PLS_Plugin_API::get_location_list_polygons($neighborhood_polygons_type);
     if (empty($locations['locality'])) {
         $form_options['cities'] = array('pls_empty_value' => $pls_empty_value['cities']);
     } else {
         unset($locations['locality']['false']);
         sort($locations['locality']);
         $form_options['cities'] = array('pls_empty_value' => $pls_empty_value['cities']) + $locations['locality'];
     }
     if (empty($locations['region'])) {
         $form_options['states'] = array('pls_empty_value' => $pls_empty_value['states']);
     } else {
         unset($locations['region']['false']);
         sort($locations['region']);
         $form_options['states'] = array('pls_empty_value' => $pls_empty_value['states']) + $locations['region'];
     }
     if (empty($locations['postal'])) {
         $form_options['zips'] = array('pls_empty_value' => $pls_empty_value['zips']);
     } else {
         unset($locations['postal']['false']);
         sort($locations['postal']);
         $form_options['zips'] = array('pls_empty_value' => $pls_empty_value['zips']) + $locations['postal'];
     }
     if (empty($locations['neighborhood'])) {
         $form_options['neighborhood'] = array('pls_empty_value' => $pls_empty_value['neighborhoods']);
     } else {
         unset($locations['neighborhood']['false']);
         sort($locations['neighborhood']);
         $form_options['neighborhood'] = array('pls_empty_value' => $pls_empty_value['neighborhoods']) + $locations['neighborhood'];
     }
     if (empty($locations['county'])) {
         $form_options['county'] = array('pls_empty_value' => $pls_empty_value['county']);
     } else {
         unset($locations['county']['false']);
         sort($locations['county']);
         $form_options['county'] = array('pls_empty_value' => $pls_empty_value['county']) + $locations['county'];
     }
     if (empty($neighborhood_polygons_options)) {
         $form_options['neighborhood_polygons'] = array('pls_empty_value' => $pls_empty_value['neighborhood_polygons']);
     } else {
         unset($neighborhood_polygons_options['false']);
         sort($neighborhood_polygons_options);
         $form_options['neighborhood_polygons'] = array('pls_empty_value' => $pls_empty_value['neighborhood_polygons']) + $neighborhood_polygons_options;
     }
     // Min/Max Sqft
     /** Define the minimum price options array. */
     $form_options['min_sqft'] = array('pls_empty_value' => $pls_empty_value['min_sqft'], '200' => '200', '400' => '400', '600' => '600', '800' => '800', '1000' => '1,000', '1200' => '1,200', '1400' => '1,400', '1600' => '1,600', '1800' => '1,800', '2000' => '2,000', '2200' => '2,200', '2400' => '2,400', '2600' => '2,600', '2800' => '2,800', '3000' => '3,000', '3500' => '3,500', '4000' => '4,000', '4500' => '4,500', '5000' => '5,000', '6000' => '6,000', '7000' => '7,000', '8000' => '8,000');
     $user_start_sqft = pls_get_option('pls-option-sqft-min') ? pls_get_option('pls-option-sqft-min') : 0;
     $user_end_sqft = pls_get_option('pls-option-sqft-max');
     $user_inc_sqft = pls_get_option('pls-option-sqft-inc');
     if (is_numeric($user_start_sqft) && is_numeric($user_end_sqft) && is_numeric($user_inc_sqft)) {
         // Handle when increment is larger than the range from start to end
         if ($user_inc_sqft > $user_end_sqft - $user_start_sqft) {
             $user_inc_sqft = $user_end_sqft - $user_start_sqft;
         }
         $range = range($user_start_sqft, $user_end_sqft, $user_inc_sqft);
         $form_options['min_sqft'] = array();
         foreach ($range as $sqft_value) {
             $form_options['min_sqft'][$sqft_value] = PLS_Format::number($sqft_value, array('abbreviate' => false));
         }
     }
     /** Set the maximum price options array. */
     $form_options['max_sqft'] = $form_options['min_sqft'];
     /* max_sqft default needs to be set too */
     $form_options['max_sqft']['pls_empty_value'] = __($pls_empty_value['max_sqft'], pls_get_textdomain());
     // Price Ranges
     /** Define the minimum price options array. */
     $form_options['min_price'] = array('pls_empty_value' => __($pls_empty_value['min_price'], pls_get_textdomain()), '0' => '$0', '400' => '$400', '500' => '$500', '2000' => '$2,000', '3000' => '$3,000', '4000' => '$4,000', '5000' => '$5,000', '50000' => '$50,000', '100000' => '$100,000', '200000' => '$200,000', '350000' => '$350,000', '400000' => '$400,000', '450000' => '$450,000', '500000' => '$500,000', '600000' => '$600,000', '700000' => '$700,000', '800000' => '$800,000', '900000' => '$900,000', '1000000' => '$1,000,000');
     /* Set the maximum price options array + its default */
     $form_options['max_price'] = $form_options['min_price'];
     $form_options['max_price']['pls_empty_value'] = __($pls_empty_value['max_price'], pls_get_textdomain());
     $user_price_start = pls_get_option('pls-option-price-min') ? pls_get_option('pls-option-price-min') : 0;
     $user_price_end = pls_get_option('pls-option-price-max');
     $user_price_inc = pls_get_option('pls-option-price-inc');
     if (is_numeric($user_price_start) && is_numeric($user_price_end) && is_numeric($user_price_inc)) {
         $range = range($user_price_start, $user_price_end, $user_price_inc);
         // Create empty arrays
         $form_options['min_price'] = array();
         $form_options['max_price'] = array();
         // set empty values
         $form_options['min_price']['pls_empty_value'] = __($pls_empty_value['min_price'], pls_get_textdomain());
         $form_options['max_price']['pls_empty_value'] = __($pls_empty_value['max_price'], pls_get_textdomain());
         foreach ($range as $price_value) {
             $form_options['min_price'][$price_value] = PLS_Format::number($price_value, array('abbreviate' => false));
             $form_options['max_price'][$price_value] = PLS_Format::number($price_value, array('abbreviate' => false));
         }
     }
     // Price for Rentals
     /** Define the minimum price options array. */
     $form_options['min_price_rental'] = array('pls_empty_value' => __($pls_empty_value['min_price_rental'], pls_get_textdomain()), '200' => '$200', '400' => '$400', '600' => '$600', '800' => '$800', '1000' => '$1,000', '1100' => '$1,100', '1200' => '$1,200', '1300' => '$1,300', '1400' => '$1,400', '1500' => '$1,500', '1600' => '$1,600', '1700' => '$1,700', '1800' => '$1,800', '1900' => '$1,900', '2000' => '$2,000', '2100' => '$2,100', '2200' => '$2,200', '2300' => '$2,300', '2400' => '$2,400', '2500' => '$2,500', '2600' => '$2,600', '2700' => '$2,700', '2800' => '$2,800', '2900' => '$2,900', '3000' => '$3,000', '3500' => '$3,500', '4000' => '$4,000', '4500' => '$4,500', '5000' => '$5,000', '6000' => '$6,000', '7000' => '$7,000', '8000' => '$8,000');
     /* Set the maximum price rental options array + its default */
     $form_options['max_price_rental'] = $form_options['min_price_rental'];
     $form_options['max_price_rental']['pls_empty_value'] = __($pls_empty_value['max_price_rental'], pls_get_textdomain());
     $user_price_start_rental = pls_get_option('pls-option-rental-price-min') ? pls_get_option('pls-option-rental-price-min') : 0;
     $user_price_end_rental = pls_get_option('pls-option-rental-price-max');
     $user_price_inc_rental = pls_get_option('pls-option-rental-price-inc');
     if (is_numeric($user_price_start_rental) && is_numeric($user_price_end_rental) && is_numeric($user_price_inc_rental)) {
         // Handle when increment is larger than the range from start to end
         if ($user_price_inc_rental > $user_price_end_rental - $user_price_start_rental) {
             $user_price_inc_rental = $user_price_end_rental - $user_price_start_rental;
         }
         $range = range($user_price_start_rental, $user_price_end_rental, $user_price_inc_rental);
         // Create empty arrays
         $form_options['min_price_rental'] = array();
         $form_options['max_price_rental'] = array();
         // set empty values
         $form_options['min_price_rental']['pls_empty_value'] = __($pls_empty_value['min_price_rental'], pls_get_textdomain());
         $form_options['max_price_rental']['pls_empty_value'] = __($pls_empty_value['max_price_rental'], pls_get_textdomain());
         foreach ($range as $price_value) {
             $form_options['min_price_rental'][$price_value] = PLS_Format::number($price_value, array('abbreviate' => false));
             $form_options['max_price_rental'][$price_value] = PLS_Format::number($price_value, array('abbreviate' => false));
         }
     }
     // Price for Sales
     /** Define the minimum price options array. */
     $form_options['min_price_sales'] = array('pls_empty_value' => __($pls_empty_value['min_price_sales'], pls_get_textdomain()), '20000' => '$20,000', '40000' => '$40,000', '60000' => '$60,000', '80000' => '$80,000', '100000' => '$100,000', '120000' => '$120,000', '140000' => '$140,000', '160000' => '$160,000', '180000' => '$180,000', '200000' => '$200,000', '250000' => '$250,000', '300000' => '$300,000', '350000' => '$350,000', '400000' => '$400,000', '450000' => '$450,000', '500000' => '$500,000', '550000' => '$550,000', '600000' => '$600,000', '650000' => '$650,000', '700000' => '$700,000', '750000' => '$750,000', '800000' => '$800,000', '850000' => '$850,000', '900000' => '$900,000', '950000' => '$950,000', '1000000' => '$1,000,000');
     /* Set the maximum price sales options array + its default */
     $form_options['max_price_sales'] = $form_options['min_price_sales'];
     $form_options['max_price_sales']['pls_empty_value'] = __($pls_empty_value['max_price_sales'], pls_get_textdomain());
     $user_price_start_sales = pls_get_option('pls-option-sales-price-min') ? pls_get_option('pls-option-sales-price-min') : 0;
     $user_price_end_sales = pls_get_option('pls-option-sales-price-max');
     $user_price_inc_sales = pls_get_option('pls-option-sales-price-inc');
     if (is_numeric($user_price_start_sales) && is_numeric($user_price_end_sales) && is_numeric($user_price_inc_sales)) {
         // Handle when increment is larger than the range from start to end
         if ($user_price_inc_sales > $user_price_end_sales - $user_price_start_sales) {
             $user_price_inc_sales = $user_price_end_sales - $user_price_start_sales;
         }
         $range = range($user_price_start_sales, $user_price_end_sales, $user_price_inc_sales);
         // Create empty arrays
         $form_options['min_price_sales'] = array();
         $form_options['max_price_sales'] = array();
         // set empty values
         $form_options['min_price_sales']['pls_empty_value'] = __($pls_empty_value['min_price_sales'], pls_get_textdomain());
         $form_options['max_price_sales']['pls_empty_value'] = __($pls_empty_value['max_price_sales'], pls_get_textdomain());
         foreach ($range as $price_value) {
             $form_options['min_price_sales'][$price_value] = PLS_Format::number($price_value, array('abbreviate' => false));
             $form_options['max_price_sales'][$price_value] = PLS_Format::number($price_value, array('abbreviate' => false));
         }
     }
     // Set min_beds/max_beds form element
     $form_options['min_beds'] = array('pls_empty_value' => __($pls_empty_value['min_beds'], pls_get_textdomain()), '0' => '0', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', '8' => '8', '9' => '9', '10' => '10', '11' => '11', '12' => '12', '13' => '13', '14' => '14', '15' => '15');
     $user_bed_start = pls_get_option('pls-option-bed-min') ? pls_get_option('pls-option-bed-min') : 0;
     $user_bed_end = pls_get_option('pls-option-bed-max') ? pls_get_option('pls-option-bed-max') : 15;
     $user_bed_inc = pls_get_option('pls-option-bed-inc') ? pls_get_option('pls-option-bed-inc') : 1;
     if (is_numeric($user_bed_start) && is_numeric($user_bed_end) && is_numeric($user_bed_inc)) {
         $range = range($user_bed_start, $user_bed_end, $user_bed_inc);
         $form_options['min_beds'] = array();
         foreach ($range as $bed_value) {
             $form_options['min_beds'][$bed_value] = $bed_value;
         }
         $form_options['min_beds'] = array('pls_empty_value' => $pls_empty_value['min_beds']) + $form_options['min_beds'];
     }
     /** Set the max beds array too. */
     $form_options['max_beds'] = $form_options['min_beds'];
     // Set min_baths/max_baths form element
     $form_options['min_baths'] = array('pls_empty_value' => __($pls_empty_value['min_baths'], pls_get_textdomain()), '0' => '0', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', '8' => '8', '9' => '9', '10' => '10');
     $user_bath_start = pls_get_option('pls-option-bath-min') ? pls_get_option('pls-option-bath-min') : 0;
     $user_bath_end = pls_get_option('pls-option-bath-max') ? pls_get_option('pls-option-bath-max') : 10;
     $user_bath_inc = pls_get_option('pls-option-bath-inc') ? pls_get_option('pls-option-bath-inc') : 1;
     if (is_numeric($user_bath_start) && is_numeric($user_bath_end) && is_numeric($user_bath_inc)) {
         $range = range($user_bath_start, $user_bath_end, $user_bath_inc);
         $form_options['min_baths'] = array();
         foreach ($range as $bath_value) {
             $form_options['min_baths'][$bath_value] = $bath_value;
         }
         $form_options['min_baths'] = array('pls_empty_value' => $pls_empty_value['min_baths']) + $form_options['min_baths'];
     }
     /** Set the max baths array too. */
     $form_options['max_baths'] = $form_options['min_baths'];
     /** Define an array for extra attributes. */
     $form_opt_attr = array();
     /** Filter form fields. */
     $form_option_keys = array_keys($form_options);
     $form_options_count = count($form_option_keys);
     // foreach( $form_options as $option_name => &$opt_array ) {
     // replace the foreach with for to provide reference update functionality in the loop
     for ($i = 0; $i < $form_options_count; $i++) {
         $option_name = $form_option_keys[$i];
         $opt_array = $form_options[$option_name];
         /** Filter each of the fields options arrays. */
         $opt_array = apply_filters(pls_get_merged_strings(array("pls_listings_search_form_{$option_name}_array", $context), '_', 'pre', false), $opt_array, $context_var);
         /** Form options array. */
         $form_opt_attr[$option_name] = apply_filters(pls_get_merged_strings(array("pls_listings_search_form_{$option_name}_attributes", $context), '_', 'pre', false), array(), $context_var);
         /** Make sure it is an array. */
         if (!is_array($form_opt_attr[$option_name])) {
             $form_opt_attr[$option_name] = array();
         }
         /** Append the data-placeholder attribute. */
         if (isset($opt_array['pls_empty_value'])) {
             $form_opt_attr[$option_name] = $form_opt_attr[$option_name] + array('data-placeholder' => $opt_array['pls_empty_value']);
         }
         $form_options[$option_name] = $opt_array;
     }
     if (!isset($_POST['metadata'])) {
         $_POST['metadata'] = array();
     }
     /**
      * Elements HTML.
      */
     /** Add the bedrooms select element. */
     if ($bedrooms == 1) {
         $selected_beds = isset($_POST['metadata']['beds']) ? wp_kses_post($_POST['metadata']['beds']) : false;
         $form_html['bedrooms'] = pls_h('select', array('name' => 'metadata[beds]') + $form_opt_attr['bedrooms'], pls_h_options($form_options['bedrooms'], $selected_beds));
     }
     /** Add the bedrooms select element. */
     if ($min_beds == 1) {
         $selected_min_beds = isset($_POST['metadata']['min_beds']) ? $_POST['metadata']['min_beds'] : false;
         $form_html['min_beds'] = pls_h('select', array('name' => 'metadata[min_beds]') + $form_opt_attr['min_beds'], pls_h_options($form_options['min_beds'], $selected_min_beds));
     }
     /** Add the bedrooms select element. */
     if ($max_beds == 1) {
         $selected_max_beds = isset($_POST['metadata']['max_beds']) ? $_POST['metadata']['max_beds'] : false;
         $form_html['max_beds'] = pls_h('select', array('name' => 'metadata[max_beds]') + $form_opt_attr['max_beds'], pls_h_options($form_options['max_beds'], $selected_max_beds));
     }
     /** Add the bathroms select element. */
     if ($bathrooms == 1) {
         $selected_baths = isset($_POST['metadata']['baths']) ? wp_kses_post($_POST['metadata']['baths']) : false;
         $form_html['bathrooms'] = pls_h('select', array('name' => 'metadata[baths]') + $form_opt_attr['bathrooms'], pls_h_options($form_options['bathrooms'], $selected_baths));
     }
     /** Add the min baths select element. */
     if ($min_baths == 1) {
         $selected_min_baths = isset($_POST['metadata']['min_baths']) ? $_POST['metadata']['min_baths'] : false;
         $form_html['min_baths'] = pls_h('select', array('name' => 'metadata[min_baths]') + $form_opt_attr['min_baths'], pls_h_options($form_options['min_baths'], $selected_min_baths));
     }
     /** Add the max baths select element. */
     if ($max_baths == 1) {
         $selected_max_baths = isset($_POST['metadata']['max_baths']) ? $_POST['metadata']['max_baths'] : false;
         $form_html['max_baths'] = pls_h('select', array('name' => 'metadata[max_baths]') + $form_opt_attr['max_baths'], pls_h_options($form_options['max_baths'], $selected_max_baths));
     }
     /** Add the bathroms select element. */
     if ($half_baths == 1) {
         $selected_half_baths = isset($_POST['metadata']['half_baths']) ? wp_kses_post($_POST['metadata']['half_baths']) : false;
         $form_html['half_baths'] = pls_h('select', array('name' => 'metadata[half_baths]') + $form_opt_attr['half_baths'], pls_h_options($form_options['half_baths'], $selected_half_baths));
     }
     /** Add the property type select element. */
     if ($property_type == 1) {
         $selected_property_type = isset($_POST['property_type']) ? wp_kses_post($_POST['property_type']) : false;
         $form_html['property_type'] = pls_h('select', array('name' => 'property_type') + $form_opt_attr['property_type'], pls_h_options($form_options['property_type'], $selected_property_type));
     }
     /** Add the listing type select element. */
     if ($listing_types == 1) {
         $selected_listing_types = isset($_POST['listing_types']) ? wp_kses_post($_POST['listing_types']) : false;
         $form_html['listing_types'] = pls_h('select', array('name' => 'listing_types') + $form_opt_attr['listing_types'], pls_h_options($form_options['listing_types'], $selected_listing_types));
     }
     /** Add the zoning type select element. */
     if ($zoning_types == 1) {
         $selected_zoning_types = isset($_POST['zoning_types']) ? wp_kses_post($_POST['zoning_types']) : false;
         $form_html['zoning_types'] = pls_h('select', array('name' => 'zoning_types[]') + $form_opt_attr['zoning_types'], pls_h_options($form_options['zoning_types'], $selected_zoning_types));
     }
     /** Add the purchase type select element. */
     if ($purchase_types == 1) {
         $default_purchase_types = @pls_get_option('default_form_options_purchase_types');
         // Set Default
         if (empty($_POST['purchase_types'])) {
             $purchase_types_select = array($default_purchase_types);
         } else {
             $purchase_types_select = wp_kses_post($_POST['purchase_types']);
         }
         $form_html['purchase_types'] = pls_h('select', array('name' => 'purchase_types[]') + $form_opt_attr['purchase_types'], pls_h_options($form_options['purchase_types'], $purchase_types_select));
     }
     /** Add the availability select element. */
     if ($available_on == 1) {
         $selected_avail_on = isset($_POST['metadata']['avail_on']) ? wp_kses_post($_POST['metadata']['avail_on']) : false;
         $form_html['available_on'] = pls_h('select', array('name' => 'metadata[avail_on]') + $form_opt_attr['available_on'], pls_h_options($form_options['available_on'], $selected_avail_on));
     }
     /** Add the cities select element. */
     if ($multi_cities == 1) {
         // multi-city select option enabled
         $selected_locality = isset($_POST['location']['locality']) ? wp_kses_post($_POST['location']['locality']) : false;
         $form_html['cities'] = pls_h('select', array('name' => 'location[locality][]', 'multiple' => 'multiple') + $form_opt_attr['cities'], pls_h_options($form_options['cities'], $selected_locality, true));
     } elseif ($cities == 1) {
         $selected_locality = isset($_POST['location']['locality']) ? wp_kses_post($_POST['location']['locality']) : false;
         $form_html['cities'] = pls_h('select', array('name' => 'location[locality]') + $form_opt_attr['cities'], pls_h_options($form_options['cities'], $selected_locality, true));
     }
     /** Add the cities select element. */
     if ($multi_states == 1) {
         // multi-state select option enabled
         $selected_region = isset($_POST['location']['region']) ? wp_kses_post($_POST['location']['region']) : false;
         $form_html['states'] = pls_h('select', array('name' => 'location[region][]', 'multiple' => 'multiple') + $form_opt_attr['states'], pls_h_options($form_options['states'], $selected_region, true));
     } elseif ($states == 1) {
         $selected_region = isset($_POST['location']['region']) ? wp_kses_post($_POST['location']['region']) : false;
         $form_html['states'] = pls_h('select', array('name' => 'location[region]') + $form_opt_attr['states'], pls_h_options($form_options['states'], $selected_region, true));
     }
     /** Add the cities select element. */
     if ($zips == 1) {
         $selected_postal = isset($_POST['location']['postal']) ? wp_kses_post($_POST['location']['postal']) : false;
         $form_html['zips'] = pls_h('select', array('name' => 'location[postal]') + $form_opt_attr['zips'], pls_h_options($form_options['zips'], $selected_postal, true));
     }
     /** Add the neighborhood select element. */
     if ($multi_neighborhoods == 1) {
         // multi-neighborhood select option enabled
         $selected_neighborhood = isset($_POST['location']['neighborhood']) ? wp_kses_post($_POST['location']['neighborhood']) : false;
         $form_html['neighborhood'] = pls_h('select', array('name' => 'location[neighborhood][]', 'multiple' => 'multiple') + $form_opt_attr['neighborhood'], pls_h_options($form_options['neighborhood'], $selected_neighborhood, true));
     } elseif ($neighborhood == 1) {
         $selected_neighborhood = isset($_POST['location']['neighborhood']) ? wp_kses_post($_POST['location']['neighborhood']) : false;
         $form_html['neighborhood'] = pls_h('select', array('name' => 'location[neighborhood]') + $form_opt_attr['neighborhood'], pls_h_options($form_options['neighborhood'], $selected_neighborhood, true));
     }
     /** Add the county select element. */
     if ($county == 1) {
         $selected_county = isset($_POST['location']['county']) ? wp_kses_post($_POST['location']['county']) : false;
         $form_html['county'] = pls_h('select', array('name' => 'location[county]') + $form_opt_attr['county'], pls_h_options($form_options['county'], $selected_county, true));
     }
     /** Add the neighborhood / neighborhood_polygon select element. */
     if ($neighborhood_polygons == 1) {
         if (count($form_options['neighborhood_polygons']) > 1) {
             $selected_polygons = isset($_POST['neighborhood_polygons']) ? wp_kses_post($_POST['neighborhood_polygons']) : false;
             $form_html['neighborhood_polygons'] = pls_h('select', array('name' => 'neighborhood_polygons') + $form_opt_attr['neighborhood_polygons'], pls_h_options($form_options['neighborhood_polygons'], $selected_polygons, true));
         } else {
             // default to MLS data for neighborhoods if no polygons are set
             $selected_polygons = isset($_POST['location']['neighborhood']) ? wp_kses_post($_POST['location']['neighborhood']) : false;
             $form_html['neighborhood_polygons'] = pls_h('select', array('name' => 'location[neighborhood]') + $form_opt_attr['neighborhood'], pls_h_options($form_options['neighborhood'], $selected_neighborhood, true));
         }
     }
     /** Add the minimum sqft select element. */
     if ($min_sqft == 1) {
         $selected_min_sqft = isset($_POST['metadata']['min_sqft']) ? wp_kses_post($_POST['metadata']['min_sqft']) : false;
         $form_html['min_sqft'] = pls_h('select', array('name' => 'metadata[min_sqft]') + $form_opt_attr['min_sqft'], pls_h_options($form_options['min_sqft'], $selected_min_sqft));
     }
     /** Add the minimum price select element. */
     if ($max_sqft == 1) {
         $selected_max_sqft = isset($_POST['metadata']['max_sqft']) ? wp_kses_post($_POST['metadata']['max_sqft']) : false;
         $form_html['max_sqft'] = pls_h('select', array('name' => 'metadata[max_sqft]') + $form_opt_attr['max_sqft'], pls_h_options($form_options['max_sqft'], $selected_max_sqft));
     }
     /** Add the minimum price select element. */
     if ($min_price == 1) {
         $selected_min_price = isset($_POST['metadata']['min_price']) ? wp_kses_post($_POST['metadata']['min_price']) : false;
         $form_html['min_price'] = pls_h('select', array('name' => 'metadata[min_price]') + $form_opt_attr['min_price'], pls_h_options($form_options['min_price'], $selected_min_price));
     }
     /** Add the maximum price select element. */
     if ($max_price == 1) {
         $selected_max_price = isset($_POST['metadata']['max_price']) ? wp_kses_post($_POST['metadata']['max_price']) : false;
         $form_html['max_price'] = pls_h('select', array('name' => 'metadata[max_price]') + $form_opt_attr['max_price'], pls_h_options($form_options['max_price'], $selected_max_price));
     }
     /** Add the minimum price select element. */
     if ($min_price_rental == 1) {
         $selected_min_price = isset($_POST['metadata']['min_price']) ? wp_kses_post($_POST['metadata']['min_price']) : false;
         $form_html['min_price_rental'] = pls_h('select', array('name' => 'metadata[min_price]') + $form_opt_attr['min_price'], pls_h_options($form_options['min_price_rental'], $selected_min_price));
     }
     /** Add the maximum price select element. */
     if ($max_price_rental == 1) {
         $selected_max_price = isset($_POST['metadata']['max_price']) ? wp_kses_post($_POST['metadata']['max_price']) : false;
         $form_html['max_price_rental'] = pls_h('select', array('name' => 'metadata[max_price]') + $form_opt_attr['max_price'], pls_h_options($form_options['max_price_rental'], $selected_max_price));
     }
     /** Add the minimum price select element. */
     if ($min_price_sales == 1) {
         $selected_min_price = isset($_POST['metadata']['min_price']) ? wp_kses_post($_POST['metadata']['min_price']) : false;
         $form_html['min_price_sales'] = pls_h('select', array('name' => 'metadata[min_price]') + $form_opt_attr['min_price'], pls_h_options($form_options['min_price_sales'], $selected_min_price));
     }
     /** Add the maximum price select element. */
     if ($max_price_sales == 1) {
         $selected_max_price = isset($_POST['metadata']['max_price']) ? wp_kses_post($_POST['metadata']['max_price']) : false;
         $form_html['max_price_sales'] = pls_h('select', array('name' => 'metadata[max_price]') + $form_opt_attr['max_price'], pls_h_options($form_options['max_price_sales'], $selected_max_price));
     }
     $section_title = array('bedrooms' => 'Beds', 'min_beds' => 'Min Beds', 'max_beds' => 'Max Beds', 'bathrooms' => 'Baths', 'min_baths' => 'Min Baths', 'max_baths' => 'Max Baths', 'half_baths' => 'Half Baths', 'property_type' => 'Property Type', 'zoning_types' => 'Zoning Type', 'listing_types' => 'Listing Type', 'purchase_types' => 'Purchase Type', 'available_on' => 'Available', 'cities' => 'Near', 'states' => 'State', 'zips' => 'Zip Code', 'min_price' => 'Min Price', 'max_price' => 'Max Price', 'neighborhood' => 'Neighborhood', 'county' => 'County', 'min_beds' => 'Min Beds', 'max_beds' => 'Max Beds', 'min_price_rental' => 'Min Price Rental', 'max_price_rental' => 'Max Price Rental', 'min_price_sales' => 'Min Price Sales', 'max_price_sales' => 'Max Price Sales', 'neighborhood_polygons' => 'Neighborhood Polygon', 'min_sqft' => 'Min Sqft', 'max_sqft' => 'Max Sqft');
     // In case user somehow disables all filters.
     if (empty($form_html)) {
         return '';
     }
     /** Apply filters on all the form elements html. */
     $form_html_keys = array_keys($form_html);
     $form_html_count = count($form_html_keys);
     // foreach( $form_html as $option_name => &$opt_html ) {
     for ($i = 0; $i < $form_html_count; $i++) {
         $option_name = $form_html_keys[$i];
         $opt_html = $form_html[$option_name];
         $opt_html = apply_filters(pls_get_merged_strings(array("pls_listings_search_form_{$option_name}_html", $context), '_', 'pre', false), $opt_html, $form_options[$option_name], $section_title[$option_name], $context_var);
         $form_html[$option_name] = $opt_html;
     }
     /** Combine the form elements. */
     $form = '';
     foreach ($form_html as $label => $select) {
         $form .= pls_h('section', array('class' => $label . ' pls_search_form'), pls_h_label($section_title[$label], $label) . $select);
     }
     /** Add the filtered submit button. */
     if ($include_submit) {
         $form_html['submit'] = apply_filters(pls_get_merged_strings(array("pls_listings_search_submit", $context), '_', 'pre', false), pls_h('input', array('class' => 'pls_search_button', 'type' => 'submit', 'value' => 'Search')), $context_var);
         /** Append the form submit. */
         $form .= $form_html['submit'];
     }
     /** Wrap the combined form content in the form element and filter it. */
     $form_id = pls_get_merged_strings(array('pls-listings-search-form', $context), '-', 'pre', false);
     $form = pls_h('form', array('action' => @$form_data->action, 'method' => 'post', 'id' => $form_id, 'class' => $class), @$form_data->hidden_field . apply_filters(pls_get_merged_strings(array("pls_listings_search_form_inner", $context), '_', 'pre', false), $form, $form_html, $form_options, $section_title, $context_var));
     /** Filter the form. */
     $result = apply_filters(pls_get_merged_strings(array("pls_listings_search_form_outer", $context), '_', 'pre', false), $form, $form_html, $form_options, $section_title, @$form_data, $form_id, $context_var);
     // Load the filters.js script...
     $result .= '<script type="text/javascript" src="' . trailingslashit(PLS_JS_URL) . 'scripts/filters.js"></script>';
     $cache->save($result);
     return $result;
 }
Exemplo n.º 14
0
function custom_side_agent_widget_html($post_item, $post_html)
{
    //pls_dump($post_html);
    $agent = PLS_Plugin_API::get_user_details();
    ob_start();
    ?>

	<section class="agent">
		<?php 
    if (pls_get_option('pls-user-image')) {
        ?>
			<img src="<?php 
        echo pls_get_option('pls-user-image');
        ?>
" alt="<?php 
        _e('agent photo', 'tampa');
        ?>
" height=120>
		<?php 
    } else {
        if (isset($agent['user']['headshot']) && $agent['user']['headshot']) {
            ?>
			<img src="<?php 
            echo $agent['user']['headshot'];
            ?>
" alt="<?php 
            _e('agent photo', 'tampa');
            ?>
" height=120>
		<?php 
        }
    }
    ?>

		<?php 
    if (pls_get_option('pls-user-name')) {
        ?>
			<h4><?php 
        echo pls_get_option('pls-user-name');
        ?>
</h4>
		<?php 
    } else {
        ?>
			<h4><?php 
        echo $agent['user']['first_name'] . ' ' . $agent['user']['last_name'];
        ?>
</h4>
		<?php 
    }
    ?>

		<?php 
    if (pls_get_option('pls-user-phone')) {
        ?>
			<span><?php 
        echo pls_get_option('pls-user-phone');
        ?>
</span>
		<?php 
    } else {
        ?>
			<span><?php 
        echo $agent['user']['phone'];
        ?>
</span
		<?php 
    }
    ?>

		<?php 
    if (pls_get_option('pls-user-email')) {
        ?>
			<span><a href="mailto:<?php 
        echo pls_get_option('pls-user-email');
        ?>
"><?php 
        echo pls_get_option('pls-user-email');
        ?>
</a></span>
		<?php 
    } else {
        ?>
			<span><a href="mailto:<?php 
        echo $agent['user']['email'];
        ?>
"><?php 
        echo $agent['user']['email'];
        ?>
</a></span>
		<?php 
    }
    ?>

		<?php 
    if (pls_get_option('pls-user-description')) {
        ?>
			<p><?php 
        echo pls_get_option('pls-user-description');
        ?>
</p>
		<?php 
    }
    ?>

	</section>

<?php 
    return trim(ob_get_clean());
}
Exemplo n.º 15
0
function tampa_custom_home_listing_list($listing_html, $listing_data)
{
    // pls_dump($listing_data);
    ob_start();
    ?>
		<section class="list-unit">

			<section class="lu-left">
				<?php 
    if (isset($listing_data['images']) && is_array($listing_data['images'])) {
        ?>
		      	<?php 
        echo PLS_Image::load($listing_data['images'][0]['url'], array('resize' => array('w' => 144, 'h' => 93, 'method' => 'crop'), 'fancybox' => true));
        ?>
					<?php 
    } else {
        ?>
					<?php 
        echo PLS_Image::load('', array('resize' => array('w' => 144, 'h' => 93, 'method' => 'crop'), 'fancybox' => true));
        ?>
		     <?php 
    }
    ?>

     		<?php 
    if (isset($listing_data['rets']['mls_id']) && $listing_data['rets']['mls_id']) {
        ?>
       		<p class="mls"><span>MLS #:</span> <?php 
        echo $listing_data['rets']['mls_id'];
        ?>
</p>
       		<?php 
    }
    ?>

			</section>	

			<section class="lu-right">
				<div class="lu-address">
					<h4><a href="<?php 
    echo $listing_data['cur_data']['url'];
    ?>
"><?php 
    echo $listing_data['location']['address'];
    ?>
</a></h4>
					<p class="area"><?php 
    echo $listing_data['location']['locality'];
    ?>
, <?php 
    echo $listing_data['location']['region'];
    ?>
</p>
				</div><!--lu-address-->

				<div class="lu-price">
					<p class="price"><strong><?php 
    echo PLS_Format::number($listing_data['cur_data']['price'], array('abbreviate' => false, 'add_currency_sign' => true));
    ?>
</strong><?php 
    if ($listing_data['cur_data']['lse_trms'] != null) {
        echo $listing_data['cur_data']['lse_trms'];
    }
    ?>
</p>
					<p class="rent-label"><?php 
    if (isset($listing_data['purchase_types'][0])) {
        echo ucwords($listing_data['purchase_types'][0]);
    }
    ?>
</p>
				</div><!--lu-price-->

				<div class="lu-main">
				<?php 
    if (isset($listing_data['cur_data']['desc'])) {
        echo '<p>';
        if (strlen($listing_data['cur_data']['desc']) < 200) {
            echo $listing_data['cur_data']['desc'];
        } else {
            $position = strrpos(substr($listing_data['cur_data']['desc'], 0, 200), ' ');
            echo substr($listing_data['cur_data']['desc'], 0, $position) . '...';
        }
        echo '</p>';
    }
    ?>
					<p class="info"><span><?php 
    echo $listing_data['cur_data']['beds'];
    ?>
</span> Bedrooms | <span><?php 
    echo $listing_data['cur_data']['baths'];
    ?>
</span> Bathrooms 
						<?php 
    if ($listing_data['cur_data']['sqft'] != null) {
        echo '| <span>' . PLS_Format::number($listing_data['cur_data']['sqft'], array('abbreviate' => false, 'add_currency_sign' => false)) . '</span> sqft';
    }
    ?>
</p>
					<!-- <a class="fav" href="#">Add to Favorites</a> -->					
				<?php 
    $api_whoami = PLS_Plugin_API::get_user_details();
    ?>

				<?php 
    if (pls_get_option('pls-user-email')) {
        ?>
					<a class="info-bt" href="mailto:<?php 
        echo pls_get_option('pls-user-email');
        ?>
" target="_blank"><?php 
        _e('Request Information', 'tampa');
        ?>
</a>
				<?php 
    } else {
        ?>
					<a class="info-bt" href="mailto:<?php 
        echo $api_whoami['user']['email'];
        ?>
" target="_blank"><?php 
        _e('Request Information', 'tampa');
        ?>
</a>
				<?php 
    }
    ?>
					<a class="see-details-link details-bt" href="<?php 
    echo $listing_data['cur_data']['url'];
    ?>
"><?php 
    _e('See Details', 'tampa');
    ?>
</a>
				</div><!--lu-main-->
			</section><!--lu-right-->
    <?php 
    PLS_Listing_Helper::get_compliance(array('context' => 'inline_search', 'agent_name' => $listing_data['rets']['aname'], 'office_name' => $listing_data['rets']['oname'], 'office_phone' => PLS_Format::phone($listing_data['contact']['phone']), 'agent_license' => isset($listing_data['rets']['alicense']) ? $listing_data['rets']['alicense'] : false, 'co_agent_name' => isset($listing_data['rets']['aconame']) ? $listing_data['rets']['aconame'] : false, 'co_office_name' => isset($listing_data['rets']['oconame']) ? $listing_data['rets']['oconame'] : false));
    ?>
			<div class="clr"></div>

		</section><!--list-unit-->
     <?php 
    $listing_html = ob_get_clean();
    return $listing_html;
}
Exemplo n.º 16
0
    public function widget($args, $instance)
    {
        // Widget output
        extract($args);
        $title = empty($instance['title']) ? ' ' : apply_filters('title', $instance['title']);
        $facebook_id = empty($instance['facebook_id']) ? ' ' : apply_filters('facebook_id', $instance['facebook_id']);
        $count = empty($instance['count']) ? ' ' : apply_filters('count', $instance['count']);
        if (!empty($facebook_id)) {
            $page_id = $facebook_id;
        } else {
            $page_id = @pls_get_option('pls-facebook-id');
        }
        $limit = $count;
        // get Facebook Feed
        $feed = get_facebook_feed($page_id, $limit, $post_types = array());
        $widget_body = '';
        foreach ($feed['posts']['data'] as $post) {
            $fb_post = build_fb_post_html($post);
            ob_start();
            ?>
		<article class="fb_post <?php 
            echo $fb_post['type'];
            ?>
">
			
			<p class="fb_post_message"><?php 
            echo $fb_post['message'];
            ?>
</p>
			
			<?php 
            if (!empty($fb_post['media'])) {
                ?>
			<div class="fb_post_media">

				<!-- Media -->
				<?php 
                echo $fb_post['media'];
                ?>
				
				<div class="fb_media_caption_wrapper">

				<?php 
                if (!empty($fb_post['title_caption'])) {
                    ?>
					<!-- Caption Title -->
					<p class="fb_media_title_caption"><a href="<?php 
                    echo $fb_post['link'];
                    ?>
"><?php 
                    echo $fb_post['title_caption'];
                    ?>
</a></p>
				<?php 
                }
                ?>

				<?php 
                if (!empty($fb_post['description'])) {
                    ?>
					<!-- description -->
					<p class="fb_media_caption"><?php 
                    echo $fb_post['description'];
                    ?>
</p>
				<?php 
                }
                ?>
				</div>

			</div>

			<?php 
            }
            ?>

			<p class="fb_post_date"><span class="fb_month"><?php 
            echo $fb_post['month'];
            ?>
</span> <span class="fb_day"><?php 
            echo $fb_post['day'];
            ?>
</span>, <span class="fb_year"><?php 
            echo $fb_post['year'];
            ?>
</span></p>
		
		</article>
		<?php 
            $post_item = ob_get_clean();
            if (!isset($widget_id)) {
                $widget_id = 1;
            }
            /** Wrap the post in an article element and filter its contents. */
            $post_item = apply_filters('pls_widget_facebook_post_inner', $post_item, $fb_post, $instance, $widget_id);
            /** Append the filtered post to the post list. */
            $widget_body .= apply_filters('pls_widget_facebook_post_outer', $post_item, $fb_post, $instance, $widget_id);
        }
        /** Define the default argument array. */
        $defaults = array('before_widget' => '<section class="facebook-widget widget">', 'after_widget' => '</section>', 'title' => '', 'before_title' => '<h3 class="widget-title">', 'after_title' => '</h3>');
        /** Merge the arguments with the defaults. */
        $args = wp_parse_args($args, $defaults);
        extract($args, EXTR_SKIP);
        ?>

		<?php 
        echo $before_widget;
        ?>

		<?php 
        echo $before_title . $title . $after_title;
        ?>

		<style type="text/css" media="screen">
			.fb-play-icon {
			background: url(http://static.ak.fbcdn.net/rsrc.php/v2/yJ/x/Gj2ad6O09TZ.png) no-repeat 0 0;
			height: 26px;
			width: 35px;
			top: 50%;
			left: 50%;
			margin: -13px 0 0 -17px;
			position: absolute;
			}
		</style>

		<section class="facebook-sidebar-widget">
			<?php 
        echo $widget_body;
        ?>
		</section>

		<?php 
        echo $after_widget;
        ?>

	<?php 
    }
Exemplo n.º 17
0
    public function widget($args, $instance)
    {
        // Widget output
        extract($args);
        $title = empty($instance['title']) ? ' ' : apply_filters('title', $instance['title']);
        $fb_page_url = empty($instance['fb_page_url']) ? ' ' : apply_filters('fb_page_url', $instance['fb_page_url']);
        $width = empty($instance['width']) ? ' ' : apply_filters('width', $instance['width']);
        $height = empty($instance['height']) ? ' ' : apply_filters('height', $instance['height']);
        $faces = isset($instance['faces']) && $instance['faces'] == "false" ? false : true;
        $stream = isset($instance['stream']) && $instance['stream'] == "false" ? false : true;
        $border = isset($instance['border']) && $instance['border'] == "false" ? false : true;
        $header = isset($instance['header']) && $instance['header'] == "false" ? false : true;
        if (!empty($fb_page_url)) {
            $page_id = $fb_page_url;
        } else {
            $page_id = @pls_get_option('pls-facebook-page-url');
        }
        /** Define the default argument array. */
        $defaults = array('before_widget' => '<section class="facebook-like-box-widget widget">', 'after_widget' => '</section>', 'title' => '', 'before_title' => '<h3 class="widget-title">', 'after_title' => '</h3>');
        /** Merge the arguments with the defaults. */
        $args = wp_parse_args($args, $defaults);
        extract($args, EXTR_SKIP);
        // header: true
        // show_border: true
        // show_faces: true
        // colorscheme: light
        ?>

      <?php 
        echo $before_widget;
        ?>

        <?php 
        echo $before_title . $title . $after_title;
        ?>

        <section class="facebook-like-box-sidebar-widget">
          <iframe src="//www.facebook.com/plugins/likebox.php?href=<?php 
        echo $fb_page_url;
        ?>
&amp;width=<?php 
        echo $width;
        ?>
&amp;height=<?php 
        echo $height;
        ?>
&amp;show_faces=true&amp;colorscheme=light&amp;stream=false&amp;show_border=true&amp;header=true&amp;appId=263914027073402" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:<?php 
        echo $width;
        ?>
px; height:<?php 
        echo $height;
        ?>
px;" allowTransparency="true"></iframe>
        </section>

      <?php 
        echo $after_widget;
        ?>

    <?php 
    }
Exemplo n.º 18
0
    public static function get($args = array())
    {
        // Store this for use in the final output/response...
        $sEcho = isset($_POST['sEcho']) ? $_POST['sEcho'] : 0;
        unset($_POST['sEcho']);
        $context_orig = isset($_POST['context']) ? $_POST['context'] : '';
        unset($_POST['context']);
        // If length is not set for number of listings to return, set it to our Theme Options default
        $_POST['limit'] = isset($_POST['iDisplayLength']) ? $_POST['iDisplayLength'] : pls_get_option('listings_default_list_length');
        unset($_POST['iDisplayLength']);
        $_POST['offset'] = isset($_POST['iDisplayStart']) ? $_POST['iDisplayStart'] : 0;
        unset($_POST['iDisplayStart']);
        $saved_search_lookup = isset($_POST['saved_search_lookup']) ? $_POST['saved_search_lookup'] : null;
        unset($_POST['saved_search_lookup']);
        // Remove this so it doesn't accidentally end up as a superfluous argument of an API call...
        unset($_POST['action']);
        // Handle location edge-case...
        if (!empty($_POST['location']) && !empty($_POST['location']['address']) && empty($_POST['location']['address_match'])) {
            $_POST['location']['address_match'] = 'like';
        }
        // Handle saved search...
        if (!is_null($saved_search_lookup)) {
            // Attempt to retrieve search filters associated with the given saved search lookup ID...
            // NOTE: If no filters exist for the passed ID,
            $filters = PLS_Plugin_API::get_saved_search_filters($saved_search_lookup);
            if (empty($filters) || !is_array($filters)) {
                PLS_Plugin_API::save_search($saved_search_lookup, $_POST);
            } else {
                // For backwards compatibility, handle older fields that are no longer stored as saved search filters...
                $old_field_map = array('sEcho' => false, 'context' => false, 'iDisplayLength' => 'limit', 'iDisplayStart' => 'offset', 'saved_search_lookup' => false, 'action' => false);
                foreach ($old_field_map as $old => $new) {
                    if (isset($filters[$old])) {
                        if ($new !== false) {
                            $filters[$new] = $filters[$old];
                        }
                        unset($filters[$old]);
                    }
                }
                // Swap all existing POST filters for the ones associated with the retrieved saved search...
                $_POST = $filters;
            }
        }
        // Define the default argument array
        $defaults = array('loading_img' => admin_url('images/wpspin_light.gif'), 'image_width' => 100, 'crop_description' => 0, 'sort_type' => pls_get_option('listings_default_sort_type'), 'listings_per_page' => pls_get_option('listings_default_list_length'), 'context' => $context_orig, 'context_var' => NULL, 'append_to_map' => true, 'search_query' => $_POST, 'property_ids' => isset($_POST['property_ids']) ? $_POST['property_ids'] : '', 'allow_id_empty' => false);
        // Resolve function args with default ones (which include any existing POST fields)...
        $merged_args = wp_parse_args($args, $defaults);
        $cache = new PLS_Cache('list');
        if ($cached_response = $cache->get($merged_args)) {
            // This field must match the one passed in with this request...
            $cached_response['sEcho'] = $sEcho;
            echo json_encode($cached_response);
            die;
        }
        // Extract the arguments after they merged with the defaults
        extract($merged_args, EXTR_SKIP);
        // Start off with a placeholder in case the plugin is not active or there is no API key...
        $api_response = PLS_Listing_Helper::$default_listing;
        // If plugin is active, grab listings intelligently...
        if (!pls_has_plugin_error()) {
            // Get the listings list markup and JS
            if (!empty($property_ids) || $allow_id_empty) {
                // Sometimes property_ids are passed in as a flat screen from the JS post object
                if (is_string($property_ids)) {
                    $property_ids = explode(',', $property_ids);
                }
                $api_response = PLS_Plugin_API::get_listing_details(array('property_ids' => $property_ids, 'limit' => $_POST['limit'], 'offset' => $_POST['offset']));
            } elseif (isset($search_query['neighborhood_polygons']) && !empty($search_query['neighborhood_polygons'])) {
                $api_response = PLS_Plugin_API::get_polygon_listings($search_query);
            } else {
                $api_response = PLS_Plugin_API::get_listings($search_query);
            }
        }
        $response = array();
        // Build response for datatables.js
        $listings = array();
        $listings_cache = new PLS_Cache('Listing Thumbnail');
        foreach ($api_response['listings'] as $key => $listing) {
            // Check for cached listing thumbnail...
            $cache_id = array('context' => $context, 'listing_id' => $listing['id']);
            if (!($item_html = $listings_cache->get($cache_id))) {
                // Handle case of zero listing images...
                if (empty($listing['images'])) {
                    $listing['images'][0]['url'] = '';
                }
                ob_start();
                ?>
                    <div class="listing-item grid_8 alpha" itemscope itemtype="http://schema.org/Offer" data-listing="<?php 
                echo $listing['id'];
                ?>
">
                        <div class="listing-thumbnail grid_3 alpha">
                            <?php 
                $property_images = is_array($listing['images']) ? $listing['images'] : array();
                usort($property_images, array(__CLASS__, 'order_images'));
                ?>
                              
                             <a href="<?php 
                echo @$listing['cur_data']['url'];
                ?>
" itemprop="url">
                                <?php 
                echo PLS_Image::load($property_images[0]['url'], array('resize' => array('w' => 210, 'h' => 140), 'fancybox' => true, 'as_html' => true, 'html' => array('alt' => $listing['location']['full_address'], 'itemprop' => 'image', 'placeholder' => PLS_IMG_URL . "/null/listing-300x180.jpg")));
                ?>
                            </a>
                        </div>

                        <div class="listing-item-details grid_5 omega">
                            <header>
                                <p class="listing-item-address h4" itemprop="name">
                                    <a href="<?php 
                echo PLS_Plugin_API::get_property_url($listing['id']);
                ?>
" rel="bookmark" title="<?php 
                echo $listing['location']['address'];
                ?>
" itemprop="url">
                                        <?php 
                echo $listing['location']['address'] . ', ' . $listing['location']['locality'] . ' ' . $listing['location']['region'] . ' ' . $listing['location']['postal'];
                ?>
                                    </a>
                                </p>
                            </header>

                            <div class="basic-details">
                                <ul>
                                  	<?php 
                if (!empty($listing['cur_data']['beds'])) {
                    ?>
                                  		<li class="basic-details-beds p1"><span>Beds:</span> <?php 
                    echo @$listing['cur_data']['beds'];
                    ?>
</li>
                                  	<?php 
                }
                ?>

                                  	<?php 
                if (!empty($listing['cur_data']['baths'])) {
                    ?>
                                  		<li class="basic-details-baths p1"><span>Baths:</span> <?php 
                    echo @$listing['cur_data']['baths'];
                    ?>
</li>
                                  	<?php 
                }
                ?>

                                  	<?php 
                if (!empty($listing['cur_data']['half_baths'])) {
                    ?>
                                  		<li class="basic-details-half-baths p1"><span>Half Baths:</span> <?php 
                    echo @$listing['cur_data']['half_baths'];
                    ?>
</li>
                                  	<?php 
                }
                ?>

                                  	<?php 
                if (!empty($listing['cur_data']['price'])) {
                    ?>
                                  		<li class="basic-details-price p1" itemprop="price"><span>Price:</span> <?php 
                    echo PLS_Format::number($listing['cur_data']['price'], array('abbreviate' => false, 'add_currency_sign' => true));
                    ?>
</li>
                                  	<?php 
                }
                ?>

                                  	<?php 
                if (!empty($listing['cur_data']['sqft'])) {
                    ?>
                                  		<li class="basic-details-sqft p1"><span>Sqft:</span> <?php 
                    echo PLS_Format::number($listing['cur_data']['sqft'], array('abbreviate' => false, 'add_currency_sign' => false));
                    ?>
</li>
                                  	<?php 
                }
                ?>

                                    <?php 
                if (!empty($listing['rets']['mls_id'])) {
                    ?>
                                        <li class="basic-details-mls p1"><span>MLS ID:</span> <?php 
                    echo @$listing['rets']['mls_id'];
                    ?>
</li>
                                    <?php 
                }
                ?>
                                </ul>
                            </div>

                            <p class="listing-description p4" itemprop="description">
                                <?php 
                echo substr($listing['cur_data']['desc'], 0, 300);
                ?>
                            </p>

                        </div>

                        <div class="actions">
                            <a class="more-link" href="<?php 
                echo PLS_Plugin_API::get_property_url($listing['id']);
                ?>
" itemprop="url">View Property Details</a>
                            <?php 
                echo PLS_Plugin_API::placester_favorite_link_toggle(array('property_id' => $listing['id']));
                ?>
                        </div>

                        <?php 
                PLS_Listing_Helper::get_compliance(array('context' => 'inline_search', 'agent_name' => @$listing['rets']['aname'], 'office_name' => @$listing['rets']['oname']));
                ?>
                    </div>
                <?php 
                $item_html = ob_get_clean();
                $item_html = apply_filters(pls_get_merged_strings(array("pls_listings_list_ajax_item_html", $context), '_', 'pre', false), htmlspecialchars_decode($item_html), $listing, $context_var);
                $listings_cache->save($item_html);
            }
            $listings[$key][] = $item_html;
            $listings[$key][] = $listing;
        }
        // Required for datatables.js to function properly...
        $response['sFirst'] = 'Previous';
        $response['sPrevious'] = 'Next';
        $response['sEcho'] = $sEcho;
        $response['aaData'] = $listings;
        $api_total = isset($api_response['total']) ? $api_response['total'] : 0;
        $response['iTotalRecords'] = $api_total;
        $response['iTotalDisplayRecords'] = $api_total;
        $cache->save($response);
        ob_start("ob_gzhandler");
        echo json_encode($response);
        // Wordpress echos out a "0" randomly -- die prevents this...
        die;
    }
Exemplo n.º 19
0
 /**
  * Slideshow
  * 
  * @param string $args 
  * @param mixed $data 
  * @static
  * @access public
  * @return void
  */
 public static function slideshow($args = '')
 {
     /** Define the default argument array */
     $defaults = array('animation' => 'fade', 'animationSpeed' => 800, 'timer' => true, 'advanceSpeed' => 4000, 'pauseOnHover' => true, 'startClockOnMouseOut' => true, 'startClockOnMouseOutAfter' => 500, 'directionalNav' => true, 'captions' => true, 'captionAnimation' => 'fade', 'captionAnimationSpeed' => 800, 'afterSlideChange' => 'function(){}', 'bullets' => 'false', 'width' => 620, 'height' => 300, 'container_height' => false, 'context' => '', 'context_var' => false, 'featured_option_id' => false, 'allow_user_slides' => false, 'user_slides_header_id' => false, 'listings' => 'limit=5&sort_by=price', 'data' => false, 'post_id' => false, 'post_meta_key' => false, 'fluid' => false);
     $args = wp_parse_args($args, $defaults);
     /** Check cache, return something is there **/
     $cache = new PLS_Cache('slide');
     if ($result = $cache->get($args)) {
         return $result;
     }
     /** Extract all args for easy usage **/
     extract($args, EXTR_SKIP);
     /** If the slideshow data is null or not an array AND the plugin is working, try to fetch the proper data... **/
     if ((!$data || !is_array($data)) && !pls_has_plugin_error()) {
         /** Data assumed to take this form. */
         $data = array('images' => array(), 'links' => array(), 'captions' => array());
         // If the calling theme allows user input, get slideshow config option...
         if ($allow_user_slides && $user_slides_header_id) {
             $slides = pls_get_option($user_slides_header_id, array());
             // Check to see if slides are set to custom, but are empty
             $custom_but_empty = isset($slides[0]) && $slides[0]['type'] == 'custom' && empty($slides[0]['image']);
             // Populate slides when '$custom_but_empty' is true OR when no slides exist...
             if ($custom_but_empty || empty($slides)) {
                 $slides = self::empty_slides_and_add_random_listings();
             }
             foreach ($slides as $index => $slide) {
                 switch ($slide['type']) {
                     case 'listing':
                         unset($slide['html'], $slide['image'], $slide['type'], $slide['link']);
                         // In this case, the slide's remaining key will correspond to it's property ID...
                         $property_id = key($slide);
                         $api_response = PLS_Plugin_API::get_listing_details(array('property_ids' => array($property_id)));
                         if (!empty($api_response['listings']) && $api_response['listings'][0]['id'] === false) {
                             self::$listings_to_delete[] = $property_id;
                         }
                         if ($api_response['total'] == '1') {
                             $listing = $api_response['listings'][0];
                             $first_valid_img_url = null;
                             // Overwrite the placester url with the local url...
                             $listing_url = PLS_Plugin_API::get_property_url($listing['id']);
                             $data['links'][] = $listing_url;
                             // Try to retrieve the image url if order is set...
                             if (is_array($listing['images']) && isset($listing['images'][0]['order'])) {
                                 foreach ($listing['images'] as $key => $image) {
                                     if ($image['order'] == 1) {
                                         $data['images'][$index] = $image['url'];
                                         // break, just in case the listing has more than one '1' in the 'order' param
                                         break;
                                     }
                                     // Record the first valid image URL in case no image has the top order...
                                     if (!isset($first_valid_img_url) && isset($image['url'])) {
                                         $first_valid_img_url = $image['url'];
                                     }
                                 }
                             }
                             // If image still isn't set, use first valid image URL discovered above, or just set to default...
                             if (empty($data['images'][$index])) {
                                 $data['images'][$index] = isset($first_valid_img_url) ? $first_valid_img_url : self::$default_img_url;
                             }
                             $data['type'][] = 'listing';
                             $data['listing'][] = $listing;
                             /** Get the listing caption **/
                             $data['captions'][] = trim(self::render_listing_caption($listing, $index));
                         }
                         break;
                     case 'custom':
                         $is_empty = empty($slide['image']) && empty($slide['link']) && empty($slide['image']) && empty($slide['html']);
                         // Only include a custom slide if it's not entirely empty...
                         if (!$is_empty) {
                             $data['images'][] = $slide['image'];
                             $data['links'][] = $slide['link'];
                             $data['type'][] = 'custom';
                             $data['captions'][] = trim(self::render_custom_caption($slide['html'], $index));
                         }
                         break;
                 }
             }
         } else {
             if (!empty($args['post_id']) && !empty($args['post_meta_key'])) {
                 $api_response = PLS_Listing_Helper::get_featured_from_post($args['post_id'], $args['post_meta_key']);
             } elseif ($featured_option_id) {
                 $api_response = PLS_Listing_Helper::get_featured($featured_option_id);
             }
             if (empty($api_response['listings'])) {
                 $api_response = PLS_Plugin_API::get_listings($listings);
             }
             foreach ($api_response['listings'] as $index => $listing) {
                 if (empty($listing['id'])) {
                     continue;
                 }
                 $listing_url = PLS_Plugin_API::get_property_url($listing['id']);
                 /** Overwrite the placester url with the local url. */
                 $data['links'][] = $listing_url;
                 $data['images'][] = !empty($listing['images']) ? $listing['images'][0]['url'] : self::$default_img_url;
                 $data['listing'][] = $listing;
                 // Get the listing caption
                 $listing_caption = trim(self::render_listing_caption($listing, $index));
                 // Add a filter for a single caption, to be edited via a template
                 $single_caption = apply_filters(pls_get_merged_strings(array('pls_slideshow_single_caption', $context), '_', 'pre', false), $listing_caption, $listing, $context, $context_var, $index);
                 $data['captions'][] = $single_caption;
             }
         }
     }
     /** Filter the data array */
     $data = apply_filters(pls_get_merged_strings(array('pls_slideshow_data', $context), '_', 'pre', false), $data, $context, $context_var);
     /** Create the slideshow */
     $html = array('slides' => '', 'captions' => '');
     if (is_array($data['images'])) {
         foreach ($data['images'] as $index => $slide_src) {
             $extra_attr = array();
             $extra_attr['title'] = '';
             /** Save the caption and the title attribute for the img. */
             if (isset($data['captions'][$index])) {
                 $html['captions'] .= $data['captions'][$index];
                 $extra_attr['title'] = "#caption-{$index}";
             }
             if (isset($data['type'][$index])) {
                 // Get image, but only Dragonfly listing images
                 switch ($data['type'][$index]) {
                     case "listing":
                         $slide_src = PLS_Image::load($slide_src, array('resize' => array('w' => $width, 'h' => $height), 'fancybox' => false, 'as_html' => false));
                         break;
                     case "custom":
                         $slide_src = PLS_Image::load($slide_src, array('allow_resize' => false, 'fancybox' => false, 'as_html' => false));
                         break;
                 }
             }
             /** Create the img element. */
             $slide = pls_h_img($slide_src, false, $extra_attr);
             /** Wrap it in an achor if the anchor exists. */
             if (isset($data['links'][$index])) {
                 $slide = pls_h_a($data['links'][$index], $slide, array('data-caption' => "#caption-{$index}"));
             }
             $html['slides'] .= $slide;
         }
     }
     /** Combine the HTML **/
     $html = pls_h_div($html['slides'], array('id' => 'slider', 'class' => 'orbitSlider')) . $html['captions'];
     /** Filter the HTML array */
     $html = apply_filters(pls_get_merged_strings(array('pls_slideshow_html', $context), '_', 'pre', false), $html, $data, $context, $context_var, $args);
     if (!$container_height) {
         $container_height = $height;
     }
     /** Render the necessary inline CSS... */
     $css_args = array('width' => $width, 'height' => $height, 'container_height' => $container_height);
     $css = self::render_inline_css($css_args);
     /** Render the necessary inline JS... **/
     $args['data'] = is_string($data) ? $data : '';
     // For compatibility...
     $js = self::render_inline_js($args);
     /** Filter inline JS **/
     $js = apply_filters(pls_get_merged_strings(array('pls_slideshow_js', $context), '_', 'pre', false), $js, $html, $data, $context, $context_var);
     /** Filter the final output **/
     $full_slideshow = apply_filters(pls_get_merged_strings(array('pls_slideshow', $context), '_', 'pre', false), $css . $html . $js, $html, $js, $data, $context, $context_var, $args);
     /** Cache rendered slideshow for future retrieval **/
     $cache->save($full_slideshow);
     return $full_slideshow;
 }
Exemplo n.º 20
0
											<h2 id="site-description" <?php 
        echo PLS_Micro_Data::itemprop('organization', 'description');
        ?>
 class="option-pls-site-subtitle"><?php 
        echo pls_get_option('pls-site-subtitle');
        ?>
</h2>
										<?php 
    }
    ?>
									<?php 
}
?>

									<?php 
if (!pls_get_option('pls-site-logo') && !pls_get_option('pls-site-title')) {
    ?>
										<h1 id="site-title" <?php 
    echo PLS_Micro_Data::itemprop('organization', 'name');
    ?>
>
                      <a href="<?php 
    echo esc_url(home_url('/'));
    ?>
" title="<?php 
    echo esc_attr(get_bloginfo('name', 'display'));
    ?>
" rel="home" <?php 
    echo PLS_Micro_Data::itemprop('organization', 'url');
    ?>
 class="option-pls-site-title"><?php 
Exemplo n.º 21
0
 private static function process_defaults($args)
 {
     // Process passed args against defaults...
     if (is_home()) {
         $title = pls_get_option('pls-company-name');
         $url = esc_html(home_url());
     } else {
         $title = isset($post->post_title) ? $post->post_title : pls_get_option('pls-company-name');
         $url = get_permalink();
     }
     $defaults = array('itemtype' => 'http://schema.org/LocalBusiness', 'title' => $title, 'image' => pls_get_option('pls-site-logo'), 'description' => pls_get_option('pls-company-description'), 'address' => pls_get_option('pls-company-street') . " " . pls_get_option('pls-company-locality') . ", " . pls_get_option('pls-company-region'), 'author' => pls_get_option('pls-user-name'), 'url' => $url, 'email' => pls_get_option('pls-user-email'));
     return wp_parse_args($args, $defaults);
 }
Exemplo n.º 22
0
function custom_listings_search_list($listing_item_html, $listing, $context_var)
{
    // return $listing_item_html;
    /** Start output buffering. The buffered html will be returned to the filter. */
    ob_start();
    // pls_dump($listing);
    ?>

	<section class="list-item">
		<section class="list-pic">
			<div class="thumbs">
				<?php 
    if (is_array($listing['images'])) {
        ?>
					<?php 
        echo PLS_Image::load($listing['images'][0]['url'], array('resize' => array('w' => 144, 'h' => 93, 'method' => 'crop'), 'fancybox' => true, 'as_html' => true));
        ?>
    	
				<?php 
    } else {
        ?>
					<?php 
        echo PLS_Image::load('', array('resize' => array('w' => 144, 'h' => 93, 'method' => 'crop'), 'fancybox' => true, 'as_html' => true));
        ?>
    	
				<?php 
    }
    ?>
			</div>

			<?php 
    if (isset($listing['rets']['mls_id'])) {
        ?>
    		<p class="nrm-txt"><?php 
        _e('MLS', 'manchester');
        ?>
 #: <?php 
        echo $listing['rets']['mls_id'];
        ?>
</p>
    	<?php 
    }
    ?>

		</section>

		<section class="list-txt">                               
			<section class="list-info">
				<h5><a href="<?php 
    echo $listing['cur_data']['url'];
    ?>
"><?php 
    echo $listing['location']['address'];
    ?>
</a></h5>
				<h6><?php 
    echo $listing['location']['locality'] . ', ' . $listing['location']['region'];
    ?>
</h6>
				<p class="nrm-txt"><?php 
    echo substr($listing['cur_data']['desc'], 0, 300);
    ?>
</p>
				<p class="nrm-txt">
					<b><?php 
    echo $listing['cur_data']['beds'];
    ?>
</b> <span class="beds-n-baths"><?php 
    _e('Beds', 'manchester');
    ?>
</span> |
					<b><?php 
    echo $listing['cur_data']['baths'];
    ?>
</b> <span class="beds-n-baths"><?php 
    _e('Baths', 'manchester');
    ?>
</span>
					<?php 
    if ($listing['cur_data']['sqft'] != null) {
        ?>
 
						| <b><?php 
        echo PLS_Format::number($listing['cur_data']['sqft'], array('abbreviate' => false, 'add_currency_sign' => false));
        ?>
</b><span class="beds-n-baths"> <?php 
        _e('sqft', 'manchester');
        ?>
</span>
					<?php 
    }
    ?>
				</p>
			</section>

			<section class="list-price">
				<span class="green"><b><?php 
    echo PLS_Format::number($listing['cur_data']['price'], array('abbreviate' => false, 'add_currency_sign' => true));
    ?>
</b><?php 
    if (isset($listing['cur_data']['lse_trms'])) {
        echo $listing['cur_data']['lse_trms'];
    }
    ?>
</span><br />
				<?php 
    if (!empty($listing['property_type'])) {
        ?>
					<span class="nrm-txt"><?php 
        echo ucwords($listing['property_type']);
        ?>
</span>
				<?php 
    }
    ?>
			</section>

			<section class="list-links">
				<!-- <section class="list-fav"><a href="#"><?php 
    _e('Add to favorites', 'manchester');
    ?>
</a></section> -->
				<section class="list-req"><a href="mailto:<?php 
    echo pls_get_option('pls-user-email');
    ?>
"><?php 
    _e('Request more info', 'manchester');
    ?>
</a></section>
				<section class="list-btn1">
					<div class="img_btn"><a href="<?php 
    echo $listing['cur_data']['url'];
    ?>
"><input type="submit" value="<?php 
    _e('See Details', 'manchester');
    ?>
" class="button b-blue medium" /></a></div>
				</section>
			</section>
	</section>
	<?php 
    PLS_Listing_Helper::get_compliance(array('context' => 'inline_search', 'agent_name' => $listing['rets']['aname'], 'office_name' => $listing['rets']['oname'], 'office_phone' => PLS_Format::phone($listing['contact']['phone']), 'agent_license' => isset($listing['rets']['alicense']) ? $listing['rets']['alicense'] : false, 'co_agent_name' => isset($listing['rets']['aconame']) ? $listing['rets']['aconame'] : false, 'co_office_name' => isset($listing['rets']['oconame']) ? $listing['rets']['oconame'] : false));
    ?>

	<div class="separator-1-sma"></div>

<?php 
    $html = ob_get_clean();
    // current js build throws a fit when newlines are present
    // will need to strip them.
    // added EMCA tag will solve in the future.
    $html = preg_replace('/[\\n\\r\\t]/', ' ', $html);
    return $html;
}
Exemplo n.º 23
0
function custom_property_details_page($html, $listing)
{
    ob_start();
    ?>

<section id="lvl2">
	<div class="wrapper">
		<div id="property">
			<h2><?php 
    _e('Property Details', 'manchester');
    ?>
</h2>
				<section class="property-inf">
					<div class="property-title">
						<span class="blue"><b><?php 
    echo $listing['location']['full_address'];
    ?>
</b></span>
						<p><span><?php 
    echo $listing['cur_data']['beds'];
    ?>
 <?php 
    _e('Bedrooms', 'manchester');
    ?>
</span> <span><?php 
    echo $listing['cur_data']['baths'];
    ?>
 <?php 
    _e('Bathrooms', 'manchester');
    ?>
</span></p>
					</div>
		<div class="property-price">
			<span class="green"><b><?php 
    echo PLS_Format::number($listing['cur_data']['price'], array('abbreviate' => false, 'add_currency_sign' => true));
    ?>
</b></span>
		</div>
</section>

<section class="property-bin">
	<div class="property-img">
		<div class="img_box">
			<?php 
    if ($listing['images']) {
        ?>
				<?php 
        echo PLS_Image::load($listing['images'][0]['url'], array('resize' => array('w' => 600, 'h' => 250, 'method' => 'crop'), 'fancybox' => false, 'as_html' => true, 'html' => array('img_classes' => 'main-banner')));
        ?>
  
			<?php 
    } else {
        ?>
				<?php 
        echo PLS_Image::load(null, array('resize' => array('w' => 600, 'h' => 250, 'method' => 'crop'), 'fancybox' => false, 'as_html' => true, 'html' => array('img_classes' => 'main-banner')));
        ?>
  
			<?php 
    }
    ?>
		</div>
	</div>
</section>

<!-- sidebar container section -->
<section class="property-map">
	<div class="property-gmap">
		<?php 
    echo PLS_Map::dynamic($listing, array('lat' => $listing['location']['coords'][0], 'lng' => $listing['location']['coords'][1], 'zoom' => '14', 'width' => 338, 'height' => 230, 'canvas_id' => 'map_canvas', 'class' => 'custom_google_map', 'map_js_var' => 'pls_google_map', 'ajax_form_class' => false));
    ?>
	</div>

	<script type="text/javascript">
      jQuery(document).ready(function( $ ) {
        var map = new Map();
        var listing = new Listings({
          single_listing: <?php 
    echo json_encode($listing);
    ?>
,
          map: map
        });
        map.init({
          type: 'single_listing', 
          listings: listing,
          lat : <?php 
    echo json_encode($listing['location']['coords'][0]);
    ?>
,
          lng : <?php 
    echo json_encode($listing['location']['coords'][1]);
    ?>
,
          zoom : 14
        });
        listing.init();
      });
	</script>

	<div class="property-lnks">
		<!-- <section class="list-fav"><a href="#"><?php 
    _e('Add to favorites', 'manchester');
    ?>
</a></section> -->
		<section class="list-req"><a href="<?php 
    echo pls_get_option('pls-user-email');
    ?>
"><?php 
    _e('Request more info', 'manchester');
    ?>
</a></section>
	</div>
</section>

		<!-- </div>
	</div> end of wrapper
</section> -->


<section id="lvl4">
	<div class="wrapper">
		
		<section class="left-content">

			<section class="list2">
				<h5><?php 
    _e('DETAILS', 'manchester');
    ?>
</h5>
				
				<section class="list-item">
					<section class="list-details">

						<section class="list-details-1-2">
							<label><?php 
    _e('Zoning Type', 'manchester');
    ?>
</label>
							<p><?php 
    echo ucwords($listing['zoning_types'][0]);
    ?>
</p>
							<?php 
    if (isset($listing['purchase_types'][0])) {
        ?>
							<label><?php 
        _e('Listing Type', 'manchester');
        ?>
</label>
							<p><?php 
        echo ucwords($listing['purchase_types'][0]);
        ?>
</p>
							<?php 
    }
    ?>
							<?php 
    if ($listing['property_type']) {
        ?>
								<label><?php 
        _e('Property Type', 'manchester');
        ?>
</label>
								<p><?php 
        echo PLS_Format::translate_property_type($listing);
        ?>
</p>
							<?php 
    }
    ?>

							<?php 
    if (isset($listing['rets']['mls_id'])) {
        ?>
								<label><?php 
        _e('MLS#', 'manchester');
        ?>
</label>
								<p><?php 
        echo $listing['rets']['mls_id'];
        ?>
</p>
							<?php 
    } else {
        ?>
								<label><?php 
        _e('Ref #', 'manchester');
        ?>
</label>
								<p><?php 
        echo $listing['id'];
        ?>
</p>
							<?php 
    }
    ?>

						</section>

						<section class="list-details-2-2">
							<label><?php 
    _e('Bedrooms', 'manchester');
    ?>
</label>
							<p><?php 
    echo $listing['cur_data']['beds'];
    ?>
</p>
							<label><?php 
    _e('Bathrooms', 'manchester');
    ?>
</label>
							<p><?php 
    echo $listing['cur_data']['baths'];
    ?>
</p>
							<label><?php 
    _e('Half Baths', 'manchester');
    ?>
</label>
							<p><?php 
    echo $listing['cur_data']['half_baths'];
    ?>
</p>
						</section>

					</section>
				</section>

				<div class="separator-1-sma"></div>

				<?php 
    if ($listing['cur_data']['desc']) {
        ?>
					<h5><?php 
        _e('DESCRIPTION', 'manchester');
        ?>
</h5>
					<section class="list-item">
						<section class="list-details"><?php 
        echo $listing['cur_data']['desc'];
        ?>
</section>
					</section>
				<?php 
    }
    ?>

				<div class="separator-1-sma"></div>

				<?php 
    $amenities = PLS_Format::amenities_but($listing, array('half_baths', 'beds', 'baths', 'url', 'sqft', 'avail_on', 'price', 'desc'));
    ?>

				<?php 
    if (isset($amenities['list']) && $amenities['list'] != null) {
        ?>
					<?php 
        $amenities['list'] = PLS_Format::translate_amenities($amenities['list']);
        ?>
					<h5><?php 
        _e('PROPERTY AMENITIES', 'manchester');
        ?>
</h5>
						<section class="list-item">
							<section class="list-amenity">
								<?php 
        foreach ($amenities['list'] as $amenity => $value) {
            ?>
									<label><span><?php 
            echo $amenity;
            ?>
</span> <?php 
            echo $value;
            ?>
</label>
								<?php 
        }
        ?>
							</section>
						</section>

						<div class="separator-1-sma"></div>
				<?php 
    }
    ?>

				<?php 
    if (isset($amenities['ngb']) && $amenities['ngb'] != null) {
        ?>
					<?php 
        $amenities['ngb'] = PLS_Format::translate_amenities($amenities['ngb']);
        ?>
					<h5><?php 
        _e('NEIGHBORHOOD AMENITIES', 'manchester');
        ?>
</h5>
						<section class="list-item">
							<section class="list-amenity">
								<?php 
        foreach ($amenities['ngb'] as $amenity => $value) {
            ?>
									<label><span><?php 
            echo $amenity;
            ?>
</span> <?php 
            echo $value;
            ?>
</label>
								<?php 
        }
        ?>
							</section>
						</section>

						<div class="separator-1-sma"></div>
				<?php 
    }
    ?>

				<?php 
    if (isset($amenities['uncur']) && $amenities['uncur'] != null) {
        ?>
					<?php 
        $amenities['uncur'] = PLS_Format::translate_amenities($amenities['uncur']);
        ?>
					<h5><?php 
        _e('CUSTOM AMENITIES', 'manchester');
        ?>
</h5>
						<section class="list-item">
							<section class="list-amenity">
								<?php 
        foreach ($amenities['uncur'] as $amenity => $value) {
            ?>
									<label><span><?php 
            echo $amenity;
            ?>
</span> <?php 
            echo $value;
            ?>
</label>
								<?php 
        }
        ?>
							</section>
						</section>

						<div class="separator-1-sma"></div>
				<?php 
    }
    ?>

			</section><!-- /.list2 -->
		</section><!-- /.left-content -->


		<aside class="sidebar">
			<section class="side-bin2">

				<?php 
    if ($listing['images']) {
        ?>
				<h5><?php 
        _e('PHOTO GALLERY', 'manchester');
        ?>
</h5>
				<section class="gallery">
					<?php 
        foreach ($listing['images'] as $image) {
            ?>
							<?php 
            echo PLS_Image::load($image['url'], array('resize' => array('w' => 140, 'h' => 93, 'method' => 'crop'), 'fancybox' => true, 'as_html' => false));
            ?>
					<?php 
        }
        ?>
				</section>
				<?php 
    }
    ?>
			</section>
		</aside>

		<div class="clr"></div>
	
	</div><!-- end of wrapper -->
</section>


<section id="lvl5">
	<div class="wrapper">

		<section class="neighborhood">

			<h5><?php 
    _e('NEIGHBORHOOD', 'manchester');
    ?>
</h5>
			<section class="neighborhood-map">
				<?php 
    echo PLS_Map::dynamic($listing, array('lat' => $listing['location']['coords'][0], 'lng' => $listing['location']['coords'][1], 'zoom' => '13', 'width' => 960, 'height' => 258, 'canvas_id' => 'map_canvas_nbr', 'class' => 'custom_google_map_nbr', 'map_js_var' => 'pls_google_map_nbr', 'ajax_form_class' => false));
    ?>
			</section>

			<script type="text/javascript">
		        jQuery(document).ready(function( $ ) {
		          var map_nbr = new Map();
		          var listing_nbr = new Listings({
		            single_listing: <?php 
    echo json_encode($listing);
    ?>
,
		            map: map_nbr
		          });
		          map_nbr.init({
		            type: 'single_listing', 
		            dom_id: 'map_canvas_nbr',
		            listings: listing_nbr,
		            lat: <?php 
    echo json_encode($listing['location']['coords'][0]);
    ?>
,
		            lng: <?php 
    echo json_encode($listing['location']['coords'][1]);
    ?>
,
		            zoom: 14
		          });
		          listing_nbr.init();
		        });
			</script>
		
		</section>
		

		<?php 
    PLS_Listing_Helper::get_compliance(array('context' => 'listings', 'agent_name' => $listing['rets']['aname'], 'office_name' => $listing['rets']['oname'], 'office_phone' => PLS_Format::phone($listing['contact']['phone']), 'agent_license' => isset($listing['rets']['alicense']) ? $listing['rets']['alicense'] : false, 'co_agent_name' => isset($listing['rets']['aconame']) ? $listing['rets']['aconame'] : false, 'co_office_name' => isset($listing['rets']['oconame']) ? $listing['rets']['oconame'] : false));
    ?>
	</div><!-- end of wrapper -->
</section>

	<?php 
    return ob_get_clean();
}
Exemplo n.º 24
0
<?php

$email = pls_get_option('pls-user-email');
$phone = pls_get_option('pls-user-phone');
$email_str = $phone_str = $contact_str = '';
$street = pls_get_option('pls-company-street');
$locality = pls_get_option('pls-company-locality');
$region = pls_get_option('pls-company-region');
$postal = pls_get_option('pls-company-postal');
$street_str = $address_str = '';
$agent = PLS_Plugin_API::get_user_details();
$email = strval($email ? $email : $agent['user']['email']);
$phone = strval($phone ? $phone : $agent['user']['phone']);
$street = strval($street ? $street : $agent['location']['address']);
$locality = strval($locality ? $locality : $agent['location']['locality']);
$region = strval($region ? $region : $agent['location']['region']);
$postal = strval($postal ? $postal : $agent['location']['postal']);
if ($email) {
    $email_str = sprintf(__('Email: <a href="mailto:%s">%s</a><br />', 'manchester'), esc_attr($email), esc_html($email));
}
if ($phone) {
    $phone_str = sprintf(__('Phone: <strong>%s</strong>', 'manchester'), esc_html($phone));
}
if ($email_str || $phone_str) {
    $contact_str = sprintf('<p class="contact">%s%s</p>', $email_str, $phone_str);
}
if ($street) {
    $street_str = esc_html($street) . '<br />';
}
if ($street || $locality || $region || $postal) {
    $address_str = sprintf('<p class="address">%s %s %s %s<br /></p>', $street_str, esc_html($locality), esc_html($region), esc_html($postal));
Exemplo n.º 25
0
function manchester_custom_home_listing_list($listing_html, $listing_data)
{
    // pls_dump($listing_data);
    ob_start();
    ?>

<section class="list-item">                                                  
	
	<section class="list-pic">

		<div class="thumbs">
			<?php 
    if (isset($listing_data['images']) && is_array($listing_data['images'])) {
        ?>
        	<?php 
        echo PLS_Image::load($listing_data['images'][0]['url'], array('resize' => array('w' => 144, 'h' => 93, 'method' => 'crop'), 'fancybox' => true));
        ?>
    	
				<?php 
    } else {
        ?>
				<?php 
        echo PLS_Image::load('', array('resize' => array('w' => 144, 'h' => 93, 'method' => 'crop'), 'fancybox' => true));
        ?>
       <?php 
    }
    ?>
		</div>

		<?php 
    if (isset($listing_data['rets']['mls_id'])) {
        ?>
  		<p class="nrm-txt"><?php 
        _e('MLS', 'manchester');
        ?>
 #: <?php 
        echo $listing_data['rets']['mls_id'];
        ?>
</p>
  	<?php 
    }
    ?>

	</section>

	<section class="list-txt">

		<section class="list-info">

			<h5><a href="<?php 
    echo $listing_data['cur_data']['url'];
    ?>
"><?php 
    echo $listing_data['location']['address'];
    ?>
</a></h5>
			<h6><?php 
    echo $listing_data['location']['locality'];
    ?>
, <?php 
    echo $listing_data['location']['region'];
    ?>
</h6>
				<?php 
    if (isset($listing_data['cur_data']['desc'])) {
        echo '<p class="nrm-txt">';
        if (strlen($listing_data['cur_data']['desc']) < 150) {
            echo $listing_data['cur_data']['desc'];
        } else {
            $position = strrpos(substr($listing_data['cur_data']['desc'], 0, 150), ' ');
            echo substr($listing_data['cur_data']['desc'], 0, $position) . '...';
        }
        echo '</p>';
    }
    ?>

			<p class="nrm-txt">
				<b><?php 
    echo $listing_data['cur_data']['beds'];
    ?>
</b> <span class="beds-n-baths"><?php 
    _e('Beds', 'manchester');
    ?>
</span> | 
				<b><?php 
    echo $listing_data['cur_data']['baths'];
    ?>
</b> <span class="beds-n-baths"><?php 
    _e('Baths', 'manchester');
    ?>
</span> 
				<?php 
    if (isset($listing_data['cur_data']['sqft'])) {
        echo '| <b>' . PLS_Format::number($listing_data['cur_data']['sqft'], array('abbreviate' => false, 'add_currency_sign' => false)) . '</b><span class="beds-n-baths"> ' . __('sqft', 'manchester') . '</span>';
    }
    ?>
			</p>

		</section><!-- /list-info -->

		<section class="list-price">
			
			<span class="green"><b><?php 
    echo PLS_Format::number($listing_data['cur_data']['price'], array('abbreviate' => false));
    ?>
</b>
			<?php 
    if ($listing_data['cur_data']['lse_trms'] != null) {
        // translate lease terms to human form
        echo PLS_Format::translate_lease_terms($listing_data);
    }
    ?>
			</span><br />
			
			<span class="nrm-txt">
				<?php 
    if ($listing_data['property_type'] == "fam_home") {
        echo __("Single Family Home", 'manchester');
    } else {
        $prop_type_frmttd = is_array($listing_data['property_type']) ? implode($listing_data['property_type']) : $listing_data['property_type'];
        echo ucwords($prop_type_frmttd);
    }
    ?>
			</span>

		</section><!-- /list-price -->

		<section class="list-links">

			<!-- <section class="list-fav"><a href="#">Add to favorites</a></section> -->
			<?php 
    $api_whoami = PLS_Plugin_API::get_user_details();
    if (pls_get_option('pls-user-email')) {
        ?>
			<section class="list-req">
				<a href="mailto:<?php 
        echo pls_get_option('pls-user-email');
        ?>
" target="_blank"><?php 
        _e('Request more info', 'manchester');
        ?>
</a>
			</section>
			<?php 
    } else {
        ?>
			<section class="list-req">
				<a href="mailto:<?php 
        echo $api_whoami['user']['email'];
        ?>
"><?php 
        _e('Request more info', 'manchester');
        ?>
</a>
			</section>
			<?php 
    }
    ?>

			<section class="list-btn1">
				<div class="img_btn">
					<a href="<?php 
    echo $listing_data['cur_data']['url'];
    ?>
"><input type="submit" Value="<?php 
    _e('See Details', 'manchester');
    ?>
" class="button b-blue medium" /></a>
				</div>
			</section>

		</section><!-- /list-links -->

	</section><!-- /list-text -->

    <?php 
    PLS_Listing_Helper::get_compliance(array('context' => 'inline_search', 'agent_name' => $listing_data['rets']['aname'], 'office_name' => $listing_data['rets']['oname'], 'office_phone' => PLS_Format::phone($listing_data['contact']['phone']), 'agent_license' => isset($listing_data['rets']['alicense']) ? $listing_data['rets']['alicense'] : false, 'co_agent_name' => isset($listing_data['rets']['aconame']) ? $listing_data['rets']['aconame'] : false, 'co_office_name' => isset($listing_data['rets']['oconame']) ? $listing_data['rets']['oconame'] : false));
    ?>
	
</section><!-- /list-item -->

<div class="separator-1-sma"></div>

<?php 
    // END FOR EACH
    ?>

     <?php 
    $listing_html = ob_get_clean();
    return $listing_html;
}
Exemplo n.º 26
0
function custom_listings_search_list($listing_item_html, $listing, $context_var)
{
    // return $listing_item_html;
    /** Start output buffering. The buffered html will be returned to the filter. */
    ob_start();
    // pls_dump($listing);
    ?>

<section class="list-unit">

	<section class="lu-left">
		<?php 
    if (!empty($listing['images'])) {
        ?>
			<?php 
        echo PLS_Image::load($listing['images'][0]['url'], array('resize' => array('w' => 149, 'h' => 90, 'method' => 'crop'), 'fancybox' => true, 'as_html' => true));
        ?>
		<?php 
    } else {
        ?>
			<?php 
        echo PLS_Image::load('', array('resize' => array('w' => 149, 'h' => 90, 'method' => 'crop'), 'fancybox' => true, 'as_html' => true));
        ?>
    	
		<?php 
    }
    ?>
	

		<?php 
    if (isset($listing['rets']['mls_id'])) {
        ?>
  		<p class="mls"><span><?php 
        _e('MLS #', 'tampa');
        ?>
:</span> <?php 
        echo $listing['rets']['mls_id'];
        ?>
</p>
  	<?php 
    }
    ?>

	</section><!--lu-left-->

	<section class="lu-right">
		<div class="lu-address">
			<h4><a href="<?php 
    echo $listing['cur_data']['url'];
    ?>
"><?php 
    echo $listing['location']['address'];
    ?>
</a></h4>
			<p class="area"><?php 
    echo $listing['location']['locality'];
    ?>
, <?php 
    echo $listing['location']['region'];
    ?>
</p>
		</div><!--lu-address-->

		<div class="lu-price">
			<p class="price"><?php 
    echo PLS_Format::number($listing['cur_data']['price'], array('abbreviate' => false, 'add_currency_sign' => true));
    ?>
</p>
			<p class="month"><?php 
    echo ucwords($listing['purchase_types'][0]);
    ?>
</p>
		</div><!--LU PRICE-->

		<div class="lu-main">
			<p><?php 
    echo substr($listing['cur_data']['desc'], 0, 300);
    ?>
</p>
			<p class="info"><span><?php 
    echo $listing['cur_data']['beds'];
    ?>
</span> <?php 
    _e('Bedrooms', 'tampa');
    ?>
 | <span><?php 
    echo $listing['cur_data']['baths'];
    ?>
</span> <?php 
    _e('Bathrooms', 'tampa');
    ?>
 <?php 
    if ($listing['cur_data']['sqft'] != null) {
        echo '| <span>' . PLS_Format::number($listing['cur_data']['sqft'], array('abbreviate' => false, 'add_currency_sign' => false)) . '</span> ' . __('sqft', 'tampa');
    }
    ?>
</p>
			<!-- <a class="fav" href="#"><?php 
    _e('Add to Favorites', 'tampa');
    ?>
</a> -->
			<a class="info-bt" href="mailto:<?php 
    echo pls_get_option('pls-user-email');
    ?>
"><?php 
    _e('Request Information', 'tampa');
    ?>
</a>
			<a class="see-details-link details-bt" href="<?php 
    echo $listing['cur_data']['url'];
    ?>
"><?php 
    _e('See Details', 'tampa');
    ?>
</a>
		</div><!--lu-main-->
		
	</section><!--LU-RIGHT-->
	<?php 
    PLS_Listing_Helper::get_compliance(array('context' => 'inline_search', 'agent_name' => $listing['rets']['aname'], 'office_name' => $listing['rets']['oname'], 'office_phone' => PLS_Format::phone($listing['contact']['phone']), 'agent_license' => isset($listing['rets']['alicense']) ? $listing['rets']['alicense'] : false, 'co_agent_name' => isset($listing['rets']['aconame']) ? $listing['rets']['aconame'] : false, 'co_office_name' => isset($listing['rets']['oconame']) ? $listing['rets']['oconame'] : false));
    ?>
	<div class="clearfix"></div>

</section><!--LIST UNIT-->

<?php 
    $html = ob_get_clean();
    // current js build throws a fit when newlines are present
    // will need to strip them.
    // added EMCA tag will solve in the future.
    $html = preg_replace('/[\\n\\r\\t]/', ' ', $html);
    return $html;
}
Exemplo n.º 27
0
function manch_custom_css()
{
    if (!is_admin()) {
        $custom_css = pls_get_option('pls-custom-css');
        if (pls_get_option('pls-css-options') && $custom_css) {
            printf('<style type="text/css">%s</style>', $custom_css);
        }
    }
}
Exemplo n.º 28
0
function custom_property_details_page($html, $listing)
{
    ob_start();
    // pls_dump($listing);
    ?>
<div id="main">
	
	<section class="property-banner">
		<?php 
    if ($listing['images']) {
        ?>
      <?php 
        echo PLS_Image::load($listing['images'][0]['url'], array('resize' => array('w' => 625, 'h' => 292, 'method' => 'crop'), 'fancybox' => false, 'as_html' => true, 'html' => array('img_classes' => 'main-banner')));
        ?>
  
    <?php 
    } else {
        ?>
      <?php 
        echo PLS_Image::load(null, array('resize' => array('w' => 625, 'h' => 292, 'method' => 'crop'), 'fancybox' => false, 'as_html' => true, 'html' => array('img_classes' => 'main-banner')));
        ?>
    <?php 
    }
    ?>
  	<p class="state"><?php 
    echo $listing['location']['full_address'];
    ?>
 <span class="rent"><?php 
    echo PLS_Format::number($listing['cur_data']['price'], array('abbreviate' => false, 'add-currency-sign' => true));
    ?>
<em></em></span><br><span class="details"><?php 
    echo $listing['cur_data']['beds'];
    ?>
 <?php 
    _e('Bedrooms', 'tampa');
    ?>
 | <?php 
    echo $listing['cur_data']['baths'];
    ?>
 <?php 
    _e('Bathrooms', 'tampa');
    ?>
</span></p>
  </section>

	<section class="user-generated">
		<h3><?php 
    _e('Details', 'tampa');
    ?>
</h3>
		<ul class="list-half">
			<li><?php 
    _e('Listing Type', 'tampa');
    ?>
 <span><?php 
    echo ucwords($listing['purchase_types'][0]);
    ?>
</span></li>
			<li><?php 
    _e('Bedrooms', 'tampa');
    ?>
 <span><?php 
    echo $listing['cur_data']['beds'];
    ?>
</span></li>
			<li><?php 
    _e('Property Type', 'tampa');
    ?>
				<span><?php 
    echo PLS_Format::translate_property_type($listing);
    ?>
</span>
			</li>
			<li><?php 
    _e('Bathrooms', 'tampa');
    ?>
 <span><?php 
    echo $listing['cur_data']['baths'];
    ?>
</span></li>
		  <?php 
    if (isset($listing['rets']['mls_id'])) {
        ?>
		    <li><?php 
        _e('MLS #', 'tampa');
        ?>
    		<span><?php 
        echo $listing['rets']['mls_id'];
        ?>
</span>
        </li>
    	<?php 
    }
    ?>
			<li><?php 
    _e('Half Baths', 'tampa');
    ?>
 <span><?php 
    echo $listing['cur_data']['half_baths'];
    ?>
</span></li>                                                            
		</ul><!--list-half-->
		<div class="clr"></div>
	</section><!--user-generated-->

	<?php 
    if ($listing['cur_data']['desc']) {
        ?>
		<section class="user-generated">
			<h3><?php 
        _e('Description', 'tampa');
        ?>
</h3>
			<p><?php 
        echo $listing['cur_data']['desc'];
        ?>
</p>
		</section>
	<?php 
    }
    ?>

	<?php 
    $amenities = PLS_Format::amenities_but($listing, array('half_baths', 'beds', 'baths', 'url', 'sqft', 'avail_on', 'price', 'desc'));
    ?>

	<?php 
    if (isset($amenities['list']) && $amenities['list'] != null) {
        ?>
		<section class="user-generated">
			<h3><?php 
        _e('Property Amenities', 'tampa');
        ?>
</h3>
			<ul class="list-third">
				<?php 
        $amenities['list'] = PLS_Format::translate_amenities($amenities['list']);
        ?>
				<?php 
        foreach ($amenities['list'] as $amenity => $value) {
            ?>
					<li><span><?php 
            echo $amenity;
            ?>
</span> <?php 
            echo $value;
            ?>
</li>
				<?php 
        }
        ?>
			</ul>
			<div class="clr"></div>
		</section>
	<?php 
    }
    ?>

	<?php 
    if (isset($amenities['ngb']) && $amenities['ngb'] != null) {
        ?>
		<section class="user-generated">
			<h3><?php 
        _e('Neighborhood Amenities', 'tampa');
        ?>
</h3>
			<ul class="list-third">
				<?php 
        $amenities['ngb'] = PLS_Format::translate_amenities($amenities['ngb']);
        ?>
				<?php 
        foreach ($amenities['ngb'] as $amenity => $value) {
            ?>
					<li><span><?php 
            echo $amenity;
            ?>
</span> <?php 
            echo $value;
            ?>
</li>
				<?php 
        }
        ?>
			</ul>
			<div class="clr"></div>
		</section>
	<?php 
    }
    ?>

	<?php 
    if (isset($amenities['uncur']) && $amenities['uncur'] != null) {
        ?>
		<section class="user-generated">
			<h3><?php 
        _e('Property Amenities', 'tampa');
        ?>
</h3>
			<ul class="list-third">
			<?php 
        $amenities['uncur'] = PLS_Format::translate_amenities($amenities['uncur']);
        ?>
				<?php 
        foreach ($amenities['uncur'] as $amenity => $value) {
            ?>
					<li><span><?php 
            echo $amenity;
            ?>
</span> <?php 
            echo $value;
            ?>
</li>
				<?php 
        }
        ?>
			</ul>
			<div class="clr"></div>
		</section>
	<?php 
    }
    ?>


</div><!--main-->
  
<aside>
	<section id="single-property-mini-map">
		<h3><php _e('Location', 'tampa'); ?></h3>
		<?php 
    echo PLS_Map::dynamic($listing, array('lat' => $listing['location']['coords'][0], 'lng' => $listing['location']['coords'][1], 'zoom' => '14', 'width' => 288, 'height' => 217, 'canvas_id' => 'map_canvas', 'class' => 'custom_google_map', 'map_js_var' => 'pls_google_map', 'ajax_form_class' => false));
    ?>

		<script type="text/javascript">
	      jQuery(document).ready(function( $ ) {
	        var map = new Map();
	        var listing = new Listings({
	          single_listing: <?php 
    echo json_encode($listing);
    ?>
,
	          map: map
	        });
	        map.init({
	          type: 'single_listing', 
	          listings: listing,
	          lat : <?php 
    echo json_encode($listing['location']['coords'][0]);
    ?>
,
	          lng : <?php 
    echo json_encode($listing['location']['coords'][1]);
    ?>
,
	          zoom : 14
	        });
	        listing.init();
	      });
    	</script>

	    <div class="map-bar">
	    	<!-- <a class="fav-org" href="#">Add to Favorites</a> -->
	      	<a class="info-org" href="mailto:<?php 
    echo pls_get_option('pls-user-email');
    ?>
"><?php 
    _e('Request More Info', 'tampa');
    ?>
</a>
	      	<div class="clr"></div>
	    </div><!--map-bar-->
	</section>

	<?php 
    if ($listing['images']) {
        ?>
		<section id="gallery">
			<h3><?php 
        _e('Photo Gallery', 'tampa');
        ?>
</h3>    
			<?php 
        foreach ($listing['images'] as $image) {
            ?>
					<?php 
            echo PLS_Image::load($image['url'], array('resize' => array('w' => 120, 'h' => 95, 'method' => 'crop'), 'fancybox' => true, 'as_html' => false));
            ?>
 
			<?php 
        }
        ?>
		</section><!--gallery-->
	<?php 
    }
    ?>

</aside>

<div class="clr"></div>

<section id="full">
  	<section class="user-generated">
	    <h3><?php 
    _e('Neighborhood', 'tampa');
    ?>
</h3>      
	    <?php 
    echo PLS_Map::dynamic($listing, array('lat' => $listing['location']['coords'][0], 'lng' => $listing['location']['coords'][1], 'zoom' => '14', 'width' => 930, 'height' => 260, 'canvas_id' => 'map_canvas_nbr', 'class' => 'custom_google_map_nbr', 'map_js_var' => 'pls_google_map_nbr', 'ajax_form_class' => false));
    ?>
  	</section>

  	<script type="text/javascript">
        jQuery(document).ready(function( $ ) {
          var map_nbr = new Map();
          var listing_nbr = new Listings({
            single_listing: <?php 
    echo json_encode($listing);
    ?>
,
            map: map_nbr
          });
          map_nbr.init({
            type: 'single_listing', 
            dom_id: 'map_canvas_nbr',
            listings: listing_nbr,
            lat: <?php 
    echo json_encode($listing['location']['coords'][0]);
    ?>
,
            lng: <?php 
    echo json_encode($listing['location']['coords'][1]);
    ?>
,
            zoom: 14
          });
          listing_nbr.init();
        });
	</script>
  
	<?php 
    if (isset($listing['cur_data']['mls_number']) && isset($listing['mls_logo'])) {
        ?>
		<section class="user-generated">
		    <h3><?php 
        _e('Listing Supply Source', 'tampa');
        ?>
</h3>
				<p class="p-supply"><?php 
        _e('MLS #', 'tampa');
        ?>
: <?php 
        echo $listing['cur_data']['mls_number'];
        ?>
</p>
		    <div class="clr"></div>
	  	</section>
	<?php 
    }
    ?>
	
	<?php 
    PLS_Listing_Helper::get_compliance(array('context' => 'listings', 'agent_name' => $listing['rets']['aname'], 'office_name' => $listing['rets']['oname'], 'office_phone' => PLS_Format::phone($listing['contact']['phone']), 'agent_license' => isset($listing['rets']['alicense']) ? $listing['rets']['alicense'] : false, 'co_agent_name' => isset($listing['rets']['aconame']) ? $listing['rets']['aconame'] : false, 'co_office_name' => isset($listing['rets']['oconame']) ? $listing['rets']['oconame'] : false));
    ?>
</section><!--full-->

<?php 
    return ob_get_clean();
}
Exemplo n.º 29
0
?>
 charset=<?php 
bloginfo('charset');
?>
" />
	<title><?php 
pls_document_title();
?>
</title>
	<!-- SEO Tags -->
	<meta name="description" content="<?php 
echo get_bloginfo('description');
?>
">
	<meta name="author" content="<?php 
echo pls_get_option('pls-user-name');
?>
">
	<meta property="og:site_name" content="<?php 
echo get_bloginfo('name');
?>
" />
	<meta property="og:title" content="<?php 
pls_document_title();
?>
" />
	<meta property="og:url" content="<?php 
echo $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
?>
" />
	<meta itemprop="name" content="<?php 
Exemplo n.º 30
0
    function add_mixpanel()
    {
        // get theme option for mixpanel ID
        $mixpanel_id = pls_get_option('pls-mixpanel-id');
        if (isset($mixpanel_id) && !empty($mixpanel_id)) {
            ob_start();
            ?>
          <!-- start Mixpanel -->
          <script type="text/javascript">(function(e,b){if(!b.__SV){var a,f,i,g;window.mixpanel=b;a=e.createElement("script");a.type="text/javascript";a.async=!0;a.src=("https:"===e.location.protocol?"https:":"http:")+'//cdn.mxpnl.com/libs/mixpanel-2.2.min.js';f=e.getElementsByTagName("script")[0];f.parentNode.insertBefore(a,f);b._i=[];b.init=function(a,e,d){function f(b,h){var a=h.split(".");2==a.length&&(b=b[a[0]],h=a[1]);b[h]=function(){b.push([h].concat(Array.prototype.slice.call(arguments,0)))}}var c=b;"undefined"!==
          typeof d?c=b[d]=[]:d="mixpanel";c.people=c.people||[];c.toString=function(b){var a="mixpanel";"mixpanel"!==d&&(a+="."+d);b||(a+=" (stub)");return a};c.people.toString=function(){return c.toString(1)+".people (stub)"};i="disable track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config people.set people.set_once people.increment people.append people.track_charge people.clear_charges people.delete_user".split(" ");for(g=0;g<i.length;g++)f(c,i[g]);
          b._i.push([a,e,d])};b.__SV=1.2}})(document,window.mixpanel||[]);
          mixpanel.init("<?php 
            echo $mixpanel_id;
            ?>
");</script>
          <!-- end Mixpanel -->
          <script type="text/javascript">
            window.onload = function () {
              mixpanel.track_pageview();
            }
          </script>
        <?php 
            echo ob_get_clean();
        }
    }