usecache; $wp_embed->usecache = false; $content = $wp_embed->run_shortcode($content); $content = $wp_embed->autoembed($content); $wp_embed->usecache = $usecache; return $content; } public function dispatch() { awpcp_enqueue_main_script(); $output = apply_filters( 'awpcp-show-listing-content-replacement', null ); if ( is_null( $output ) ) { return showad(); } else { return $output; } } } /** * @since 3.0 */ function awpcp_get_ad_location($ad_id, $country=false, $county=false, $state=false, $city=false) { $places = array(); if (!empty($city)) { $places[] = $city; } if (!empty($county)) { $places[] = $county; } if (!empty($state)) { $places[] = $state; } if (!empty($country)) { $places[] = $country; } if (!empty($places)) { $location = sprintf('%s: %s', __("Location",'another-wordpress-classifieds-plugin'), join(', ', $places)); } else { $location = ''; } return $location; } /** * Handles AWPCPSHOWAD shortcode. * * @param $adid An Ad ID. * @param $omitmenu * @param $preview true if the function is used to show an ad just after * it was posted to the website. * @param $send_email if true and $preview=true, a success email will be send * to the admin and poster user. * * @return Show Ad page content. */ function showad( $adid=null, $omitmenu=false, $preview=false, $send_email=true, $show_messages=true ) { global $wpdb; awpcp_maybe_add_thickbox(); wp_enqueue_script('awpcp-page-show-ad'); $awpcp = awpcp(); $awpcp->js->set( 'page-show-ad-flag-ad-nonce', wp_create_nonce('flag_ad') ); $awpcp->js->localize( 'page-show-ad', array( 'flag-confirmation-message' => __( 'Are you sure you want to flag this ad?', 'another-wordpress-classifieds-plugin' ), 'flag-success-message' => __( 'This Ad has been flagged.', 'another-wordpress-classifieds-plugin' ), 'flag-error-message' => __( 'An error occurred while trying to flag the Ad.', 'another-wordpress-classifieds-plugin' ) ) ); $preview = $preview === true || 'preview' == awpcp_array_data('adstatus', '', $_GET); $is_moderator = awpcp_current_user_is_moderator(); $messages = array(); $permastruc = get_option('permalink_structure'); if (!isset($adid) || empty($adid)) { if (isset($_REQUEST['adid']) && !empty($_REQUEST['adid'])) { $adid = $_REQUEST['adid']; } elseif (isset($_REQUEST['id']) && !empty($_REQUEST['id'])) { $adid = $_REQUEST['id']; } else if (isset($permastruc) && !empty($permastruc)) { $adid = get_query_var( 'id' ); } else { $adid = 0; } } $adid = absint( $adid ); if (!empty($adid)) { // filters to provide alternative method of storing custom // layouts (e.g. can be outside of this plugin's directory) if ( has_action( 'awpcp_single_ad_template_action' ) || has_filter( 'awpcp_single_ad_template_filter' ) ) { do_action( 'awpcp_single_ad_template_action' ); return apply_filters( 'awpcp_single_ad_template_filter' ); } else { $results = AWPCP_Ad::query( array( 'where' => $wpdb->prepare( 'ad_id = %d', $adid ) ) ); if (count($results) === 1) { $ad = array_shift($results); } else { $ad = null; } if (is_null($ad)) { $message = __( 'Sorry, that listing is not available. Please try browsing or searching existing listings.', 'another-wordpress-classifieds-plugin' ); return '