Closed Twiek closed 6 years ago
Deploy ToDo: Alle Labels updaten.
Habe den Code gerade nochmal angeschaut: so funktioniert das leider nicht. Da das Label nur eine methode ist, wird man danach nicht suchen können. Damit das funktioniert, muss es extra eine Datenbankfeld dafür geben, dass in der update operation immer aktualisiert wird (vgl. z.B. Division oder Location).
Also vorausgesetzt, dass man die Contactpeople nach ihren mails durchsuchen können soll.
PRs gemerged - bitte noch den Deploy Todo Code hier ins issue schreiben ;)
Deploy ToDo:
def label_suffix(cp)
"(#{cp.organization&.name}) #{cp.email&.address}"\
" #{cp.area_code_1} #{cp.local_number_1}".squeeze(' ')
end
def position_label(cp)
if cp.position.present?
I18n.t("enumerize.contact_person.position.#{cp.position}") + ': '
else
''
end
end
ContactPerson.all.each do |cp|
position_label = position_label(cp)
label = if cp.first_name.blank? && cp.last_name.blank?
"#{position_label}##{cp.id} #{cp.operational_name} "
else
"#{position_label}##{cp.id} #{cp.first_name}"\
" #{cp.last_name} "
end
cp.update_columns label: label + label_suffix(cp)
end
Nice to have: Telefonnummer.