| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 | 
							- <?php
 
- namespace App\Http\Controllers\Teacher;
 
- use Illuminate\Routing\Controller as BaseController;
 
- use Illuminate\Support\Facades\Auth;
 
- use Request;
 
- use Illuminate\Pagination\LengthAwarePaginator;
 
- use Illuminate\Pagination\Paginator;
 
- use Illuminate\Support\Collection;
 
- /**
 
-  * 父控制类类
 
-  *
 
-  * @author wangzhoudong <m@9026.com>
 
-  */
 
- abstract class Controller extends BaseController
 
- {
 
-     protected $_user;
 
-     protected $_serviceAdminRole;
 
-     public function __construct() {
 
-         $this->middleware(function ($request, $next) {
 
-             $this->_user = Auth::guard('teacher')->user();
 
-             view()->share('_user',$this->_user);
 
-             return $next($request);
 
-         });
 
-     }
 
-     /**
 
-      * 检测表单篡改
 
-      *
 
-      * @return true|exception
 
-      */
 
-     protected function checkFormHash()
 
-     {
 
-         return (new Formhash())->checkFormHash();
 
-     }
 
-     /**
 
-      * 启用操作日志记录
 
-      */
 
-     protected function setActionLog($extDatas = [])
 
-     {
 
-         return app()->make(Mark::BIND_NAME)->setMarkYes()->setExtDatas($extDatas);
 
-     }
 
-     /**
 
-      * 显示提示消息
 
-      */
 
-     public function showMessage($msg, $links = NULL, $data = NULL, $redirect = true)
 
-     {
 
-         $this->_showMessage($msg, $links, $data, SUCESS_CODE, $redirect);
 
-     }
 
-     /**
 
-      * 显示错误消息
 
-      */
 
-     public function showWarning($msg, $links = NULL, $data = NULL, $redirect = true)
 
-     {
 
-         $this->_showMessage($msg, $links, $data, FAILURE_CODE, $redirect);
 
-     }
 
-     /**
 
-      *    显示消息
 
-      */
 
-     public function _showMessage($msgs, $links, $data, $code, $redirect)
 
-     {
 
-         header("Content-type:text/html;charset=utf-8");
 
-         if(!is_array($msgs)) {
 
-             $msgs = array($msgs);
 
-         }
 
-         $urls = $links;
 
-         if(!is_array($links)) {
 
-             $urls = array();
 
-             if($links) {
 
-                 $urls[0]['url']    =  $links;
 
-             }elseif(isset($_SERVER['HTTP_REFERER'])) {
 
-                 $urls[0]['url'] = $_SERVER['HTTP_REFERER'];
 
-             }else{
 
-                 $urls[0]['url']    =  'javascript:history.back();';
 
-             }
 
-             $urls[0]['title']  = '点击立即跳转';
 
-         }
 
-         if($redirect) {
 
-             $redirect = $urls[0]['url'];
 
-             $redirect = (strstr($redirect, 'javascript:') !== false) ? $redirect : "location.href='{$redirect}'";
 
-         } else {
 
-             $redirect = '';
 
-         }
 
-         if(Request::ajax()){
 
-             $retval['msg'] = $msgs;
 
-             $retval['redirect'] = $redirect;
 
-             $retval['data'] = $data;
 
-             $retval['status'] = $code;
 
-             echo json_encode($retval);exit;
 
-             return ;
 
-         }
 
-         if($links=="refresh") {
 
-             echo "<script>alert('{$msgs[0]}');</script>";
 
-             echo "<script>window.close();</script>";
 
-             echo "<script>opener.location.reload();</script>";
 
-             exit;
 
-         }
 
-         if($code==SUCESS_CODE) {
 
-             $ico = '<i class="fa fa-check"></i>';
 
-             $titleHtml = '信息提示';
 
-         }else{
 
-             $ico = '<i class="fa fa-warning"></i>';
 
-             $titleHtml = '错误警告';
 
-         }
 
-         $msgHtml = '';
 
-         foreach ($msgs as $msg) {
 
-             $msgHtml .= "<li>$msg</li>";
 
-         }
 
-         $urlHtml = '';
 
-         foreach ($urls as $url) {
 
-             if($url['url'] == 'history_back'){
 
-                 $u = "javascript:history.back();";
 
-             }else{
 
-                 $u = $url['url'];
 
-             }
 
-             $urlHtml .= ' <a  class="btn btn-primary"  href="' . $u . '" >' . $url['title'] . '</a>';
 
-         }
 
-         $html ='<!DOCTYPE html>
 
-                 <html>
 
-                 <head>
 
-                     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 
-                     <meta name="renderer" content="webkit">
 
-                     <title>' . $titleHtml .'</title>
 
-                     <link href="/base/css/bootstrap.min.css?v=3.4.0.css"  rel="stylesheet">
 
-                     <link href="/base/css/font-awesome.min.css?v=4.3.0.css"  rel="stylesheet">
 
-                     <link href="/base/css/style.min.css?v=3.0.0.css"  rel="stylesheet">
 
-                     <script type="text/javascript">
 
-                             setTimeout(function(){
 
-                                 var url = "' . $urls[0]['url'] . '";
 
-                                 if(url == "history_back"){
 
-                                     window.location.href = history.back();
 
-                                 }else{
 
- 	                               window.location.href = url;
 
- 	                            }
 
- 	                        }, 3000);
 
-                     </script>
 
-                 </head>
 
-                 
 
-                 <body class="gray-bg">
 
-                     <div class="ibox-content middle-box" style="width:600px; margin-top: 150px;">
 
-                         <h2 class="text-center">' . $ico . ' ' . $titleHtml . '</h2>
 
-                         <ul class="todo-list m-t ui-sortable">
 
-                            ' . $msgHtml . '
 
-                         </ul>
 
-                         <div class="text-center">
 
-                                                                              该页面将在 3 秒钟后自动转向
 
-                         </div>
 
-                         <div class="text-center" style="margin-top: 10px;">
 
-                            ' . $urlHtml . '
 
-                           
 
-                             <a href="javascript:history.back();" class="btn  btn-success">
 
-                                                                                  返回
 
-                             </a>
 
-                         </div>
 
-                     </div>
 
-                 </body>
 
-                 </html>';
 
-         exit($html);
 
-     }
 
-     public function paginate($items, $perPage = 15, $page = null, $options = [])
 
-     {
 
-         $page = $page ?: (Paginator::resolveCurrentPage() ?: 1);
 
-         $items = $items instanceof Collection ? $items : Collection::make($items);
 
-         $options['path'] = $this->getPaginateUrl();
 
-         return new LengthAwarePaginator($items->forPage($page, $perPage), $items->count(), $perPage, $page, $options);
 
-     }
 
-     public function getPaginateUrl()
 
-     {
 
-         $url = url()->full();
 
-         $url_arr = explode('?', $url);
 
-         $url_end = '';
 
-         if(count($url_arr) > 1) {
 
-             $params = explode('&', $url_arr[1]);
 
-             $params_arr = [];
 
-             foreach($params as $key => $value) {
 
-                 $param = explode('=', $value);
 
-                 $params_arr[$param[0]] = count($param) > 1 ? $param[1] : '';
 
-             }
 
-             $id = 0;
 
-             foreach($params_arr as $key => $value) {
 
-                 if($key != 'page') {
 
-                     $prefix = $id == 0 ? '?' : '&';
 
-                     $url_end .= $prefix . $key . '=' . $value;
 
-                     ++$id;
 
-                 }
 
-             }
 
-         }
 
-         return $url_arr[0] . $url_end;
 
-     }
 
- }
 
 
  |