Hier mal wieder ein kleiner Hook der es euch ermöglicht euren Staff - Membern ein Gesicht zu geben.
Mit diesem Hook wird im Ticket - Center statt dem normalen Avatar euer Gravatar angezeigt wenn vorhanden.
Gravatare könnt Ihr hier erstellen diese werden mittlerweile von vielen Seiten und Boards verwendet : Gravatar - Weltweit wiedererkennbare Avatare
Der Hook:
PHP: admin_gravatar.php
<?php
add_hook(
'ClientAreaFooterOutput',
1,
function ($vars) {
$filename = basename($_SERVER['REQUEST_URI'], '.php');
$parseFile = explode('.', $filename);
if ('viewticket' !== $parseFile[0] || !isset($_SESSION['uid'])) {
return null;
}
$staffPhotosArr = [];
$ticketid = $_REQUEST['tid'];
$ticket = Illuminate\Database\Capsule\Manager::table('tbltickets')->where('tid', $ticketid)->first();
$staffList = [];
$admins = Illuminate\Database\Capsule\Manager::table('tbladmins')->get();
foreach ($admins as $admin) {
$name = $admin->firstname.' '.$admin->lastname;
$staffList[$name] = md5($admin->email);
}
if ($ticket->admin) {
$staffPhotosArr[$ticket->admin] = $staffList[$ticket->admin];
}
$replies = Illuminate\Database\Capsule\Manager::table('tblticketreplies')->where('tid', $ticket->id)->where('admin', '!=', '')->get();
foreach ($replies as $reply) {
$staffPhotosArr[$reply->admin] = $staffList[$reply->admin];
}
$staffPhotosArr = json_encode($staffPhotosArr);
if (!$staffPhotosArr) {
$staffPhotosArr = '[]';
}
$output = "<script type=\"text/javascript\">\n var staffTicketResponses = \$(\".staff\").html();\n var staffName;\n var staffPhotos = ".$staffPhotosArr.";\n \$( \".staff\" ).each(function( key ) {\n staffName = \$(this).find(\".name\").text().trim();\n staffPhoto = staffPhotos[staffName];\n staffPhoto = \"<img src=\\\"//www.gravatar.com/avatar/\" + staffPhoto + \".png?s=32/\\\" class=\\\"pull-left\\\" style=\\\"margin: 0 10px 0 10px\\\" />\";\n \n ticketHTML = \$(this).find(\".user\").html();\n ticketHTML = \$(this).find(\".user\").html(ticketHTML.replace(\"<i class=\\\"fa fa-user\\\"></i>\", staffPhoto));\n });";
$output .= '</script>';
return $output;
}
);
?>
Alles anzeigen
Das ganze sieht dann so aus:
Im Admin - Center :
Danke und Gruß
Christian