| 
									
										
										
										
											2017-05-13 16:40:33 -06:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | dieifnotloggedin(); | 
					
						
							|  |  |  | addMultiLangStrings(["en_us" => [ | 
					
						
							|  |  |  |         "messages" => "Messages", | 
					
						
							|  |  |  |         "no messages" => "No messages found." | 
					
						
							|  |  |  |     ] | 
					
						
							|  |  |  | ]); | 
					
						
							|  |  |  | $APPS["taskfloor_messages"]["i18n"] = TRUE; | 
					
						
							|  |  |  | $APPS["taskfloor_messages"]["title"] = "messages"; | 
					
						
							|  |  |  | $APPS["taskfloor_messages"]["icon"] = "comments"; | 
					
						
							| 
									
										
										
										
											2017-06-19 00:54:49 -06:00
										 |  |  | $APPS["taskfloor_messages"]["type"] = "deep-purple"; | 
					
						
							| 
									
										
										
										
											2017-10-10 12:59:57 -06:00
										 |  |  | $content = ""; | 
					
						
							| 
									
										
										
										
											2017-07-03 03:27:08 -06:00
										 |  |  | 
 | 
					
						
							|  |  |  | use GuzzleHttp\Exception\ClientException; | 
					
						
							| 
									
										
										
										
											2017-05-13 16:40:33 -06:00
										 |  |  | try { | 
					
						
							|  |  |  |     $client = new GuzzleHttp\Client(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $response = $client->request('POST', TASKFLOOR_API, ['form_params' => [ | 
					
						
							|  |  |  |             'action' => "getmsgs", | 
					
						
							|  |  |  |             'username' => $_SESSION['username'], | 
					
						
							|  |  |  |             'password' => $_SESSION['password'], | 
					
						
							|  |  |  |             'max' => 5 | 
					
						
							|  |  |  |     ]]); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $resp = json_decode($response->getBody(), TRUE); | 
					
						
							|  |  |  |     if ($resp['status'] == "OK") { | 
					
						
							|  |  |  |         if (count($resp['messages']) > 0) { | 
					
						
							|  |  |  |             $content = '<div class="list-group">'; | 
					
						
							|  |  |  |             foreach ($resp['messages'] as $msg) { | 
					
						
							|  |  |  |                 $content .= '<div class="list-group-item">'; | 
					
						
							|  |  |  |                 $content .= $msg['text']; | 
					
						
							|  |  |  |                 $fromuser = $msg['from']['username']; | 
					
						
							|  |  |  |                 $fromname = $msg['from']['name']; | 
					
						
							|  |  |  |                 $touser = $msg['to']['username']; | 
					
						
							|  |  |  |                 $toname = $msg['to']['name']; | 
					
						
							|  |  |  |                 $content .= <<<END | 
					
						
							|  |  |  | <br /> | 
					
						
							|  |  |  | <span class="small"> | 
					
						
							|  |  |  |     <span data-toggle="tooltip" title="$fromuser">$fromname</span> | 
					
						
							|  |  |  |     <i class="fa fa-caret-right"></i> | 
					
						
							|  |  |  |     <span data-toggle="tooltip" title="$touser">$toname</span> | 
					
						
							|  |  |  | </span> | 
					
						
							|  |  |  | END; | 
					
						
							|  |  |  |                 $content .= '</div>'; | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             $content .= "</div>"; | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |             $content = "<div class=\"alert alert-info\">" . lang("no messages", false) . "</div>"; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2017-07-03 03:27:08 -06:00
										 |  |  |     $content .= '<a href="' . TASKFLOOR_HOME . '" class="btn btn-primary btn-block mobile-app-hide">' . lang("open app", false) . '  <i class="fa fa-external-link-square"></i></a>'; | 
					
						
							|  |  |  |     $APPS["taskfloor_messages"]["content"] = $content; | 
					
						
							|  |  |  | } catch (ClientException $e) { | 
					
						
							|  |  |  |     if ($e->getResponse()->getStatusCode() == 403) { | 
					
						
							|  |  |  |         unset($APPS['taskfloor_messages']); | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2017-05-13 16:40:33 -06:00
										 |  |  | } catch (Exception $e) { | 
					
						
							|  |  |  |     $content = "<div class=\"alert alert-danger\">" . lang("error loading widget", false) . "  " . $e->getMessage() . "</div>"; | 
					
						
							| 
									
										
										
										
											2017-07-03 03:27:08 -06:00
										 |  |  |     $content .= '<a href="' . TASKFLOOR_HOME . '" class="btn btn-primary btn-block mobile-app-hide">' . lang("open app", false) . '  <i class="fa fa-external-link-square"></i></a>'; | 
					
						
							|  |  |  |     $APPS["taskfloor_messages"]["content"] = $content; | 
					
						
							| 
									
										
										
										
											2017-05-13 16:40:33 -06:00
										 |  |  | } | 
					
						
							|  |  |  | ?>
 |