CRM-17609 - Sycnronize contacts form cleanup
authorColeman Watts <coleman@civicrm.org>
Sat, 21 Nov 2015 20:30:31 +0000 (15:30 -0500)
committerColeman Watts <coleman@civicrm.org>
Sat, 21 Nov 2015 20:36:45 +0000 (15:36 -0500)
CRM/Admin/Form/CMSUser.php
CRM/Admin/Page/CMSUser.php [deleted file]
CRM/Core/BAO/CMSUser.php
CRM/Core/xml/Menu/Admin.xml
templates/CRM/Admin/Page/CMSUser.tpl [deleted file]

index 03dd5e866b47f52ce73beb70dbeb22db50800dc4..b2251817ad5283669c4a26310256dea4c27d6111 100644 (file)
@@ -59,7 +59,31 @@ class CRM_Admin_Form_CMSUser extends CRM_Core_Form {
    * Process the form submission.
    */
   public function postProcess() {
-    CRM_Core_BAO_CMSUser::synchronize();
+    $result = CRM_Core_BAO_CMSUser::synchronize();
+
+    $status = ts('Checked one user record.',
+        array(
+          'count' => $result['contactCount'],
+          'plural' => 'Checked %count user records.',
+        )
+      );
+    if ($result['contactMatching']) {
+      $status .= '<br />' . ts('Found one matching contact record.',
+          array(
+            'count' => $result['contactMatching'],
+            'plural' => 'Found %count matching contact records.',
+          )
+        );
+    }
+
+    $status .= '<br />' . ts('Created one new contact record.',
+        array(
+          'count' => $result['contactCreated'],
+          'plural' => 'Created %count new contact records.',
+        )
+      );
+    CRM_Core_Session::setStatus($status, ts('Synchronize Complete'), 'success');
+    CRM_Core_Session::singleton()->pushUserContext(CRM_Utils_System::url('civicrm/admin', 'reset=1'));
   }
 
 }
diff --git a/CRM/Admin/Page/CMSUser.php b/CRM/Admin/Page/CMSUser.php
deleted file mode 100644 (file)
index 6c7b3c5..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-<?php
-/*
- +--------------------------------------------------------------------+
- | CiviCRM version 4.7                                                |
- +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2015                                |
- +--------------------------------------------------------------------+
- | This file is a part of CiviCRM.                                    |
- |                                                                    |
- | CiviCRM is free software; you can copy, modify, and distribute it  |
- | under the terms of the GNU Affero General Public License           |
- | Version 3, 19 November 2007 and the CiviCRM Licensing Exception.   |
- |                                                                    |
- | CiviCRM is distributed in the hope that it will be useful, but     |
- | WITHOUT ANY WARRANTY; without even the implied warranty of         |
- | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.               |
- | See the GNU Affero General Public License for more details.        |
- |                                                                    |
- | You should have received a copy of the GNU Affero General Public   |
- | License and the CiviCRM Licensing Exception along                  |
- | with this program; if not, contact CiviCRM LLC                     |
- | at info[AT]civicrm[DOT]org. If you have questions about the        |
- | GNU Affero General Public License or the licensing of CiviCRM,     |
- | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
- +--------------------------------------------------------------------+
- */
-
-/**
- *
- * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2015
- */
-
-/**
- * Page for synchronizing CMS users
- */
-class CRM_Admin_Page_CMSUser extends CRM_Core_Page {
-
-  /**
-   * Run the page.
-   *
-   * This method is called after the page is created. It checks for the
-   * type of action and executes that action.
-   * Finally it calls the parent's run method.
-   */
-  public function run() {
-    //if javascript is enabled
-    if (CRM_Utils_Request::retrieve('confirmed', 'Boolean',
-      $this, '', '', 'GET'
-    )
-    ) {
-      CRM_Core_BAO_CMSUser::synchronize();
-      return;
-    }
-    $controller = new CRM_Core_Controller_Simple('CRM_Admin_Form_CMSUser', 'Synchronize CMS Users');
-
-    // set the userContext stack
-    $session = CRM_Core_Session::singleton();
-    $session->pushUserContext(CRM_Utils_System::url('civicrm/admin', 'reset=1'));
-
-    $controller->setEmbedded(TRUE);
-    $controller->process();
-    $controller->run();
-
-    return parent::run();
-  }
-
-}
index bd6233e88657aacc102a0f37c2db9420ac8f622f..2b9dbab19cd62f05a5f30792847548fdf36c7419 100644 (file)
@@ -43,15 +43,11 @@ require_once 'DB.php';
 class CRM_Core_BAO_CMSUser {
 
   /**
-   * Synchronizing cms users with CiviCRM contacts.
+   * Synchronize CMS users with CiviCRM contacts.
    *
-   * @param bool $is_interactive
-   *   Whether to show statuses & perform redirects.
-   *   This behavior is misplaced in the BAO layer, but we'll preserve it to avoid
-   *   contract changes in the middle of the support cycle. In the next major
-   *   release, we should remove & document it.
+   * @return array
    */
-  public static function synchronize($is_interactive = TRUE) {
+  public static function synchronize() {
     $config = CRM_Core_Config::singleton();
 
     // Build an array of rows from UF users table.
@@ -187,34 +183,12 @@ class CRM_Core_BAO_CMSUser {
         }
       }
     }
-    //end of synchronization code
-
-    if ($is_interactive) {
-      $status = ts('Synchronize Users to Contacts completed.');
-      $status .= ' ' . ts('Checked one user record.',
-          array(
-            'count' => $contactCount,
-            'plural' => 'Checked %count user records.',
-          )
-        );
-      if ($contactMatching) {
-        $status .= ' ' . ts('Found one matching contact record.',
-            array(
-              'count' => $contactMatching,
-              'plural' => 'Found %count matching contact records.',
-            )
-          );
-      }
 
-      $status .= ' ' . ts('Created one new contact record.',
-          array(
-            'count' => $contactCreated,
-            'plural' => 'Created %count new contact records.',
-          )
-        );
-      CRM_Core_Session::setStatus($status, ts('Saved'), 'success');
-      CRM_Utils_System::redirect(CRM_Utils_System::url('civicrm/admin', 'reset=1'));
-    }
+    return array(
+      'contactCount' => $contactCount,
+      'contactMatching' => $contactMatching,
+      'contactCreated' => $contactCreated,
+    );
   }
 
   /**
index cdd615205f918b74909c9966d49451169be0505e..da445a8be5867874441dac56bb1fd195f2ca823a 100644 (file)
      <path>civicrm/admin/synchUser</path>
      <title>Synchronize Users to Contacts</title>
      <desc>Automatically create a CiviCRM contact record for each CMS user record.</desc>
-     <page_callback>CRM_Admin_Page_CMSUser</page_callback>
+     <page_callback>CRM_Admin_Form_CMSUser</page_callback>
      <adminGroup>Users and Permissions</adminGroup>
      <icon>admin/small/Synch_user.png</icon>
      <weight>20</weight>
diff --git a/templates/CRM/Admin/Page/CMSUser.tpl b/templates/CRM/Admin/Page/CMSUser.tpl
deleted file mode 100644 (file)
index c2c2056..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-{*
- +--------------------------------------------------------------------+
- | CiviCRM version 4.7                                                |
- +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2015                                |
- +--------------------------------------------------------------------+
- | This file is a part of CiviCRM.                                    |
- |                                                                    |
- | CiviCRM is free software; you can copy, modify, and distribute it  |
- | under the terms of the GNU Affero General Public License           |
- | Version 3, 19 November 2007 and the CiviCRM Licensing Exception.   |
- |                                                                    |
- | CiviCRM is distributed in the hope that it will be useful, but     |
- | WITHOUT ANY WARRANTY; without even the implied warranty of         |
- | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.               |
- | See the GNU Affero General Public License for more details.        |
- |                                                                    |
- | You should have received a copy of the GNU Affero General Public   |
- | License and the CiviCRM Licensing Exception along                  |
- | with this program; if not, contact CiviCRM LLC                     |
- | at info[AT]civicrm[DOT]org. If you have questions about the        |
- | GNU Affero General Public License or the licensing of CiviCRM,     |
- | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
- +--------------------------------------------------------------------+
-*}
-{* this template is for synchronizing CMS user*}
-{include file="CRM/Admin/Form/CMSUser.tpl"}
-