Skip to content
Snippets Groups Projects
Commit 092954b7 authored by Moritz Strohm's avatar Moritz Strohm
Browse files

TandemPlugin: Send mail to tandem admins on tandem termination, added link to...

TandemPlugin: Send mail to tandem admins on tandem termination, added link to 'my tandems' page at start widget

git-svn-id: https://server2.data-quest.de/svn/studip-plugins/TandemPlugin@2502 6a1f69d7-6018-4d13-bf90-b098e98c258d
parent be9ee4a1
No related branches found
No related tags found
No related merge requests found
......@@ -365,6 +365,9 @@ class TandemManager
$target_language = '';
$request_profile = clone $pair->request;
$offer_profile = clone $pair->offer;
if($pair->request->user_id == $user->id) {
$target_language = $pair->request->target_language;
$message_target_user = $pair->offer->user;
......@@ -421,7 +424,82 @@ class TandemManager
'1'
);
//send mail to TandemAdmin users:
//Get the tandem admin role object first:
$tandem_admin_role = null;
foreach(RolePersistence::getAllRoles() as $role) {
if($role->rolename == 'TandemAdmin') {
$tandem_admin_role = $role;
break;
}
}
if($tandem_admin_role) {
//We have the tandem admin role object and can proceed.
$tandem_admins = User::findBySql(
'INNER JOIN roles_user ON auth_user_md5.user_id = roles_user.userid
WHERE roleid = :role_id',
[
'role_id' => $tandem_admin_role->roleid
]
);
foreach($tandem_admins as $tandem_admin) {
$admin_message_title = '';
$admin_message_text = '';
if($tandem_admin->preferred_language == 'en_GB') {
$admin_message_title = 'A tandem has been terminated!';
$admin_message_text = sprintf(
'%s and %s have terminated their tandem for the language combination %s - %s!',
$request_profile->user->getFullName(),
$offer_profile->user->getFullName(),
($request_profile->target_language->name_eng
? $request_profile->target_language->name_eng
: $request_profile->target_language->name),
($offer_profile->target_language->name_eng
? $offer_profile->target_language->name_eng
: $offer_profile->target_language->name)
);
} else {
$admin_message_title = 'Ein Tandem wurde aufgelöst!';
$admin_message_text = sprintf(
'%s und %s haben ihr Tandem für die Sprachkombination %s - %s aufgelöst!',
$request_profile->user->getFullName(),
$offer_profile->user->getFullName(),
($request_profile->target_language->name_ger
? $request_profile->target_language->name_ger
: $request_profile->target_language->name),
($offer_profile->target_language->name_ger
? $offer_profile->target_language->name_ger
: $offer_profile->target_language->name)
);
}
$m = new messaging();
//send mail (with e-mail)
$m->insert_message(
$admin_message_text,
$tandem_admin['username'],
'____%system%____',
false,
false,
'1',
false,
$admin_message_title,
'1'
);
}
}
return true;
}
return false;
......
<section class="contentbox">
<section>
<a href="<?= PluginEngine::getUrl('tandemplugin/my_tandems/index') ?>">
<a href="<?= PluginEngine::getLink('tandemplugin/my_tandems/index') ?>">
<? if($never_used): ?>
<?= dgettext('TandemPlugin', 'Hier klicken, um ein Sprachtandem zu finden!') ?>
<? else: ?>
......@@ -41,4 +41,11 @@
<? endif ?>
</a>
</section>
<? if(count($profiles) > 0): ?>
<section>
<a href="<?= PluginEngine::getLink('tandemplugin/my_tandems/index') ?>">
<?= dgettext('TandemPlugin', 'Hier klicken, um weitere Sprachtandems anzulegen!') ?>
</a>
</section>
<? endif ?>
</section>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment