pardot.install in Pardot Integration 7
Same filename and directory in other branches
Install/uninstall taks and updates.
File
pardot.installView source
<?php
/**
* @file
* Install/uninstall taks and updates.
*/
/**
* Implements hook_schema().
*/
function pardot_schema() {
$schema = array();
$schema['pardot_submissions'] = array(
'description' => 'Pardot Form submissions',
'primary key' => array(
'sid',
),
'fields' => array(
'sid' => array(
// Internal unique identifier.
'description' => 'Webform submission id',
'type' => 'serial',
'size' => 'normal',
'unsigned' => TRUE,
'not null' => TRUE,
),
'form_nid' => array(
// Associated form ID.
'description' => 'Webform nid that generated this post',
'type' => 'int',
'size' => 'normal',
'unsigned' => TRUE,
'not null' => TRUE,
'default' => 0,
),
'status' => array(
// Form posted status.
'description' => 'Pardot option name',
'type' => 'varchar',
'size' => 'normal',
'length' => 32,
'not null' => TRUE,
'default' => '',
),
'submitted' => array(
// Post time.
'description' => 'Timestamp of form submission',
'type' => 'int',
'size' => 'normal',
'unsigned' => TRUE,
'not null' => TRUE,
'default' => 0,
),
'data' => array(
// Form contents.
'description' => 'Form values and other data',
'type' => 'text',
'size' => 'normal',
/* 16KB in mySql */
'not null' => TRUE,
'serialize' => TRUE,
),
),
);
$schema['pardot_webform'] = array(
'description' => 'Webform Settings',
'primary key' => array(
'nid',
),
'unique keys' => array(),
'indexes' => array(
'pardot_webform_active' => array(
'is_active',
),
),
'fields' => array(
'nid' => array(
// Webform node ID.
'description' => 'Node ID',
'type' => 'int',
'size' => 'normal',
'unsigned' => TRUE,
'not null' => TRUE,
'default' => 0,
),
'url' => array(
'description' => 'Pardot post url',
'type' => 'varchar',
'size' => 'normal',
'length' => 255,
'not null' => TRUE,
'default' => '',
),
'is_active' => array(
// Is this webform Pardot enabled?
'description' => 'Whether this form is Pardot active',
'type' => 'int',
'size' => 'tiny',
'not null' => TRUE,
'default' => 0,
'unsigned' => TRUE,
),
'data' => array(
'description' => 'Extra data to be stored with the field',
'type' => 'text',
'size' => 'normal',
/* 16KB in mySql */
'not null' => TRUE,
'serialize' => TRUE,
),
),
);
$schema['pardot_scoring'] = array(
'description' => 'Scoring settings',
'primary key' => array(
'scoring_id',
),
'indexes' => array(),
'fields' => array(
'scoring_id' => array(
// Internal unique identifier.
'type' => 'serial',
'size' => 'normal',
'unsigned' => TRUE,
'not null' => TRUE,
),
'path' => array(
'type' => 'varchar',
'size' => 'normal',
'length' => 255,
'not null' => TRUE,
'default' => '',
),
'score' => array(
'description' => 'Pardot score for a given page',
'type' => 'int',
'size' => 'tiny',
'not null' => TRUE,
'default' => 0,
'unsigned' => FALSE,
),
),
);
$schema['pardot_campaign'] = array(
'description' => 'Campaign settings',
'indexes' => array(),
'fields' => array(
'campaign_id' => array(
'description' => 'Pardot campaign identifier.',
// Internal unique identifier.
'type' => 'int',
'not null' => TRUE,
'unsigned' => TRUE,
),
'name' => array(
// Form Posted status.
'description' => 'Human readable campaign name',
'type' => 'varchar',
'size' => 'normal',
'length' => 255,
'not null' => TRUE,
'default' => '',
),
'paths' => array(
'description' => 'A list of paths associated with the campaign',
'type' => 'text',
'size' => 'normal',
/* 16KB in mySql */
'not null' => TRUE,
'serialize' => FALSE,
),
),
);
return $schema;
}
/**
* Update Pardot Campaign and Pardot Scoring tables.
*/
function pardot_update_7100(&$sandbox) {
// Change old field (if necessary).
if (!db_field_exists('pardot_submissions', 'form_nid')) {
db_change_field('pardot_submissions', 'form_nid_field', 'form_nid', array(
'description' => 'Webform nid that generated this post',
'type' => 'int',
'size' => 'normal',
'unsigned' => TRUE,
'not null' => TRUE,
'default' => 0,
));
return t('The Pardot tables were updated.');
}
else {
return t('The pardot_submissions field "form_nid" already exists, no change needed.');
}
}
Functions
Name | Description |
---|---|
pardot_schema | Implements hook_schema(). |
pardot_update_7100 | Update Pardot Campaign and Pardot Scoring tables. |