fix a few error, undefined vars, update phpstan, fix adapter data preset on edit phone

This commit is contained in:
osaajani 2023-02-06 04:35:08 +01:00
parent 715afd79ec
commit 47b81c1af3
9 changed files with 34 additions and 64 deletions

View File

@ -73,21 +73,6 @@ namespace controllers\internals;
return $this->get_model()->insert($event); return $this->get_model()->insert($event);
} }
/**
* Gets events for a type, since a date and eventually until a date (both included).
*
* @param int $id_user : User id
* @param string $type : Event type we want
* @param \DateTime $since : Date to get events since
* @param ?\DateTime $until (optional) : Date until wich we want events, if not specified no limit
*
* @return array
*/
public function get_events_by_type_and_date_for_user(int $id_user, string $type, \DateTime $since, ?\DateTime $until = null)
{
$this->get_model()->get_events_by_type_and_date_for_user($id_user, $type, $since, $until);
}
/** /**
* Get the model for the Controller. * Get the model for the Controller.
*/ */

View File

@ -44,11 +44,6 @@ class ExpressionProvider implements ExpressionFunctionProviderInterface
return sprintf('isset(%1$s) && is_a(%1$s, \'DateTime\') && %1$s->format(\'m-d\') == (new \\DateTime())->format(\'m-d\')', $birthdate); return sprintf('isset(%1$s) && is_a(%1$s, \'DateTime\') && %1$s->format(\'m-d\') == (new \\DateTime())->format(\'m-d\')', $birthdate);
}, function ($arguments, DateTime $birthdate) }, function ($arguments, DateTime $birthdate)
{ {
if (!($birthdate ?? false))
{
return false;
}
return $birthdate->format('m-d') == (new DateTime())->format('m-d'); return $birthdate->format('m-d') == (new DateTime())->format('m-d');
}); });

View File

@ -479,6 +479,8 @@ use Monolog\Logger;
$mms_phones = $internal_phone->gets_phone_supporting_mms_for_user($id_user, $internal_phone::MMS_SENDING); $mms_phones = $internal_phone->gets_phone_supporting_mms_for_user($id_user, $internal_phone::MMS_SENDING);
foreach ($mms_phones as &$mms_phone) foreach ($mms_phones as &$mms_phone)
{ {
$limits = $internal_phone->get_limits($mms_phone['id']);
$remaining_volume = PHP_INT_MAX; $remaining_volume = PHP_INT_MAX;
foreach ($limits as $limit) foreach ($limits as $limit)
{ {

View File

@ -137,10 +137,10 @@ class Webhook extends StandardController
$error_code = null; $error_code = null;
$queue = msg_get_queue(QUEUE_ID_WEBHOOK); $queue = msg_get_queue(QUEUE_ID_WEBHOOK);
$success = msg_send($queue, QUEUE_TYPE_WEBHOOK, $message, true, true, $error_code); msg_send($queue, QUEUE_TYPE_WEBHOOK, $message, true, true, $error_code);
return (bool) $success;
} }
return true;
} }
/** /**

View File

@ -372,6 +372,7 @@ namespace controllers\publics;
else else
{ {
$invalid_type = true; $invalid_type = true;
$result = false;
} }
} }

View File

@ -315,25 +315,14 @@ class Phone extends \descartes\Controller
return $this->redirect(\descartes\Router::url('Phone', 'list')); return $this->redirect(\descartes\Router::url('Phone', 'list'));
} }
$adapters = $this->internal_adapter->list_adapters();
foreach ($phones as &$phone) foreach ($phones as &$phone)
{ {
$limits = $this->internal_phone->get_limits($phone['id']); $limits = $this->internal_phone->get_limits($phone['id']);
$phone['limits'] = $limits; $phone['limits'] = $limits;
} }
$phone_data = json_decode($phone['adapter_data'], true);
$adapters = $this->internal_adapter->list_adapters();
foreach ($adapters as &$adapter)
{
foreach ($adapter['meta_data_fields'] as &$data_field)
{
if (key_exists($data_field['name'], $phone_data))
{
$data_field['value'] = $phone_data[$data_field['name']];
}
}
}
$this->render('phone/edit', [ $this->render('phone/edit', [
'phones' => $phones, 'phones' => $phones,
'adapters' => $adapters, 'adapters' => $adapters,

View File

@ -84,32 +84,6 @@ namespace models;
return $this->_select('event', ['id_user' => $id_user], 'at', true, $nb_entry); return $this->_select('event', ['id_user' => $id_user], 'at', true, $nb_entry);
} }
/**
* Gets events for a type, since a date and eventually until a date (both included).
*
* @param int $id_user : User id
* @param string $type : Event type we want
* @param \DateTime $since : Date to get events since
* @param ?\DateTime $until (optional) : Date until wich we want events, if not specified no limit
*
* @return array
*/
public function get_events_by_type_and_date_for_user(int $id_user, string $type, \DateTime $since, ?\DateTime $until = null)
{
$where = [
'id_user' => $id_user,
'type' => $type,
'>=at' => $since->format('Y-m-d H:i:s'),
];
if (null !== $until)
{
$where['<=at'] = $until->format('Y-m-d H:i:s');
}
return $this->_select('event', $where, 'at');
}
/** /**
* Return table name. * Return table name.
*/ */

View File

@ -70,7 +70,10 @@
value="<?= $adapter['meta_classname'] ?>" value="<?= $adapter['meta_classname'] ?>"
data-description="<?php $this->s($adapter['meta_description']); ?>" data-description="<?php $this->s($adapter['meta_description']); ?>"
data-data-fields="<?php $this->s(json_encode($adapter['meta_data_fields'])); ?>" data-data-fields="<?php $this->s(json_encode($adapter['meta_data_fields'])); ?>"
<?= ($phone['adapter'] ?? '') == $adapter['meta_classname'] ? 'selected' : '' ?> <?php if ($phone['adapter'] == $adapter['meta_classname']) { ?>
data-phone-adapter-data="<?php $this->s($phone['adapter_data']); ?>"
selected
<?php } ?>
> >
<?php $this->s($adapter['meta_name']); ?> <?php $this->s($adapter['meta_name']); ?>
</option> </option>
@ -153,12 +156,33 @@
var data_fields = option.attr('data-data-fields'); var data_fields = option.attr('data-data-fields');
data_fields = JSON.parse(data_fields); data_fields = JSON.parse(data_fields);
if (option.attr('data-phone-adapter-data'))
{
var phone_adapter_data = option.attr('data-phone-adapter-data');
phone_adapter_data = JSON.parse(phone_adapter_data);
}
var numbers = []; var numbers = [];
var html = ''; var html = '';
jQuery.each(data_fields, function (index, field) jQuery.each(data_fields, function (index, field)
{ {
value = field.value ? field.value : (field.default_value ? field.default_value : null); if (phone_adapter_data)
{
if (field.name in phone_adapter_data)
{
value = phone_adapter_data[field.name];
}
else
{
value = field.default_value ? field.default_value : null;
}
}
else
{
value = field.default_value ? field.default_value : null;
}
if (field.type == 'phone_number') if (field.type == 'phone_number')
{ {

Binary file not shown.