Skip to content

Instantly share code, notes, and snippets.

@NoelDavies
Created September 15, 2015 09:17
Show Gist options
  • Save NoelDavies/9edd2460794af17fa84e to your computer and use it in GitHub Desktop.
Save NoelDavies/9edd2460794af17fa84e to your computer and use it in GitHub Desktop.

ChangeLog

All notable changes to this project will be documented in this file. This project sadly doesn't adhere to Semantic Versioning. but we will soon!

[Unreleased][unreleased]

Added

  • Luhn Algorithm to the validation class
  • Password Strength Metres to each password save input

Fixed

  • Backend (JCN) Payments
  • Undefined key in Worldpay purchase response

[improvement/payment_stats][improvement/payment_stats] - 2015-09-08

Added

  • Added various mini-UI features for the auto-renewal monitoring (To Summaries and Search)
  • Added ability to search for transaction ids via search page

Changed

[hotfix/run_subscription_renewals_before][run_subscription_renewals_before] - 2015-09-07

Changed

  • Autorenewal cron will now check for all expiry dates on or before the date of script execution
  • Changed multiple instance of $this->_member['role'] to use actual role constants
  • Fixed card references not applying properly

Improvement/Payment_System - 2015-08-03


  • Adds Full omnipay support, with admin manual payments, recurring payments and lots of sexy upgrades.

Migration

```SQL
ALTER TABLE `ie_members`
    ADD COLUMN `payment_details` TEXT NULL DEFAULT NULL AFTER `badEmail`,
    ADD COLUMN `has_autorenew` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' AFTER `payment_details`,
    ADD INDEX `has_autorenew` (`has_autorenew`);

ALTER TABLE `ie_billing_history`
    ALTER `method` DROP DEFAULT;
ALTER TABLE `ie_billing_history`
    CHANGE COLUMN `method` `method` ENUM('Metacharge','PayPal','Google','Cheque','Postal Order','Cash','Complimentary','iCheque','Stripe','WorldPay') NOT NULL COLLATE 'utf8_unicode_ci' AFTER `order_date`;
```

Change to application.ini

```ini
;Payments
payments.oneclick.enabled = false;
payments.gateway = Stripe

payments.gateways.Stripe.apiKey = sk_test_4QTnZvPIu9JVvlbDKng8q0sX
payments.gateways.WorldPay.serviceKey = T_S_9d79755c-bcc6-4205-8488-2a3b8771e777
payments.gateways.WorldPay.clientKey = T_C_0a1d72b4-39ec-4bc3-b558-35860dda8197
payments.gateways.WorldPay.apiKey = T_C_0a1d72b4-39ec-4bc3-b558-35860dda8197

payments.gateways.iCheque.endpoint = https://hub1.swiftvoucher.com/Deimos/Test/IllicitEncounters/?wsdl;
payments.gateways.iCheque.secretWord = 5BF956CD21F9;
payments.gateways.iCheque.domain = www.illicitencounters.com;

payments.gateways.GoCardless.app.id = V7GR7M1GT5N2K7RC1W2SSX110F05QWH5073XW1HYQ14M1S0TFFBEY2MHVKR70M3P;
payments.gateways.GoCardless.app.secret = 8Y3XHER4VWR8J1E6T6ZCFJXSDZT2CK0B2RQY10ZMJZA4PDG6Z8CT6VYEWQGE606P;
payments.gateways.GoCardless.merchant.token = TXY8ND8S65A36ZBPXYNDXPXDF9ACVTRKJ2Q7PGJD2N1F6H7DP9F9RESE2XK7JP4W;
payments.gateways.GoCardless.marchant.id = 0XEAZABAJ0;
```

feature/ab_dashboard - 2015-07-30

AB test

  • Run a test on the search page for guests. The variation tested is a redirection for guests to the registration page.

Addition

  • Interface in JCN to check Ab tests status and results
  • Add new methods on the BaseModel
  • Update documentation to implement AB tests in the code
  • Record the userid when available

Migration

  • Create two tables in mySQL:
CREATE TABLE `ie_abtests` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `date_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `date_updated` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8

CREATE TABLE `ie_abresults` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `testId` int(11) unsigned NOT NULL,
  `sessionSeed` int(11) NOT NULL,
  `userId` int(11) DEFAULT NULL,
  `variation` varchar(255) NOT NULL,
  `converted` tinyint(3) unsigned DEFAULT '0',
  `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8

Fixed

  • A few notices reported on BugSnag
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment