Plugin Directory

Changeset 2215867


Ignore:
Timestamp:
12/20/2019 05:44:23 PM (6 years ago)
Author:
john ackers
Message:

dont save formFields json in log (was a bodge)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ecampaign/branches/maintenance/EcampaignLog.class.php

    r1974935 r2215867  
    1010{
    1111  static $tableName ;
    12   static $dbVersion = "0.4" ;
     12  static $dbVersion = "0.5" ;
    1313  static $singleton = Null ;
    1414  const tSend = 'send' ;
     
    3636  {
    3737    global $wpdb ;
    38     $tName = self::$tableName ;
    39     if ($wpdb->get_var("show tables like '$tName'")!= $tName)
     38    $installRequired = $wpdb->get_var('show tables like "'.self::$tableName.'"') != self::$tableName;
     39    $upgradeRequired =  get_option( "ecampaign_db_version", "0.0") != self::$dbVersion ;
     40    if ($installRequired || $upgradeRequired)
    4041    {
    4142      $sql = "CREATE TABLE " . self::$tableName . " (
    42           id bigint(20) NOT NULL AUTO_INCREMENT,
     43          id bigint(20) NOT NULL AUTO_INCREMENT UNIQUE,
     44          vid bigint(20) default 0 NOT NULL,
    4345          date timestamp NOT NULL,
    4446          state char(20) NOT NULL,
    45           visitorName varchar(50) NOT NULL,
    46           visitorEmail varchar(50) NOT NULL,
    47           address varchar(100) NOT NULL,
    48           checkbox1 tinyint(1) NOT NULL,
    49           checkbox2 tinyint(1) NOT NULL,
    50           target varchar(50) NOT NULL,
    51           info varchar(1024) NOT NULL,
    52           postID bigint(20) NOT NULL,
     47          visitorName VARCHAR(50) NOT NULL,
     48          visitorEmail VARCHAR(50) NOT NULL,
     49          address VARCHAR(100) NOT NULL,
     50          checkbox1 bool NOT NULL,
     51          checkbox2 bool NOT NULL,
     52          target VARCHAR(50) NOT NULL,
     53          info VARCHAR(1024) NOT NULL,
     54          postID BIGINT(20) NOT NULL,
    5355          PRIMARY KEY  (id),
    54           formFields json,
    5556            INDEX postID_visitorEmail (postID, visitorEmail)
    56         );" ;
    57 
    58       require_once(ABSPATH . 'wp-admin/upgrade.php');
    59       $res = dbDelta($sql);
    60 
    61       add_option("ecampaign_log", self::$dbVersion);
     57        );" ;     
     58      require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
     59      dbDelta($sql);
     60      update_option( "ecampaign_db_version", self::$dbVersion) ;
     61     
    6262    }
    6363  }
     
    8888    return 0 < $wpdb->get_var($query);
    8989  }
    90 
     90 
     91  /**
     92   * if verification supplied find matching visitor records
     93   * @param verification $code
     94   * @return array|object|NULL
     95   */
     96
     97  function getVisitors($vid)
     98  {
     99    global $wpdb ;
     100    $query = ["select ID, vid, postID, state, visitorName, visitorEmail FROM" , self::$tableName,
     101            "WHERE true and vid = $vid",   // change to pick all records
     102//            "GROUP BY visitorEmail, state, visitorName",
     103            "ORDER BY ID desc" ];
     104    $drows = $wpdb->get_results(join($query, " "));
     105    return $drows ; 
     106  }
     107 
    91108  /**
    92109   * write log record to database
     
    102119    $wpdb->insert(self::$tableName, array(
    103120            'state' => $state,
     121            'vid' => (int) self::ensureSet(@$field->vid),
    104122            'visitorName' =>  self::ensureSet(@$field->visitorName),
    105123            'visitorEmail' => self::ensureSet(@$field->visitorEmail),
     
    159177      __("Email & Name") =>
    160178        array(
    161           '_from' => self::$tableName,
    162           'visitorEmail' => __('email'),
    163           'visitorName' => __('name')
    164       )
     179            '_from' => self::$tableName,
     180            'visitorEmail' => __('email'),
     181            'visitorName' => __('name')
     182        ),
     183      __("Target") =>
     184        array(
     185            '_from' => self::$tableName,
     186            'date' => __('date'),
     187            'visitorEmail' => __('email'),
     188            'visitorName' => __('name'),
     189            'target' => __('target')     
     190        )
    165191    );
    166192    // add special view to include user profiles
Note: See TracChangeset for help on using the changeset viewer.