Updated SMS Task Form with crmSelect2 and prepopulated
authorMaggie <maggie.epps@gmail.com>
Fri, 2 May 2014 00:54:52 +0000 (20:54 -0400)
committerMaggie <maggie.epps@gmail.com>
Fri, 2 May 2014 00:57:20 +0000 (20:57 -0400)
CRM/Contact/Form/Task/SMSCommon.php
CRM/Contact/Page/AJAX.php
templates/CRM/Contact/Form/Task/SMS.tpl

index 22dff6b61a936841f0621f793ad9dfab0f66e1f8..76350522b248780495518bc86539a03b3e3325dc 100644 (file)
@@ -106,8 +106,8 @@ class CRM_Contact_Form_Task_SMSCommon {
       $form->_contactIds = array($cid);
     }
 
-    $to = $form->add('text', 'to', ts('To'), '', TRUE);
-    $form->add('text', 'activity_subject', ts('Name The SMS'), '', TRUE);
+    $to = $form->add('text', 'to', ts('To'), array('class' => 'huge'), TRUE);
+    $form->add('text', 'activity_subject', ts('Name The SMS'), array('class' => 'huge'), TRUE);
 
     $toSetDefault = TRUE;
     if (property_exists($form, '_context') && $form->_context == 'standalone') {
@@ -246,7 +246,7 @@ class CRM_Contact_Form_Task_SMSCommon {
 
         if ($phone) {
           $toArray[] = array(
-            'name' => '"' . $value['sort_name'] . '" &lt;' . $phone . '&gt;',
+            'text' => '"' . $value['sort_name'] . '" (' . $phone . ')',
             'id' => "$contactId::{$phone}",
           );
         }
index 5e35702a1b8f089e2c2ae80137f464221211b74b..610e2b0efd5623a6bc8e45744c3a242f8793ad15 100644 (file)
@@ -716,7 +716,7 @@ LIMIT {$offset}, {$rowCount}
           $dao = CRM_Core_DAO::executeQuery($query);
 
           while ($dao->fetch()) {
-              //working here 
+              //working here
             $result[] = array(
               'text' => '"' . $dao->name . '" <' . $dao->email . '>',
               'id' => (CRM_Utils_Array::value('id', $_GET)) ? "{$dao->id}::{$dao->email}" : '"' . $dao->name . '" <' . $dao->email . '>',
@@ -788,7 +788,7 @@ LIMIT {$offset}, {$rowCount}
 
       while ($dao->fetch()) {
         $result[] = array(
-          'name' => '"' . $dao->name . '" &lt;' . $dao->phone . '&gt;',
+          'text' => '"' . $dao->name . '" (' . $dao->phone . ')',
           'id' => (CRM_Utils_Array::value('id', $_GET)) ? "{$dao->id}::{$dao->phone}" : '"' . $dao->name . '" <' . $dao->phone . '>',
         );
       }
index ca92703a43d5491d6880344f0503940e84c4f7c0..95ce29b86f6ef138175e349a0f4b42bd165807e1 100644 (file)
@@ -49,7 +49,7 @@
     <tr class="crm-contactsms-form-block-recipient">
        <td class="label">{if $single eq false}{ts}Recipient(s){/ts}{else}{$form.to.label}{/if}</td>
        <td>{$form.to.html}
-    <div class="spacer"></div> 
+    <div class="spacer"></div>
       </td>
      </tr>
    <tr><td class="label">{$form.activity_subject.label}</td>
@@ -63,7 +63,7 @@
         <td>{$form.template.html}</td>
     </tr>
 {/if}
-    
+
 </table>
 {include file="CRM/Contact/Form/Task/SMSCommon.tpl"}
 
 {/if}
 
 {literal}
-
-var hintText = "{/literal}{ts escape='js'}Type in a partial or complete name or email address of an existing contact.{/ts}{literal}";
-var sourceDataUrl = "{/literal}{crmURL p='civicrm/ajax/checkphone' h=0 }{literal}";
-var toDataUrl     = "{/literal}{crmURL p='civicrm/ajax/checkphone' q='id=1' h=0 }{literal}";
-
-cj( "#to"     ).tokenInput( toDataUrl,     { prePopulate: toContact,  theme: 'facebook', hintText: hintText });
-cj( 'ul.token-input-list-facebook, div.token-input-dropdown-facebook' ).css( 'width', '450px' );
+CRM.$(function($){
+  var sourceDataUrl = "{/literal}{crmURL p='civicrm/ajax/checkphone' h=0 }{literal}";
+  function phoneSelect(el){
+    $(el).data('api-entity', 'contact').crmSelect2({
+      minimumInputLength: 1,
+      multiple: true,
+      ajax: {
+        url: sourceDataUrl,
+        data: function(term) {
+          return { name: term,};
+        },
+        results: function(response) {
+          return { results: response };
+        }
+      }
+    }).select2('data', toContact);
+  }
+  phoneSelect('#to');
+});
 </script>
 {/literal}
 {include file="CRM/common/formNavigate.tpl"}