}
$m = new Members($filters);
- $required_fields = array(
- 'id_adh',
- 'nom_adh',
- 'prenom_adh'
- );
- $list_members = $m->getList(false, $required_fields);
+ $list_members = $m->getSelectizedMembers($this->zdb);
$members = [];
if (count($list_members) > 0) {
- foreach ($list_members as $member) {
- $pk = Adherent::PK;
- $sname = mb_strtoupper($member->nom_adh, 'UTF-8') .
- ' ' . ucwords(mb_strtolower($member->prenom_adh, 'UTF-8')) .
- ' (' . $member->id_adh . ')';
+ foreach ($list_members as $pk => $member) {
$members[] = [
- 'value' => $member->$pk,
- 'text' => $sname
+ 'value' => $pk,
+ 'text' => $member
];
}
}
$params['type_cotis_options'] = $contributions_types;
// members
- $members = [];
$m = new Members();
- $required_fields = array(
- 'id_adh',
- 'nom_adh',
- 'prenom_adh'
+ $members = $m->getSelectizedMembers(
+ $this->zdb,
+ isset($contrib) && $contrib->member > 0 ? $contrib->member : null
);
- $list_members = $m->getList(false, $required_fields);
-
- if (count($list_members) > 0) {
- foreach ($list_members as $member) {
- $pk = Adherent::PK;
- $sname = mb_strtoupper($member->nom_adh, 'UTF-8') .
- ' ' . ucwords(mb_strtolower($member->prenom_adh, 'UTF-8')) .
- ' (' . $member->id_adh . ')';
- $members[$member->$pk] = $sname;
- }
- }
$params['members'] = [
'filters' => $m->getFilters(),
'count' => $m->getCount()
];
- //check if current attached member is part of the list
- if (isset($contrib)
- && $contrib->member > 0
- && !isset($members[$contrib->member])
- ) {
- $members[$contrib->member] = Adherent::getSName($this->zdb, $contrib->member, true);
- }
-
if (count($members)) {
$params['members']['list'] = $members;
}
}
// members
- $members = [];
$m = new Members();
- $required_fields = array(
- 'id_adh',
- 'nom_adh',
- 'prenom_adh'
+ $members = $m->getSelectizedMembers(
+ $this->zdb,
+ $trans->member > 0 ? $trans->member : null
);
- $list_members = $m->getList(false, $required_fields);
-
- if (count($list_members) > 0) {
- foreach ($list_members as $member) {
- $pk = Adherent::PK;
- $sname = mb_strtoupper($member->nom_adh, 'UTF-8') .
- ' ' . ucwords(mb_strtolower($member->prenom_adh, 'UTF-8')) .
- ' (' . $member->id_adh . ')';
- $members[$member->$pk] = $sname;
- }
- }
$params['members'] = [
'filters' => $m->getFilters(),
];
$params['autocomplete'] = true;
- //check if current attached member is part of the list
- if (isset($trans) && $trans->member > 0) {
- if (!isset($members[$trans->member])) {
- $members =
- [$trans->member => Adherent::getSName($this->zdb, $trans->member, true)] +
- $members
- ;
- }
- }
-
if (count($members)) {
$params['members']['list'] = $members;
}
$spam_img = $spam->getImage();
// members
- $members = [];
$m = new Members();
- $required_fields = array(
- 'id_adh',
- 'nom_adh',
- 'prenom_adh'
+ $members = $m->getSelectizedMembers(
+ $this->zdb,
+ $member->hasParent() ? $member->parent->id : null
);
- $list_members = $m->getList(false, $required_fields);
-
- if (count($list_members) > 0) {
- foreach ($list_members as $lmember) {
- $pk = Adherent::PK;
- $sname = mb_strtoupper($lmember->nom_adh, 'UTF-8') .
- ' ' . ucwords(mb_strtolower($lmember->prenom_adh, 'UTF-8')) .
- ' (' . $lmember->id_adh . ')';
- $members[$lmember->$pk] = $sname;
- }
- }
$params['members'] = [
'filters' => $m->getFilters(),
'count' => $m->getCount()
];
- //check if current attached member is part of the list
- if ($member->hasParent()) {
- if (!isset($members[$member->parent->id])) {
- $members =
- [$member->parent->id => Adherent::getSName($this->zdb, $member->parent->id)] +
- $members
- ;
- }
- }
-
if (count($members)) {
$params['members']['list'] = $members;
}
);
// members
- $members = [];
$m = new Members();
- $required_fields = array(
- 'id_adh',
- 'nom_adh',
- 'prenom_adh'
+ $members = $m->getSelectizedMembers(
+ $this->zdb,
+ $member->hasParent() ? $member->parent->id : null
);
- $list_members = $m->getList(false, $required_fields);
-
- if (count($list_members) > 0) {
- foreach ($list_members as $lmember) {
- $pk = Adherent::PK;
- $sname = mb_strtoupper($lmember->nom_adh, 'UTF-8') .
- ' ' . ucwords(mb_strtolower($lmember->prenom_adh, 'UTF-8')) .
- ' (' . $lmember->id_adh . ')';
- $members[$lmember->$pk] = $sname;
- }
- }
$route_params['members'] = [
'filters' => $m->getFilters(),
'count' => $m->getCount()
];
- //check if current attached member is part of the list
- if ($member->hasParent()) {
- if (!isset($members[$member->parent->id])) {
- $members =
- [$member->parent->id => Adherent::getSName($this->zdb, $member->parent->id)] +
- $members
- ;
- }
- }
-
if (count($members)) {
$route_params['members']['list'] = $members;
}
/**
* Retrieve Full name and surname for the specified member id
*
- * @param Db $zdb Database instance
- * @param integer $id member id
- * @param boolean $wid Add member id
+ * @param Db $zdb Database instance
+ * @param integer $id Member id
+ * @param boolean $wid Add member id
+ * @param boolean $wnick Add member nickname
*
* @return string formatted Name and Surname
*/
- public static function getSName($zdb, $id, $wid = false)
+ public static function getSName($zdb, $id, $wid = false, $wnick = false)
{
try {
$select = $zdb->select(self::TABLE);
$row->nom_adh,
$row->prenom_adh,
false,
- ($wid === true ? $row->id_adh : false)
+ ($wid === true ? $row->id_adh : false),
+ ($wnick === true ? $row->pseudo_adh : false)
);
} catch (\Exception $e) {
Analog::log(
* @param string $surname Mmeber surname
* @param false|Title $title Member title to show or false
* @param false|integer $id Member id to display or false
+ * @param false|string $nick Member nickname to display or false
*
* @return string
*/
- public static function getNameWithCase($name, $surname, $title = false, $id = false)
+ public static function getNameWithCase($name, $surname, $title = false, $id = false, $nick = false)
{
$str = '';
$str .= mb_strtoupper($name, 'UTF-8') . ' ' .
ucwords(mb_strtolower($surname, 'UTF-8'), " \t\r\n\f\v-_|");
+ if ($id !== false || $nick !== false) {
+ $str .= ' (';
+ }
+ if ($nick !== false) {
+ $str .= $nick;
+ }
if ($id !== false) {
- $str .= ' (' . $id . ')';
+ if ($nick !== false) {
+ $str .= ', ';
+ }
+ $str .= $id;
+ }
+ if ($id !== false || $nick !== false) {
+ $str .= ')';
}
return $str;
}
{
return $this->filters;
}
+
+ /**
+ * Get members list to instanciate dropdowns
+ *
+ * @param Db $zdb Database instance
+ * @param integer $current Current member
+ *
+ * @return array
+ */
+ public function getSelectizedMembers(Db $zdb, $current = null)
+ {
+ $members = [];
+ $required_fields = array(
+ 'id_adh',
+ 'nom_adh',
+ 'prenom_adh',
+ 'pseudo_adh'
+ );
+ $list_members = $this->getList(false, $required_fields);
+
+ if (count($list_members) > 0) {
+ foreach ($list_members as $member) {
+ $pk = Adherent::PK;
+
+ $members[$member->$pk] = Adherent::getNameWithCase(
+ $member->nom_adh,
+ $member->prenom_adh,
+ false,
+ $member->id_adh,
+ $member->pseudo_adh
+ );
+ }
+ }
+
+ //check if current attached member is part of the list
+ if ($current !== null && !isset($members[$current])) {
+ $members =
+ [$current => Adherent::getSName($zdb, $current, true, true)] +
+ $members
+ ;
+ }
+
+ return $members;
+ }
}
<label for="id_adh" class="bline" >{_T string="Originator:"}</label>
<select name="id_adh" id="id_adh" class="nochosen"{if $required.id_adh eq 1} required="required"{/if}>
{if !$transaction->member}
- <option>{_T string="-- select a name --"}</option>
+ <option value="">{_T string="-- select a name --"}</option>
{/if}
{foreach $members.list as $k=>$v}
<option value="{$k}"{if $transaction->member == $k} selected="selected"{/if}>{$v}</option>