commerce_stripe.install in Commerce Stripe 7.3
Same filename and directory in other branches
Contains requirements function for Commerce Stripe.
File
commerce_stripe.installView source
<?php
/**
* @file
* Contains requirements function for Commerce Stripe.
*/
/**
* Implements hook_requirements().
*/
function commerce_stripe_requirements($phase) {
$requirements = array();
if ($phase == 'runtime') {
$t = get_t();
// Check for the Stripe PHP library.
if (file_exists(libraries_get_path('stripe-php') . '/lib/Stripe.php')) {
$requirements['commerce_stripe_php'] = array(
'value' => $t('Installed'),
'severity' => REQUIREMENT_OK,
);
}
else {
$requirements['commerce_stripe_php'] = array(
'value' => $t('Missing!'),
'severity' => REQUIREMENT_ERROR,
'description' => $t('Stripe library missing. Download the Stripe library from <a href="@url">https://github.com/stripe/stripe-php</a> and place it in to sites/all/libraries/stripe-php', array(
'@url' => 'https://github.com/stripe/stripe-php',
)),
);
}
$requirements['commerce_stripe_php']['title'] = $t('Stripe PHP library');
// Check for supported payment currencies.
$supported_currencies = commerce_stripe_payment_currencies();
$currencies = commerce_currencies();
$default = commerce_default_currency();
if (in_array(strtolower(commerce_default_currency()), $supported_currencies)) {
$requirements['commerce_stripe_currency'] = array(
'value' => $t('Valid currency'),
'severity' => REQUIREMENT_OK,
'description' => $t('Currencies are correctly configured. Default: @default', array(
'@default' => $currencies[$default]['name'],
)),
);
}
else {
$requirements['commerce_stripe_currency'] = array(
'value' => $t('Invalid default currency!'),
'severity' => REQUIREMENT_ERROR,
'description' => $t('Your Stripe account does not accept default currency @default. Please <a href="@config">configure your currency settings</a> and update your payment method settings accordingly.', array(
'@default' => $currencies[$default]['name'],
'@config' => url('admin/commerce/config/currency'),
)),
);
}
$requirements['commerce_stripe_currency']['title'] = $t('Stripe currency check');
$message = "Commerce Stripe is currently tested with stripe-php library versions @minimum_version through @maximum_version. Your version: @installed_version.";
$library = libraries_load('stripe-php');
$detected = $library['version'];
$minimum_version = '3.0.0';
$maximum_version = '5.6.0';
$status = REQUIREMENT_OK;
$variables = array(
'@minimum_version' => $minimum_version,
'@maximum_version' => $maximum_version,
'@installed_version' => $detected,
);
if (version_compare($library['version'], $maximum_version, '>')) {
$variables['@upgrade_or_downgrade'] = 'Downgrading';
$status = REQUIREMENT_ERROR;
watchdog('commerce_stripe', $message, $variables, WATCHDOG_WARNING);
}
if (version_compare($library['version'], $minimum_version, '<')) {
$variables['@upgrade_or_downgrade'] = 'Upgrading';
$status = REQUIREMENT_ERROR;
watchdog('commerce_stripe', $message, $variables, WATCHDOG_WARNING);
}
$requirements['commerce_stripe_php_version'] = array(
'title' => $t('Stripe PHP Library Version'),
'value' => $detected,
'severity' => $status,
'description' => $t($message, $variables),
);
}
return $requirements;
}
/**
* Ensure libraries and registry caches are rebuilt to pick up changes.
*/
function commerce_stripe_update_7302() {
registry_rebuild();
foreach (libraries_flush_caches() as $table) {
cache_clear_all('*', $table, TRUE);
}
}
/**
* Implements hook_uninstall().
*/
function commerce_stripe_uninstall() {
// Uninstall rules configuration.
$config = rules_config_load('commerce_payment_commerce_stripe');
if ($config) {
rules_config_delete(array(
$config->id,
));
}
}
Functions
Name | Description |
---|---|
commerce_stripe_requirements | Implements hook_requirements(). |
commerce_stripe_uninstall | Implements hook_uninstall(). |
commerce_stripe_update_7302 | Ensure libraries and registry caches are rebuilt to pick up changes. |