Merged in feature/from-pantheon (pull request #16)
code from pantheon * code from pantheon
This commit is contained in:
@@ -0,0 +1,339 @@
|
||||
<?php
|
||||
|
||||
if ( ! defined( 'ABSPATH' ) ) {
|
||||
die( '-1' );
|
||||
}
|
||||
|
||||
include_once "lib/IperCptCampaign.php";
|
||||
|
||||
if(!class_exists('IperCampaignController')){
|
||||
|
||||
define("kIperCampaignPath",dirname(__FILE__));
|
||||
define("kPLUGIN_DIR_URL",plugin_dir_url(__FILE__));
|
||||
define ("kPLUGIN_DIR_PATH", plugin_dir_path(__FILE__));
|
||||
|
||||
class IperCampaignController {
|
||||
|
||||
const kREST_ACTION = "GetWebCampaigns";
|
||||
const kCOOKIE_ID = "SESScampaignid";
|
||||
const kCOOKIE_ID_FIVE9 = "SESSfive9";
|
||||
const kCOOKIE_WEB_PROMOTION_TEXT = "SESSpromotion";
|
||||
const kCOOKIE_PHONE = "SESScampaignphone";
|
||||
const kCOOKIE_EXPIRE = 15552000; // 6 months (3600 * 24 * 30 * 6)
|
||||
|
||||
|
||||
protected static $instance;
|
||||
public $testVar;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->testVar = "prova";
|
||||
add_action( 'plugins_loaded', array( $this, 'plugins_loaded' ));
|
||||
//Admin script
|
||||
add_action( 'admin_enqueue_scripts', array(&$this,'load_iper_script') );
|
||||
add_filter( 'option_cta_tel', array(&$this,'check_campaign_active_tel') );
|
||||
add_filter( 'option_assistance_phone', array(&$this,'check_campaign_active_ass_phone') );
|
||||
add_shortcode( 'phone_number', array(&$this,'get_phone_number') );
|
||||
|
||||
add_shortcode( 'campaign_id', array(&$this,'getCampaignID') );
|
||||
add_shortcode( 'campaign_five9', array(&$this,'getCampaignFive9') );
|
||||
add_shortcode( 'campaign_special', array(&$this,'getCampaignSO') );
|
||||
add_shortcode( 'web_promo', array(&$this,'getWebPromotionText') );
|
||||
add_shortcode( 'confirmation', array(&$this,'getConfirmationPageText') );
|
||||
|
||||
$cpt = new IperCptCampaign();
|
||||
}
|
||||
|
||||
public function plugins_loaded(){
|
||||
//$this->addFilters();
|
||||
}
|
||||
|
||||
public static function instance() {
|
||||
if ( ! isset( self::$instance ) ) {
|
||||
self::$instance = new self();
|
||||
}
|
||||
|
||||
return self::$instance;
|
||||
}
|
||||
|
||||
public function check_campaign_active_tel($phonenumber){
|
||||
|
||||
if(!empty($_COOKIE) && !empty($_COOKIE[self::kCOOKIE_ID])){
|
||||
//get campaign
|
||||
$campaign = $this->getActiveCampaignPhoneByID($_COOKIE[self::kCOOKIE_ID]);
|
||||
if(!empty($campaign)){
|
||||
return $campaign;
|
||||
}
|
||||
}
|
||||
|
||||
if(!empty($_SESSION[self::kCOOKIE_ID])){
|
||||
$campaign = $this->getActiveCampaignPhoneByID($_SESSION[self::kCOOKIE_ID]);
|
||||
if(!empty($campaign)){
|
||||
return $campaign;
|
||||
}
|
||||
}
|
||||
|
||||
return $phonenumber;
|
||||
|
||||
}
|
||||
|
||||
public function check_campaign_active_ass_phone($phonenumber){
|
||||
if(!empty($_COOKIE) && !empty($_COOKIE[self::kCOOKIE_ID])){
|
||||
//get campaign
|
||||
$campaign = $this->getActiveCampaignPhoneByID($_COOKIE[self::kCOOKIE_ID]);
|
||||
if(!empty($campaign)){
|
||||
return $campaign;
|
||||
}
|
||||
}
|
||||
|
||||
if(!empty($_SESSION[self::kCOOKIE_ID])){
|
||||
$campaign = $this->getActiveCampaignPhoneByID($_SESSION[self::kCOOKIE_ID]);
|
||||
if(!empty($campaign)){
|
||||
return $campaign;
|
||||
}
|
||||
}
|
||||
|
||||
return $phonenumber;
|
||||
}
|
||||
|
||||
public static function getCampaignID(){
|
||||
if(!empty($_COOKIE) && !empty($_COOKIE[self::kCOOKIE_ID])){
|
||||
return $_COOKIE[self::kCOOKIE_ID];
|
||||
}
|
||||
if(!empty($_SESSION[self::kCOOKIE_ID])){
|
||||
return $_SESSION[self::kCOOKIE_ID];
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static function getCampaignFive9(){
|
||||
if(!empty($_COOKIE) && !empty($_COOKIE[self::kCOOKIE_ID_FIVE9])){
|
||||
return $_COOKIE[self::kCOOKIE_ID_FIVE9];
|
||||
}
|
||||
if(!empty($_SESSION[self::kCOOKIE_ID_FIVE9])){
|
||||
return $_SESSION[self::kCOOKIE_ID_FIVE9];
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static function getWebPromotionText(){
|
||||
if(!empty($_COOKIE) && !empty($_COOKIE[self::kCOOKIE_WEB_PROMOTION_TEXT])){
|
||||
return $_COOKIE[self::kCOOKIE_WEB_PROMOTION_TEXT];
|
||||
}
|
||||
if(!empty($_SESSION[self::kCOOKIE_WEB_PROMOTION_TEXT])){
|
||||
return $_SESSION[self::kCOOKIE_WEB_PROMOTION_TEXT];
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public function get_phone_number(){
|
||||
|
||||
$phoneNumber = get_option('cta_tel',true);
|
||||
return $phoneNumber;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $campaignID
|
||||
* @return bool|string
|
||||
*/
|
||||
public function getActiveCampaignPhoneByID($campaignID="-1"){
|
||||
|
||||
$campaign = get_posts(
|
||||
array(
|
||||
"post_type"=>IperCptCampaign::POST_TYPE,
|
||||
"posts_per_page"=>1,
|
||||
"meta_key"=>IperCptCampaign::kMETA_CAMPAIGN_ID,
|
||||
"meta_value"=>$campaignID)
|
||||
);
|
||||
|
||||
if (!empty($campaign)){
|
||||
$campaign = $campaign[0];
|
||||
|
||||
//check is active
|
||||
$campaignStart = get_post_meta($campaign->ID,IperCptCampaign::kMETA_CAMPAIGN_START_DATE,true);
|
||||
$campaignEnd = get_post_meta($campaign->ID,IperCptCampaign::kMETA_CAMPAIGN_END_DATE,true);
|
||||
$campaignStart.=" 00:00:00";
|
||||
$campaignEnd.=" 23:59:59";
|
||||
$campaignStart = strtotime($campaignStart);
|
||||
$campaignEnd = strtotime($campaignEnd);
|
||||
$now=time();
|
||||
if($now>=$campaignStart && $now<=$campaignEnd) {
|
||||
|
||||
$campaignPhone = get_post_meta($campaign->ID,IperCptCampaign::kMETA_CAMPAIGN_PHONE,true);
|
||||
return $campaignPhone;
|
||||
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function setCampaign($id="",$phone="",$id_five_9="",$WebPromotionText=""){
|
||||
|
||||
setcookie(self::kCOOKIE_ID, $id, 0,'/');
|
||||
setcookie(self::kCOOKIE_PHONE, $phone, 0,'/');
|
||||
setcookie(self::kCOOKIE_ID_FIVE9, $id_five_9, 0,'/');
|
||||
setcookie(self::kCOOKIE_WEB_PROMOTION_TEXT, $WebPromotionText , 0,'/');
|
||||
if(!session_id()){
|
||||
session_start();
|
||||
}
|
||||
|
||||
$_SESSION[self::kCOOKIE_ID]=$id;
|
||||
$_SESSION[self::kCOOKIE_PHONE]=$phone;
|
||||
$_SESSION[self::kCOOKIE_ID_FIVE9]=$id_five_9;
|
||||
$_SESSION[self::kCOOKIE_WEB_PROMOTION_TEXT]=$WebPromotionText;
|
||||
}
|
||||
|
||||
public function activate(){
|
||||
|
||||
$cpt = new IperCptCampaign();
|
||||
$cpt->rewrite_flush();
|
||||
}
|
||||
|
||||
public function cronJob($data){
|
||||
|
||||
//TODO
|
||||
|
||||
if(!empty($data->ResponseBody)){
|
||||
|
||||
//set all existing campaigns flag to delete
|
||||
$existings = get_posts(
|
||||
array(
|
||||
"post_type"=>IperCptCampaign::POST_TYPE,
|
||||
"posts_per_page"=>-1,
|
||||
"post_status"=>"publish"
|
||||
)
|
||||
);
|
||||
|
||||
if(!empty($existings)){
|
||||
foreach ($existings as $post){
|
||||
update_post_meta($post->ID,IperCptCampaign::kMETA_DELETE,true);
|
||||
}
|
||||
}
|
||||
unset($existings);
|
||||
|
||||
foreach ($data->ResponseBody as $single):
|
||||
// Match GetWebCampaigns CampaignDescription
|
||||
$CampaignID = $single->CampaignID;
|
||||
$StartDate = $single->StartDate;
|
||||
$PhoneNumber = $single->PhoneNumber;
|
||||
$LandingURL = $single->LandingURL;
|
||||
$FriendlyURL = $single->FriendlyURL;
|
||||
$EndDate = $single->EndDate;
|
||||
$CampaignName = $single->CampaignName;
|
||||
$Five9CallbackCampaign = $single->Five9CallbackCampaign;
|
||||
$WebPromotionText = $single->WebPromotionText;//fill campaign field
|
||||
|
||||
$postname = str_replace(get_bloginfo('wpurl'),"",$FriendlyURL);
|
||||
|
||||
//find if exists post with this meta key
|
||||
$post = get_posts(
|
||||
array(
|
||||
"post_type"=>IperCptCampaign::POST_TYPE,
|
||||
"posts_per_page"=>-1,
|
||||
"post_status"=>"publish",
|
||||
"meta_key"=>IperCptCampaign::kMETA_CAMPAIGN_ID,
|
||||
"meta_value"=>$CampaignID
|
||||
)
|
||||
);
|
||||
|
||||
if(!empty($post)){
|
||||
//update post meta
|
||||
$post = $post[0];
|
||||
update_post_meta($post->ID,IperCptCampaign::kMETA_DELETE,false);
|
||||
$my_post = array(
|
||||
'ID'=> $post->ID,
|
||||
'post_title' => wp_strip_all_tags( $CampaignName ),
|
||||
'post_content' => "",
|
||||
'post_status' => 'publish',
|
||||
'post_author' => 1,
|
||||
'post_type' => IperCptCampaign::POST_TYPE,
|
||||
'post_name' => $postname,
|
||||
'meta_input' => array(
|
||||
IperCptCampaign::kMETA_CAMPAIGN_ID => $CampaignID,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_START_DATE => $StartDate,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_PHONE => $PhoneNumber,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_LANDING_URL => $LandingURL,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_SHORT_URL => $FriendlyURL,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_END_DATE => $EndDate,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_NAME => $CampaignName,
|
||||
IperCptCampaign::kMETA_FIVE9 => $Five9CallbackCampaign,
|
||||
IperCptCampaign::kMETA_WEB_PROMOTION_TEXT => $WebPromotionText,
|
||||
)
|
||||
);
|
||||
|
||||
wp_update_post($my_post);
|
||||
|
||||
echo "\nUPDATE CAMPAIGN ".$CampaignName;
|
||||
}else{
|
||||
//insert post
|
||||
|
||||
$my_post = array(
|
||||
'post_title' => wp_strip_all_tags( $CampaignName ),
|
||||
'post_content' => "",
|
||||
'post_status' => 'publish',
|
||||
'post_author' => 1,
|
||||
'post_type' => IperCptCampaign::POST_TYPE,
|
||||
'post_name' => $postname,
|
||||
'meta_input' => array(
|
||||
IperCptCampaign::kMETA_CAMPAIGN_ID => $CampaignID,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_START_DATE => $StartDate,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_PHONE => $PhoneNumber,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_LANDING_URL => $LandingURL,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_SHORT_URL => $FriendlyURL,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_END_DATE => $EndDate,
|
||||
IperCptCampaign::kMETA_CAMPAIGN_NAME => $CampaignName,
|
||||
IperCptCampaign::kMETA_FIVE9 => $Five9CallbackCampaign,
|
||||
IperCptCampaign::kMETA_WEB_PROMOTION_TEXT => $WebPromotionText,//pull text from sales force
|
||||
|
||||
)
|
||||
);
|
||||
|
||||
wp_insert_post($my_post);
|
||||
|
||||
echo "\nCreated Campaign: ".$CampaignName;
|
||||
}
|
||||
|
||||
endforeach;
|
||||
|
||||
$todelete = get_posts(
|
||||
array(
|
||||
"post_type"=>IperCptCampaign::POST_TYPE,
|
||||
"posts_per_page"=>-1,
|
||||
"post_status"=>"publish",
|
||||
"meta_key"=>IperCptCampaign::kMETA_DELETE,
|
||||
"meta_value"=>true
|
||||
)
|
||||
);
|
||||
|
||||
if(!empty($todelete)){
|
||||
echo "\n\n*** CAMPAIGN DELETE ***";
|
||||
foreach ($todelete as $post){
|
||||
echo "\n".$post->post_title;
|
||||
wp_trash_post($post->ID);
|
||||
}
|
||||
}
|
||||
unset($todelete);
|
||||
}
|
||||
}
|
||||
|
||||
public function load_iper_script($hook){
|
||||
//edit partner
|
||||
if(('post.php'== $hook || 'post-new.php'== $hook ) && get_post_type()==IperCptCampaign::POST_TYPE ){
|
||||
|
||||
//include metabox script
|
||||
wp_enqueue_style('jquery-ui');
|
||||
wp_enqueue_script('jquery-ui-datepicker');
|
||||
wp_enqueue_script("iper.campaign.metabox", kPLUGIN_DIR_URL. 'res/js/iper.campaign.metabox.min.js',false, filemtime(kPLUGIN_DIR_PATH. 'res/js/iper.campaign.metabox.min.js') );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(class_exists('IperCampaignController')){
|
||||
register_activation_hook(__FILE__, array('IperCampaignController', 'activate'));
|
||||
IperCampaignController::instance();
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,141 @@
|
||||
<?php
|
||||
|
||||
if(!class_exists('IperCptCampaign')) {
|
||||
|
||||
class IperCptCampaign
|
||||
{
|
||||
//cpt info
|
||||
const POST_TYPE = "campaign";
|
||||
const NAME = "Campaign";
|
||||
const SINGLE_NAME = "Campaign";
|
||||
const DESCRIPTION = "Post type for Campaign";
|
||||
const QUERY_VAR = "campaign";
|
||||
|
||||
|
||||
const kMETA_CAMPAIGN_ID = "campaign_id";
|
||||
const kMETA_CAMPAIGN_START_DATE = "campaign_start_date";
|
||||
const kMETA_CAMPAIGN_END_DATE = "campaign_end_date";
|
||||
const kMETA_CAMPAIGN_PHONE = "campaign_phone_number";
|
||||
const kMETA_CAMPAIGN_SHORT_URL = "campaign_short_url";
|
||||
const kMETA_CAMPAIGN_LANDING_URL = "campaign_landing_url";
|
||||
const kMETA_CAMPAIGN_NAME = "campaign_name";
|
||||
const kMETA_DELETE = "to_delete";
|
||||
const kMETA_FIVE9 = "Five9CallbackCampaign";
|
||||
const kMETA_WEB_PROMOTION_TEXT = "WebPromotionText";//Name text for campaign field
|
||||
|
||||
|
||||
|
||||
private $_meta = array(
|
||||
array('name'=>self::kMETA_CAMPAIGN_ID,'type'=>'input-text','title'=>'Campaign ID'),
|
||||
array('name'=>self::kMETA_CAMPAIGN_NAME,'type'=>'input-text','title'=>'Campaign name'),
|
||||
array('name'=>self::kMETA_CAMPAIGN_START_DATE,'type'=>'input-date','title'=>'Start date'),
|
||||
array('name'=>self::kMETA_CAMPAIGN_END_DATE,'type'=>'input-date','title'=>'End date'),
|
||||
array('name'=>self::kMETA_CAMPAIGN_PHONE,'type'=>'input-text','title'=>'Phone number'),
|
||||
array('name'=>self::kMETA_CAMPAIGN_SHORT_URL,'type'=>'input-text','title'=>'Friendly URL'),
|
||||
array('name'=>self::kMETA_CAMPAIGN_LANDING_URL,'type'=>'input-text','title'=>'Landing URL'),
|
||||
array('name'=>self::kMETA_FIVE9,'type'=>'input-text','title'=>'Five9 Callback Campaign'),
|
||||
array('name'=>self::kMETA_WEB_PROMOTION_TEXT,'type'=>'input-text','title'=>'Web Promotion Text'),
|
||||
);
|
||||
|
||||
public function __construct(){
|
||||
add_action('init', array(&$this, 'init'));
|
||||
add_action('admin_init', array(&$this, 'admin_init'));
|
||||
|
||||
add_filter('single_template',array(&$this,'single_template'));
|
||||
}
|
||||
|
||||
public function init(){
|
||||
$this->create_post_type();
|
||||
add_action('save_post', array(&$this, 'save_post'));
|
||||
}
|
||||
|
||||
|
||||
public function admin_init(){
|
||||
|
||||
add_action('add_meta_boxes', array(&$this, 'add_meta_boxes'));
|
||||
}
|
||||
|
||||
public function add_meta_boxes(){
|
||||
add_meta_box(
|
||||
sprintf('iper_plugin_%s_section', self::POST_TYPE),
|
||||
'Info',
|
||||
array(&$this, 'add_inner_meta_boxes'),
|
||||
self::POST_TYPE
|
||||
);
|
||||
}
|
||||
|
||||
public function add_inner_meta_boxes($post){
|
||||
|
||||
include(sprintf("%s/templates/%s-metabox.php",kIperCampaignPath, self::POST_TYPE));
|
||||
}
|
||||
|
||||
public function create_post_type(){
|
||||
|
||||
$labels = array(
|
||||
'name' => __("Campaigns"),
|
||||
'singular_name' => __("Campaign"),
|
||||
'menu_name' => __("Campaigns"),
|
||||
'name_admin_bar' => __("Campaign"),
|
||||
'add_new_item' => __( 'Add New Campaign'),
|
||||
'new_item' => __( 'New Campaign'),
|
||||
'edit_item' => __( 'Edit Campaign' ),
|
||||
'view_item' => __( 'View Campaign' ),
|
||||
'all_items' => __( 'All Campaigns' ),
|
||||
'search_items' => __( 'Search Campaigns'),
|
||||
'parent_item_colon' => __( 'Parent Campaigns:' ),
|
||||
'not_found' => __( 'No campaigns found.'),
|
||||
'not_found_in_trash' => __( 'No campaigns found in Trash.' )
|
||||
);
|
||||
|
||||
register_post_type(self::POST_TYPE,
|
||||
array(
|
||||
'labels' =>$labels,
|
||||
'public' => true,
|
||||
'has_archive' => false,
|
||||
'description' => self::DESCRIPTION,
|
||||
'supports' => array(
|
||||
'title', 'editor',
|
||||
),
|
||||
'hierarchical' => false,
|
||||
'menu_position'=> 9,
|
||||
'query_var' => self::QUERY_VAR,
|
||||
'rewrite' => array( 'slug' => '/'.self::POST_TYPE, 'with_front' => false )
|
||||
// 'rewrite' => array( 'slug' => self::POST_TYPE )
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public function single_template($single_template){
|
||||
global $post;
|
||||
$found = locate_template('single-'.self::POST_TYPE.'.php');
|
||||
if($post->post_type == self::POST_TYPE && $found == ''){
|
||||
$single_template = kIperCampaignPath.'/templates/single-'.self::POST_TYPE.'.php';
|
||||
}
|
||||
|
||||
return $single_template;
|
||||
}
|
||||
|
||||
public function rewrite_flush() {
|
||||
$this->create_post_type();
|
||||
flush_rewrite_rules();
|
||||
}
|
||||
|
||||
public function save_post($post_id){
|
||||
|
||||
if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(isset($_POST['post_type']) && $_POST['post_type'] == self::POST_TYPE && current_user_can('edit_post', $post_id))
|
||||
{
|
||||
foreach($this->_meta as $field)
|
||||
{
|
||||
// Update the post's meta field
|
||||
if (isset($_POST[$field['name']]))
|
||||
update_post_meta($post_id, $field['name'], $_POST[$field['name']]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* Created by fabrizio pera on 22/11/16.
|
||||
*/
|
||||
function initMetabox(){
|
||||
console.log("** initMetabox **");
|
||||
|
||||
var dateFormat = "yy-mm-dd",
|
||||
from = $( "#campaign_start_date" )
|
||||
.datepicker({
|
||||
dateFormat: dateFormat
|
||||
})
|
||||
.on( "change", function() {
|
||||
to.datepicker( "option", "minDate", getDate( this ) );
|
||||
}),
|
||||
to = $( "#campaign_end_date" ).datepicker({
|
||||
dateFormat: dateFormat
|
||||
}).on( "change", function() {
|
||||
from.datepicker( "option", "maxDate", getDate( this ) );
|
||||
});
|
||||
|
||||
function getDate( element ) {
|
||||
var date;
|
||||
try {
|
||||
date = $.datepicker.parseDate( dateFormat, element.value );
|
||||
} catch( error ) {
|
||||
date = null;
|
||||
}
|
||||
|
||||
return date;
|
||||
}
|
||||
}
|
||||
|
||||
if($ == undefined){
|
||||
window.$ = jQuery.noConflict();
|
||||
}
|
||||
|
||||
$(function(){
|
||||
initMetabox();
|
||||
});
|
||||
1
wp/wp-content/plugins/iper-medical/campaign/res/js/iper.campaign.metabox.min.js
vendored
Normal file
1
wp/wp-content/plugins/iper-medical/campaign/res/js/iper.campaign.metabox.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
function initMetabox(){console.log("** initMetabox **");var a="yy-mm-dd",d=$("#campaign_start_date").datepicker({dateFormat:a}).on("change",function(){c.datepicker("option","minDate",b(this))}),c=$("#campaign_end_date").datepicker({dateFormat:a}).on("change",function(){d.datepicker("option","maxDate",b(this))});function b(g){var f;try{f=$.datepicker.parseDate(a,g.value)}catch(e){f=null}return f}}if($==undefined){window.$=jQuery.noConflict()}$(function(){initMetabox()});
|
||||
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: fabrizio
|
||||
* Date: 22/11/16
|
||||
* Time: 12:21
|
||||
*/
|
||||
|
||||
?>
|
||||
<p><b>Campaign details info</b></p>
|
||||
<table>
|
||||
<?php
|
||||
foreach($this->_meta as $meta):
|
||||
$value=get_post_meta($post->ID, $meta['name'], true);
|
||||
$field=$meta['name'];
|
||||
$title=$meta['title'];
|
||||
if($meta['type']=='input-text') :
|
||||
include(sprintf("%s/metabox/input-text.php", dirname(__FILE__))) ;
|
||||
elseif($meta['type']=='input-date') :
|
||||
include(sprintf("%s/metabox/input-date.php", dirname(__FILE__))) ;
|
||||
endif ;
|
||||
endforeach;
|
||||
?>
|
||||
</table>
|
||||
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: fabrizio
|
||||
* Date: 22/11/16
|
||||
* Time: 12:27
|
||||
*/
|
||||
|
||||
?>
|
||||
<tr>
|
||||
<td><?php echo $title;?></td>
|
||||
<td>
|
||||
<input data-datepicker type="date" id="<?php echo $field;?>" name="<?php echo $field;?>" value="<?php echo $value;?>">
|
||||
</td>
|
||||
</tr>
|
||||
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: fabrizio
|
||||
* Date: 22/11/16
|
||||
* Time: 12:23
|
||||
*/
|
||||
|
||||
if (empty($value)){
|
||||
$value="";
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td><?php echo $title;?></td>
|
||||
<td>
|
||||
<input type="text" id="<?php echo $field;?>" name="<?php echo $field;?>" value="<?php echo $value;?>">
|
||||
</td>
|
||||
</tr>
|
||||
@@ -0,0 +1,70 @@
|
||||
<?php
|
||||
session_start();
|
||||
|
||||
$now=time();
|
||||
$campaignTitle = get_the_title();
|
||||
|
||||
$campaignID = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_CAMPAIGN_ID,true);
|
||||
$campaignPhone = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_CAMPAIGN_PHONE,true);
|
||||
$campaignStart = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_CAMPAIGN_START_DATE,true);
|
||||
$campaignEnd = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_CAMPAIGN_END_DATE,true);
|
||||
$campaignLink = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_CAMPAIGN_LANDING_URL,true);
|
||||
$campaignFive9CallbackCampaign = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_FIVE9,true);
|
||||
$WebPromotionText = get_post_meta(get_the_ID(),IperCptCampaign::kMETA_WEB_PROMOTION_TEXT,true);
|
||||
|
||||
$campaignStart.=" 00:00:00";
|
||||
$campaignEnd.=" 23:59:59";
|
||||
|
||||
$campaignStart = strtotime($campaignStart);
|
||||
$campaignEnd = strtotime($campaignEnd);
|
||||
|
||||
if($now>=$campaignStart && $now<=$campaignEnd){
|
||||
$controller = IperCampaignController::instance();
|
||||
$controller->setCampaign($campaignID,$campaignPhone,$campaignFive9CallbackCampaign,$WebPromotionText);
|
||||
|
||||
}else{
|
||||
//campaign expired or not yet started
|
||||
}
|
||||
function append_query_string($url) {
|
||||
return add_query_arg($_GET, $url);
|
||||
}
|
||||
add_filter('the_permalink', 'append_query_string');
|
||||
$permalink = append_query_string($url);
|
||||
$url = (empty($campaignLink)) ? get_home_url() : $campaignLink;
|
||||
$myurl = get_option('siteurl');
|
||||
$campaignurl = (empty($campaignLink)) ? get_home_url() : $campaignLink;
|
||||
|
||||
$utm_campaign = $_GET['dynamic_id'];
|
||||
|
||||
switch ($utm_campaign) {
|
||||
case "landline" :
|
||||
header ("location: /product/home-system-landline/");
|
||||
break;
|
||||
case "cellular" :
|
||||
header ("location: /product/home-system-cellular/");
|
||||
break;
|
||||
case "home" :
|
||||
header ("location: /home-system" );
|
||||
break;
|
||||
case "mobile" :
|
||||
header ("location: /product/mobile-system");
|
||||
break;
|
||||
case "fall" :
|
||||
header ("location: /fall-detection");
|
||||
break;
|
||||
case "app" :
|
||||
header ("location: /mobile-app");
|
||||
break;
|
||||
case "quiz" :
|
||||
header ("location: /free-medical-monitoring-assessment");
|
||||
break;
|
||||
case "faq" :
|
||||
header ("location: /frequently-asked-questions");
|
||||
break;
|
||||
case "reviews" :
|
||||
header ("location: /reviews");
|
||||
break;
|
||||
default:
|
||||
header ("location:" . $url.$permalink);
|
||||
break;
|
||||
}
|
||||
Reference in New Issue
Block a user