File tree Expand file tree Collapse file tree 2 files changed +30
-4
lines changed
wcfsetup/install/files/lib/system/gridView/admin Expand file tree Collapse file tree 2 files changed +30
-4
lines changed Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ public function __construct()
4747 ->renderer (new PhraseColumnRenderer ())
4848 ->filter (new I18nTextFilter ())
4949 ->titleColumn ()
50- ->sortable (),
50+ ->sortable (sortByDatabaseColumn: $ this -> subqueryOptionTitle () ),
5151 GridViewColumn::for ("optionType " )
5252 ->label ("wcf.acp.customOption.optionType " )
5353 ->filter (new SelectFilter (FormOptionHandler::getInstance ()->getSortedOptionTypes ()))
@@ -82,10 +82,23 @@ public function isAccessible(): bool
8282 #[\Override]
8383 protected function createObjectList (): ContactOptionList
8484 {
85- // TODO 18n list
8685 return new ContactOptionList ();
8786 }
8887
88+ private function subqueryOptionTitle (): string
89+ {
90+ $ languageID = WCF ::getLanguage ()->languageID ;
91+
92+ return "
93+ COALESCE((
94+ SELECT languageItemValue
95+ FROM wcf1_language_item
96+ WHERE languageItem = contact_option.optionTitle
97+ AND languageID = {$ languageID }
98+ ), contact_option.optionTitle)
99+ " ;
100+ }
101+
89102 #[\Override]
90103 protected function getInitializedEvent (): ContactOptionGridViewInitialized
91104 {
Original file line number Diff line number Diff line change @@ -46,7 +46,7 @@ public function __construct()
4646 ->filter (new I18nTextFilter ())
4747 ->titleColumn ()
4848 ->renderer (new PhraseColumnRenderer ())
49- ->sortable (),
49+ ->sortable (sortByDatabaseColumn: $ this -> subqueryName () ),
5050 GridViewColumn::for ("email " )
5151 ->label ("wcf.user.email " )
5252 ->renderer (new EmailColumnRenderer ())
@@ -81,10 +81,23 @@ public function isAccessible(): bool
8181 #[\Override]
8282 protected function createObjectList (): ContactRecipientList
8383 {
84- // TODO 18n list
8584 return new ContactRecipientList ();
8685 }
8786
87+ private function subqueryName (): string
88+ {
89+ $ languageID = WCF ::getLanguage ()->languageID ;
90+
91+ return "
92+ COALESCE((
93+ SELECT languageItemValue
94+ FROM wcf1_language_item
95+ WHERE languageItem = contact_recipient.name
96+ AND languageID = {$ languageID }
97+ ), contact_recipient.name)
98+ " ;
99+ }
100+
88101 #[\Override]
89102 protected function getInitializedEvent (): ContactRecipientGridViewInitialized
90103 {
You can’t perform that action at this time.
0 commit comments