Skip to content
Snippets Groups Projects
Commit 3c1c4f1f authored by Thomas Hackl's avatar Thomas Hackl
Browse files

Resolve "I18N für die Datenfelder der Tabelle user_inst"

Closes #605

Merge request studip/studip!609
parent a47ef634
No related branches found
No related tags found
No related merge requests found
......@@ -339,19 +339,20 @@ class Settings_StatusgruppenController extends Settings_SettingsController
}
if ($this->shallChange('', 'institute_data')) {
$query = "UPDATE user_inst
SET raum = ?, sprechzeiten = ?, Telefon = ?, Fax = ?
WHERE Institut_id = ? AND user_id = ?";
$statement = DBManager::get()->prepare($query);
$statement->execute([
Request::get('raum'),
Request::get('sprech'),
Request::get('tel'),
Request::get('fax'),
$id,
$this->user->user_id,
]);
if ($statement->rowCount() > 0) {
$entry = InstituteMember::findByUserAndInstitute($this->user->user_id, $id);
if (!$entry) {
$entry = new InstituteMember();
$entry->institut_id = $id;
$entry->user_id = $this->user->user_id;
}
$entry->raum = Request::i18n('raum');
$entry->sprechzeiten = Request::i18n('sprech');
$entry->telefon = Request::i18n('tel');
$entry->fax = Request::i18n('fax');
if ($entry->store() !== false) {
$changed = true;
$success[] = sprintf(_('Ihre Daten an der Einrichtung %s wurden geändert.'), htmlReady(Request::get('name')));
......
......@@ -25,27 +25,23 @@ $entries = (array)DataFieldEntry::getDataFieldEntries([$user->user_id, $inst_id]
</label>
<label>
<?= _('Raum') ?>
<input type="text" name="raum" id="raum"
value="<?= htmlReady($institute['raum']) ?>"
<? if ($locked) echo 'disabled'; ?>>
<?= I18N::input('raum', $institute['raum'],
['id' => 'raum', 'disabled' => $locked ? true : false]) ?>
</label>
<label>
<?= _('Sprechzeit') ?>
<input type="text" name="sprech" id="sprech"
value="<?= htmlReady($institute['sprechzeiten']) ?>"
<? if ($locked) echo 'disabled'; ?>>
<?= I18N::input('sprech', $institute['sprechzeiten'],
['id' => 'sprech', 'disabled' => $locked ? true : false]) ?>
</label>
<label>
<?= _('Telefon') ?>
<input type="tel" name="tel"
value="<?= htmlReady($institute['telefon']) ?>"
<? if ($locked) echo 'disabled'; ?>>
<?= I18N::input('tel', $institute['telefon'],
['id' => 'telefon', 'disabled' => $locked ? true : false]) ?>
</label>
<label>
<?= _('Fax') ?>
<input type="tel" name="fax"
value="<?= htmlReady($institute['fax']) ?>"
<? if ($locked) echo 'disabled'; ?>>
<?= I18N::input('fax', $institute['fax'],
['id' => 'fax', 'disabled' => $locked ? true : false]) ?>
</label>
<? foreach ($entries as $id => $entry): ?>
......
......@@ -74,6 +74,11 @@ class InstituteMember extends SimpleORMap implements PrivacyObject
$config['additional_fields']['institute_name'] = [];
$config['i18n_fields']['raum'] = true;
$config['i18n_fields']['sprechzeiten'] = true;
$config['i18n_fields']['telefon'] = true;
$config['i18n_fields']['fax'] = true;
$config['registered_callbacks']['after_delete'][] = function ($member) {
$institute = $member->institute;
$user_id = $member->user_id;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment