Add is_template field to contribution entity
authorAidan Saunders <aidan.saunders@squiffle.uk>
Mon, 7 Oct 2019 13:27:53 +0000 (14:27 +0100)
committerAidan Saunders <aidan.saunders@squiffle.uk>
Tue, 8 Oct 2019 09:20:47 +0000 (10:20 +0100)
Update tests and examples

CRM/Contribute/DAO/Contribution.php
CRM/Upgrade/Incremental/php/FiveTwenty.php
api/v3/examples/Contribution/ContributionCreateWithHonoreeContact.ex.php
api/v3/examples/Contribution/ContributionCreateWithNote.ex.php
api/v3/examples/Contribution/ContributionCreateWithSoftCredit.ex.php
api/v3/examples/Contribution/ContributionCreateWithSoftCreditDefaults.ex.php
api/v3/examples/Contribution/Create.ex.php
api/v3/examples/Contribution/CreateWithNestedLineItems.ex.php
xml/schema/Contribute/Contribution.xml

index a30e2042ea9741a8e48e74c956cc600df3682ec6..018f1e0c1f463579a84d134592125d7ff1f6ee69 100644 (file)
@@ -6,7 +6,7 @@
  *
  * Generated from xml/schema/CRM/Contribute/Contribution.xml
  * DO NOT EDIT.  Generated by CRM_Core_CodeGen
- * (GenCodeChecksum:b4e84298d9ba23d3b2fae0768fc5cb58)
+ * (GenCodeChecksum:a9f83aa612e82ee87ace74e75fe23466)
  */
 
 /**
@@ -226,6 +226,13 @@ class CRM_Contribute_DAO_Contribution extends CRM_Core_DAO {
    */
   public $revenue_recognition_date;
 
+  /**
+   * Shows this is a template for recurring contributions.
+   *
+   * @var bool
+   */
+  public $is_template;
+
   /**
    * Class constructor.
    */
@@ -839,6 +846,23 @@ class CRM_Contribute_DAO_Contribution extends CRM_Core_DAO {
             'formatType' => 'activityDateTime',
           ],
         ],
+        'is_template' => [
+          'name' => 'is_template',
+          'type' => CRM_Utils_Type::T_BOOLEAN,
+          'title' => ts('Is a Template Contribution'),
+          'description' => ts('Shows this is a template for recurring contributions.'),
+          'import' => TRUE,
+          'where' => 'civicrm_contribution.is_template',
+          'export' => TRUE,
+          'default' => '0',
+          'table_name' => 'civicrm_contribution',
+          'entity' => 'Contribution',
+          'bao' => 'CRM_Contribute_BAO_Contribution',
+          'localizable' => 0,
+          'html' => [
+            'type' => 'CheckBox',
+          ],
+        ],
       ];
       CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'fields_callback', Civi::$statics[__CLASS__]['fields']);
     }
index 782bd42ad9c67d3ecf46c2a1ae19568c93ea57bd..94b9e029e7369f345654587b621aabed742548ff 100644 (file)
@@ -67,19 +67,6 @@ class CRM_Upgrade_Incremental_php_FiveTwenty extends CRM_Upgrade_Incremental_Bas
    * (change the x in the function name):
    */
 
-  //  /**
-  //   * Upgrade function.
-  //   *
-  //   * @param string $rev
-  //   */
-  //  public function upgrade_5_0_x($rev) {
-  //    $this->addTask(ts('Upgrade DB to %1: SQL', [1 => $rev]), 'runSql', $rev);
-  //    $this->addTask('Do the foo change', 'taskFoo', ...);
-  //    // Additional tasks here...
-  //    // Note: do not use ts() in the addTask description because it adds unnecessary strings to transifex.
-  //    // The above is an exception because 'Upgrade DB to %1: SQL' is generic & reusable.
-  //  }
-
   // public static function taskFoo(CRM_Queue_TaskContext $ctx, ...) {
   //   return TRUE;
   // }
@@ -92,6 +79,8 @@ class CRM_Upgrade_Incremental_php_FiveTwenty extends CRM_Upgrade_Incremental_Bas
   public function upgrade_5_20_alpha1($rev) {
     $this->addTask('Add frontend title column to contribution page table', 'addColumn', 'civicrm_contribution_page',
       'frontend_title', "varchar(255) DEFAULT NULL COMMENT 'Contribution Page Public title'", TRUE, '5.20.alpha1');
+    $this->addTask('Add is_template field to civicrm_contribution', 'addColumn', 'civicrm_contribution', 'is_template',
+      "tinyint(4) DEFAULT '0' COMMENT 'Shows this is a template for recurring contributions.'", FALSE, '5.20.alpha1');
     $this->addTask(ts('Upgrade DB to %1: SQL', [1 => $rev]), 'runSql', $rev);
   }
 
index e775abbb76edda865a38580d7a539adb53345f57..a1e4172a0add88e9ae1173cdcfc4982d85f62e48 100644 (file)
@@ -9,7 +9,7 @@
  */
 function contribution_create_example() {
   $params = [
-    'contact_id' => 31,
+    'contact_id' => 32,
     'receive_date' => '20120511',
     'total_amount' => '100',
     'financial_type_id' => 1,
@@ -18,7 +18,7 @@ function contribution_create_example() {
     'net_amount' => '95',
     'source' => 'SSF',
     'contribution_status_id' => 1,
-    'honor_contact_id' => 32,
+    'honor_contact_id' => 33,
   ];
 
   try{
@@ -56,7 +56,7 @@ function contribution_create_expectedresult() {
     'values' => [
       '1' => [
         'id' => '1',
-        'contact_id' => '31',
+        'contact_id' => '32',
         'financial_type_id' => '1',
         'contribution_page_id' => '',
         'payment_instrument_id' => '4',
@@ -85,6 +85,7 @@ function contribution_create_expectedresult() {
         'creditnote_id' => '',
         'tax_amount' => '',
         'revenue_recognition_date' => '',
+        'is_template' => '',
         'contribution_type_id' => '1',
       ],
     ],
index 1c22dd7f1f7409a3e51a3b2dfd574fd5e12a9718..16bf6b2e4dcce9b23a970e0b487169e48f93b771 100644 (file)
@@ -9,7 +9,7 @@
  */
 function contribution_create_example() {
   $params = [
-    'contact_id' => 25,
+    'contact_id' => 26,
     'receive_date' => '2012-01-01',
     'total_amount' => '100',
     'financial_type_id' => 1,
@@ -59,7 +59,7 @@ function contribution_create_expectedresult() {
     'values' => [
       '1' => [
         'id' => '1',
-        'contact_id' => '25',
+        'contact_id' => '26',
         'financial_type_id' => '1',
         'contribution_page_id' => '',
         'payment_instrument_id' => '1',
@@ -88,6 +88,7 @@ function contribution_create_expectedresult() {
         'creditnote_id' => '',
         'tax_amount' => '',
         'revenue_recognition_date' => '',
+        'is_template' => '',
         'contribution_type_id' => '1',
       ],
     ],
index e4d36539ba9ad5b1442f1c2df3fb6d4b10985384..d830ef95e0cddec7a811ba8cdebee0c6ed27c132 100644 (file)
@@ -9,7 +9,7 @@
  */
 function contribution_create_example() {
   $params = [
-    'contact_id' => 27,
+    'contact_id' => 28,
     'receive_date' => '20120511',
     'total_amount' => '100',
     'financial_type_id' => 1,
@@ -20,7 +20,7 @@ function contribution_create_example() {
     'contribution_status_id' => 1,
     'soft_credit' => [
       '1' => [
-        'contact_id' => 28,
+        'contact_id' => 29,
         'amount' => 50,
         'soft_credit_type_id' => 3,
       ],
@@ -62,7 +62,7 @@ function contribution_create_expectedresult() {
     'values' => [
       '1' => [
         'id' => '1',
-        'contact_id' => '27',
+        'contact_id' => '28',
         'financial_type_id' => '1',
         'contribution_page_id' => '',
         'payment_instrument_id' => '4',
@@ -91,6 +91,7 @@ function contribution_create_expectedresult() {
         'creditnote_id' => '',
         'tax_amount' => '',
         'revenue_recognition_date' => '',
+        'is_template' => '',
         'contribution_type_id' => '1',
       ],
     ],
index 2c6729fb0a90e80739f285933a3daa0f6dd7b211..915a68c5bcdede4501e431f6688eef4d235f4661 100644 (file)
@@ -9,7 +9,7 @@
  */
 function contribution_create_example() {
   $params = [
-    'contact_id' => 29,
+    'contact_id' => 30,
     'receive_date' => '20120511',
     'total_amount' => '100',
     'financial_type_id' => 1,
@@ -18,7 +18,7 @@ function contribution_create_example() {
     'net_amount' => '95',
     'source' => 'SSF',
     'contribution_status_id' => 1,
-    'soft_credit_to' => 30,
+    'soft_credit_to' => 31,
   ];
 
   try{
@@ -56,7 +56,7 @@ function contribution_create_expectedresult() {
     'values' => [
       '1' => [
         'id' => '1',
-        'contact_id' => '29',
+        'contact_id' => '30',
         'financial_type_id' => '1',
         'contribution_page_id' => '',
         'payment_instrument_id' => '4',
@@ -85,6 +85,7 @@ function contribution_create_expectedresult() {
         'creditnote_id' => '',
         'tax_amount' => '',
         'revenue_recognition_date' => '',
+        'is_template' => '',
         'contribution_type_id' => '1',
       ],
     ],
index 7540683df7fc2d51c2f5afa1760fb1ed614911e1..2f724f44ca21a862448da7b742c639a2fdc56e7e 100644 (file)
@@ -7,7 +7,7 @@
  */
 function contribution_create_example() {
   $params = [
-    'contact_id' => 1,
+    'contact_id' => 39,
     'receive_date' => '20120511',
     'total_amount' => '100',
     'financial_type_id' => 1,
@@ -54,7 +54,7 @@ function contribution_create_expectedresult() {
     'values' => [
       '1' => [
         'id' => '1',
-        'contact_id' => '1',
+        'contact_id' => '39',
         'financial_type_id' => '1',
         'contribution_page_id' => '1',
         'payment_instrument_id' => '4',
@@ -83,6 +83,7 @@ function contribution_create_expectedresult() {
         'creditnote_id' => '',
         'tax_amount' => '',
         'revenue_recognition_date' => '',
+        'is_template' => '',
         'contribution_type_id' => '1',
       ],
     ],
index 3c27c405c59f2120a26ccc1a500e6918b4303ed0..36e23c41c7b4d437ac53b6c4b304a6a4409ae704 100644 (file)
@@ -9,7 +9,7 @@
  */
 function contribution_create_example() {
   $params = [
-    'contact_id' => 12,
+    'contact_id' => 13,
     'receive_date' => '20120511',
     'total_amount' => '100',
     'financial_type_id' => 1,
@@ -73,7 +73,7 @@ function contribution_create_expectedresult() {
     'values' => [
       '1' => [
         'id' => '1',
-        'contact_id' => '12',
+        'contact_id' => '13',
         'financial_type_id' => '1',
         'contribution_page_id' => '',
         'payment_instrument_id' => '1',
@@ -102,6 +102,7 @@ function contribution_create_expectedresult() {
         'creditnote_id' => '',
         'tax_amount' => 0,
         'revenue_recognition_date' => '',
+        'is_template' => '',
         'contribution_type_id' => '1',
         'api.line_item.create' => [
           '0' => [
index 8c47a84fa8ed03d0141fad6f425ab90f5e397695..d2f5593b3de657f5ffd4b7ae7fa1511938f87ed7 100644 (file)
     </html>
     <add>4.7</add>
   </field>
+   <field>
+    <name>is_template</name>
+    <title>Is a Template Contribution</title>
+    <type>boolean</type>
+    <default>0</default>
+    <import>true</import>
+    <comment>Shows this is a template for recurring contributions.</comment>
+    <html>
+      <type>CheckBox</type>
+    </html>
+    <add>5.20</add>
+  </field>
 </table>