Skip to content
Snippets Groups Projects
Unverified Commit bc268dcb authored by colemanw's avatar colemanw Committed by GitHub
Browse files

Merge pull request #21203 from eileenmcnaughton/master

5.41 to master (conflicts resolved)
parents c1d2ae8a c9a0d59b
Branches
Tags
No related merge requests found
......@@ -1014,7 +1014,7 @@ class Api4SelectQuery {
try {
$joinPath = $joiner->getPath($explicitJoin['table'] ?? $this->getFrom(), $pathArray);
}
catch (\Exception $e) {
catch (\API_Exception $e) {
// Because the select clause silently ignores unknown fields, this function shouldn't throw exceptions
return;
}
......
......@@ -9,8 +9,6 @@
*}
{*common template for compose sms*}
{crmScript file=bower_components/sms-counter/sms_counter.min.js region=html-header}
<div class="crm-accordion-wrapper crm-plaint_text_sms-accordion ">
<div class="crm-accordion-header">
{$form.sms_text_message.label}
......@@ -47,41 +45,43 @@
{literal}
<script type="text/javascript">
{/literal}{if $max_sms_length}{literal}
maxCharInfoDisplay();
CRM.loadScript(CRM.config.resourceBase + 'bower_components/sms-counter/sms_counter.min.js').done(function () {
maxCharInfoDisplay();
CRM.$('#sms_text_message').bind({
change: function() {
maxLengthMessage();
},
keyup: function() {
maxCharInfoDisplay();
}
});
CRM.$('#sms_text_message').bind({
change: function() {
maxLengthMessage();
},
keyup: function() {
maxCharInfoDisplay();
}
});
function maxLengthMessage()
{
var len = CRM.$('#sms_text_message').val().length;
var maxLength = {/literal}{$max_sms_length}{literal};
if (len > maxLength) {
CRM.$('#sms_text_message').crmError({/literal}'{ts escape="js" 1=$max_sms_length}SMS body exceeding limit of %1 characters{/ts}'{literal});
return false;
}
return true;
}
function maxLengthMessage()
{
var len = CRM.$('#sms_text_message').val().length;
var maxLength = {/literal}{$max_sms_length}{literal};
if (len > maxLength) {
CRM.$('#sms_text_message').crmError({/literal}'{ts escape="js" 1=$max_sms_length}SMS body exceeding limit of %1 characters{/ts}'{literal});
return false;
}
return true;
}
function maxCharInfoDisplay(){
var maxLength = {/literal}{$max_sms_length}{literal};
var enteredText = SmsCounter.count(CRM.$('#sms_text_message').val());
var count = enteredText.length;
var segments = enteredText.messages;
function maxCharInfoDisplay(){
var maxLength = {/literal}{$max_sms_length}{literal};
var enteredText = SmsCounter.count(CRM.$('#sms_text_message').val());
var count = enteredText.length;
var segments = enteredText.messages;
if( count < 0 ) {
CRM.$('#sms_text_message').val(CRM.$('#sms_text_message').val().substring(0, maxLength));
count = 0;
}
var message = "{/literal}{$char_count_message}{literal}"
CRM.$('#char-count-message').text(message.replace('%1', maxLength).replace('%2', count).replace('%3', segments));
}
if( count < 0 ) {
CRM.$('#sms_text_message').val(CRM.$('#sms_text_message').val().substring(0, maxLength));
count = 0;
}
var message = "{/literal}{$char_count_message}{literal}"
CRM.$('#char-count-message').text(message.replace('%1', maxLength).replace('%2', count).replace('%3', segments));
}
});
{/literal}{/if}{literal}
</script>
......
......@@ -408,4 +408,22 @@ class FkJoinTest extends UnitTestCase {
$this->assertEquals('TesterCo', $emailGet['contact_id.employer_id.display_name']);
}
public function testDeprecatedJoins() {
$message = '';
try {
\Civi\Api4\Email::get(FALSE)
->addWhere('contact.first_name', '=', 'Peter')
->addWhere('contact.last_name', '=', '')
->addWhere('contact.is_deleted', '=', 0)
->addWhere('contact.is_deceased', '=', 0)
->addWhere('email', '=', '')
->addWhere('is_primary', '=', TRUE)
->setSelect(['contact_id'])->execute();
}
catch (\Exception $e) {
$message = $e->getMessage();
}
$this->assertStringContainsString("Deprecated join alias 'contact' used in APIv4 get. Should be changed to 'contact_id'", $message);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment