Admin: Fix query in system announcements

pull/5095/head
Yannick Warnier 2 years ago
parent 9ffc30aa72
commit e5a7ab129b
  1. 8
      public/main/admin/system_announcements.php
  2. 19
      public/main/inc/lib/system_announcements.lib.php

@ -80,7 +80,7 @@ function showCareer() {
); );
$.each(data, function(index, value) { $.each(data, function(index, value) {
$("#promotion_id").append( $("#promotion_id").append(
$("<option>", {value: value.id, text: value.name}) $("<option>", {value: value.id, text: value.title})
); );
}); });
$("#promotion_id").selectpicker("refresh"); $("#promotion_id").selectpicker("refresh");
@ -210,7 +210,7 @@ if ($action_todo) {
if ($allowCareers) { if ($allowCareers) {
$career = new Career(); $career = new Career();
$careerList = $career->get_all(); $careerList = $career->get_all();
$list = array_column($careerList, 'name', 'id'); $list = array_column($careerList, 'title', 'id');
$form->addSelect( $form->addSelect(
'career_id', 'career_id',
@ -229,7 +229,7 @@ if ($action_todo) {
$promotion = new Promotion(); $promotion = new Promotion();
$promotion = $promotion->get($values['promotion_id']); $promotion = $promotion->get($values['promotion_id']);
if ($promotion) { if ($promotion) {
$options = [$promotion['id'] => $promotion['name']]; $options = [$promotion['id'] => $promotion['title']];
$display = 'block'; $display = 'block';
} }
} }
@ -287,7 +287,7 @@ if ($action_todo) {
$group_list = $userGroup->get_all(); $group_list = $userGroup->get_all();
if (!empty($group_list)) { if (!empty($group_list)) {
$group_list = array_column($group_list, 'name', 'id'); $group_list = array_column($group_list, 'title', 'id');
$group_list[0] = get_lang('All'); $group_list[0] = get_lang('All');
$form->addSelect( $form->addSelect(
'group', 'group',

@ -297,25 +297,34 @@ class SystemAnnouncementManager
/** /**
* Gets the groups of this announce. * Gets the groups of this announce.
* *
* @param int announcement id * @param int $announcement_id announcement id
* *
* @return array array of group id * @return array array of group id
* @throws Exception
*/ */
public static function get_announcement_groups($announcement_id) public static function get_announcement_groups(int $announcement_id): array
{ {
if (empty($announcement_id)) {
return [];
}
$tbl_announcement_group = Database::get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS_GROUPS); $tbl_announcement_group = Database::get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS_GROUPS);
$tbl_group = Database::get_main_table(TABLE_USERGROUP); $tbl_group = Database::get_main_table(TABLE_USERGROUP);
//first delete all group associations for this announcement //first delete all group associations for this announcement
$sql = "SELECT $sql = "SELECT
g.id as group_id, g.id as group_id,
g.name as group_name g.title as group_name
FROM $tbl_group g , $tbl_announcement_group ag FROM $tbl_group g , $tbl_announcement_group ag
WHERE WHERE
announcement_id =".intval($announcement_id)." AND announcement_id = $announcement_id AND
ag.group_id = g.id"; ag.group_id = g.id";
$res = Database::query($sql); $res = Database::query($sql);
return Database::fetch_array($res); $array = Database::fetch_array($res);
if (!empty($array)) {
return $array;
}
return [];
} }
/** /**

Loading…
Cancel
Save