public function build_directory_list()
 {
     $business_list = '';
     // load all categories
     $categories = get_terms(DBD_CATEGORY_TYPE_NAME);
     foreach ($categories as $category) {
         if ($_REQUEST['type'] && $_REQUEST['type'] != $category->slug) {
             continue;
         }
         $business_list .= '<h2>' . $category->name . '</h2>';
         $business_list .= '<ul class="businesses">';
         $businesses = get_posts(array('post_type' => DBD_POST_TYPE_NAME, 'posts_per_page' => -1, 'orderby' => 'post_title', 'order' => 'ASC', 'tax_query' => array(array('taxonomy' => DBD_CATEGORY_TYPE_NAME, 'field' => 'term_id', 'terms' => $category->term_id))));
         foreach ($businesses as $business) {
             $business_meta = get_post_meta($business->ID);
             $business_thumb = get_the_post_thumbnail($business->ID, "full");
             $link = '/directory/' . $business->post_name;
             $business_list .= '<li>';
             if ($business_thumb) {
                 $business_list .= '<div class="logo"><a href="' . $link . '">' . $business_thumb . '</a></div>';
             }
             $business_list .= '<h3 class="title">' . $business->post_title . '</h3>';
             $business_list .= '<div class="address">' . dbd_utilities::get_formatted_address($business_meta) . '</div>';
             $business_list .= '<div class="phone">' . $business_meta["_dbd_phone"][0] . '</div>';
             $business_list .= '<a class="details-link" href="' . $link . '"><span>Details</span></a>';
             $business_list .= '</li>';
         }
         $business_list .= '</ul>';
     }
     return $business_list;
 }
 function save_contact_meta_form($post_id)
 {
     // verify the nonce
     if (!wp_verify_nonce($_POST['dbd_contact_nonce'], $this->nonce_action)) {
         return $post_id;
     }
     // verify the user
     if (!current_user_can('edit_dbd_post', $post_id)) {
         return $post_id;
     }
     // save the contact data to meta fields
     dbd_utilities::save_meta_field($post_id, 'contact_name', '_dbd_name');
     dbd_utilities::save_meta_field($post_id, 'contact_phone', '_dbd_phone');
     dbd_utilities::save_meta_field($post_id, 'contact_email', '_dbd_email');
     dbd_utilities::save_meta_field($post_id, 'contact_website', '_dbd_website');
     dbd_utilities::save_meta_field($post_id, 'contact_facebook', '_dbd_facebook');
     return $post_id;
 }
 function save_location_meta_form($post_id)
 {
     // verify the nonce
     if (!wp_verify_nonce($_POST['dbd_loc_nonce'], $this->nonce_action)) {
         return $post_id;
     }
     // verify the user
     if (!current_user_can('edit_dbd_post', $post_id)) {
         return $post_id;
     }
     // save the location data to meta fields
     dbd_utilities::save_meta_field($post_id, 'loc_address1', '_dbd_address1');
     dbd_utilities::save_meta_field($post_id, 'loc_address2', '_dbd_address2');
     dbd_utilities::save_meta_field($post_id, 'loc_city', '_dbd_city');
     dbd_utilities::save_meta_field($post_id, 'loc_state', '_dbd_state');
     dbd_utilities::save_meta_field($post_id, 'loc_postalcode', '_dbd_postalcode');
     dbd_utilities::save_meta_field($post_id, 'loc_lat', '_dbd_lat');
     dbd_utilities::save_meta_field($post_id, 'loc_lng', '_dbd_lng');
     return $post_id;
 }