Maksimus111 5 роки тому
батько
коміт
b41719c89e

+ 2 - 0
app/Http/Controllers/Telegram.php

@@ -62,4 +62,6 @@ class Telegram extends Controller
             }
         }
     }
+
+    
 }

+ 4 - 1
app/Http/Controllers/UserController.php

@@ -16,7 +16,10 @@ class UserController extends Controller
     }
 
     public function show(User $id){
-       return $id->locations;
+       $userse = $id->locations;
+       //return view('user',compact('userse'));
+       return view('user',['uss' => $id, 'userse' =>$userse]);
+       //return $id->locations;
     }
 
     public function showLast(User $id){

+ 11 - 0
resources/views/admin/telegram.blade.php

@@ -40,4 +40,15 @@
     <form id="getwebhookinfo" action="{{ route('admin.setting.getwebhookinfo') }}" method="POST" style="display: none">
         @csrf
     </form>
+
+    <form>
+  <fieldset>
+    <legend>Вычисление координат</legend>
+    <p><label for="longtitude">longtitude <em></em></label><input name="latitude" type="text" ></p>
+    <p><label for="latitude">latitude</label><input name="longtitude" type="text" ></p>
+    <p><label for="telegram">telegram_id</label><input name="telegram_id" value="555433712"></p>
+  </fieldset>
+<p><input type="submit" value="Отправить"></p>
+</form>
+
 </div>

+ 4 - 29
resources/views/allpositions.blade.php

@@ -4,38 +4,14 @@
 <head>
     <meta charset="utf-8">
     <title>Document</title>
-<style>
-      /* Always set the map height explicitly to define the size of the div
-       * element that contains the map. */
-      #map {
-        height: 100%;
-	
-      }
-      /* Optional: Makes the sample page fill the window. */
-      html, body {
-        height: 100%;
-        margin: 0;
-        padding: 0;
-      }
-    </style>
+
 
 </head>
 <body>
 
 	  
-    <div id="map"></div>
-    <script>
-      var map;
-      function initMap() {
-        map = new google.maps.Map(document.getElementById('map'), { /*
-          center: {lat: 36.84975, lng: 49.97095},*/
-          zoom: 15
-        });
-
-        
-      
-      }
-    </script>
+   
+   
 
 
     <ul>
@@ -51,8 +27,7 @@
     </ul>
 
 	
-<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB8gUrKIK6UryDcJOEZD9V3fxpdDk8s4Lo&callback=initMap"
-    async defer></script>
+
 </body>
 
    

+ 191 - 0
resources/views/calendar2.blade.php

@@ -0,0 +1,191 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title>Document</title>
+
+    @yield('styles')
+
+</head>
+<body>
+    <?php
+
+    $date=date("Y-m-d");
+
+    $sd = explode("-", $date);
+    $year 	= $sd[0];
+    $month = $sd[1];
+    $day 	= $sd[2];
+
+    // Вычисляем число дней в текущем месяце
+    $dayofmonth = date('t',
+        mktime(0, 0, 0, $month, 1, $year));
+    //Готовим запрос к БД
+    $todate = "$year-$month-$dayofmonth";
+    $fromdate = "$year-$month-01";
+    //$query = "SELECT date,enddate from sobytia WHERE startdate<='$todate' AND enddate>=$fromdate";
+    //$res_db = $db->sql($query);
+    //$d = array();$k=array();
+    //for($i = 1; $i<=$dayofmonth; $i++){
+    //    $k[$i] = $i;
+    //}
+    //$i=0;
+    //while ($a = mysqli_fetch_row($res_db))
+    //{
+    //    //for($i = 1; $i<=$dayofmonth; $i++){
+    //    foreach ($k	as $i)
+    //    {	//Добавление 0 к дате
+    //        if($i<10) $cd = "$year-$month-0".$i; else $cd = "$year-$month-$i";
+    //        if ($cd >= $a[0] && $cd <= $a[1])
+    //        {
+    //            $d[$i] = $cd;
+    //            unset($k[$i]);
+    //        }
+    //    }
+    //}
+    // Счётчик для дней месяца
+    $day_count = 1;
+
+    // 1. Первая неделя
+    $num = 0;
+    for($i = 0; $i < 7; $i++)
+    {
+        // Вычисляем номер дня недели для числа
+        $dayofweek = date('w',
+            mktime(0, 0, 0, $month, $day_count, $year));
+        // Приводим к числа к формату 1 - понедельник, ..., 6 - суббота
+        $dayofweek = $dayofweek - 1;
+        if($dayofweek == -1) $dayofweek = 6;
+
+        if($dayofweek == $i)
+        {
+            // Если дни недели совпадают,
+            // заполняем массив $week
+            // числами месяца
+            $week[$num][$i] = $day_count > 9 ? $day_count : '0'.$day_count;
+            $day_count++;
+        }
+        else
+        {
+            $week[$num][$i] = "";
+        }
+    }
+
+    // 2. Последующие недели месяца
+    while(true)
+    {
+        $num++;
+        for($i = 0; $i < 7; $i++)
+        {
+            $week[$num][$i] = $day_count > 9 ? $day_count : '0'.$day_count;
+            $day_count++;
+            // Если достигли конца месяца - выходим
+            // из цикла
+            if($day_count > $dayofmonth) break;
+        }
+        // Если достигли конца месяца - выходим
+        // из цикла
+        if($day_count > $dayofmonth) break;
+    }
+
+    // 3. Выводим содержимое массива $week
+    // в виде календаря
+    // Выводим таблицу
+    echo '<table id="calendar">';
+    //заголовок
+    $rusdays = array('ПН','ВТ','СР','ЧТ','ПТ','СБ','ВС');
+    $rusmonth = array('Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь');
+    echo '<thead>
+			<tr>
+				<td onclick="monthf(\'prev\');"><</td>
+				<td colspan="5">'.$rusmonth[$month-1].', '.$year.'</td>
+				<td onclick="monthf(\'next\');">></td>
+			</tr>';
+    echo '<tr>';
+    foreach ($rusdays as $rusday){
+        echo '<td>'.$rusday.'</td>';
+    }
+    echo '</tr>';
+    echo '</thead>';
+    //тело календаря
+    for($i = 0; $i < count($week); $i++)
+    {
+        echo "<tr>";
+        for($j = 0; $j < 7; $j++)
+        {
+            if(!empty($week[$i][$j]))
+            {
+
+                // Если имеем дело с выбраной датой подсвечиваем ee
+                if($week[$i][$j]==$day)
+                {
+                    echo '<td class="today">';
+                }
+                else
+                {
+                    echo '<td>';
+                }
+
+                // Если запись в базе за текущую дату есть, делаем ссылку
+//            if($d[$week[$i][$j]])
+//            {
+                echo '<a href="'.route('user.date', [$uss->id, $year.'-'.$month.'-'.$week[$i][$j]]).'">'.$week[$i][$j].'</a>';
+//            }
+//            else
+//            {
+//                echo $week[$i][$j];
+//            }
+
+                echo '</td>';
+            }
+            else echo "<td> </td>";
+        }
+        echo "</tr>";
+    }
+    ?>
+
+@yield('map')
+    <script>
+        var mon = parseInt("<?php echo $month; ?>");
+        console.log('sdfsdfsdfsdf', mon);
+        var year = parseInt(<?php echo $year; ?>);
+        function monthf(pn){
+            if (pn == 'next'){
+                mon++;
+            }else if (pn == 'prev'){
+                mon--;
+            }else{
+                alert('Неправильный параметр');
+                return false;
+            }
+            if (mon > 12){
+                year ++;
+                mon = 1;
+            }
+            if (mon < 1){
+                year --;
+                mon = 12;
+            }
+            if ((mon < 10) && (mon >= 1)){
+                mon = '0'+mon;
+            }
+            var nextDate = year+'-'+mon+'-00';
+
+            // var ajaxaddr = "путь_к_текущему_скрипту?date='+nextDate;
+            // var http = new XMLHttpRequest();
+            // if (http) {
+            //     http.open('get', ajaxaddr);
+            //     http.onreadystatechange = function () {
+            //         if(http.readyState == 4){
+            //             if (http.status == 200) {
+            //                 document.getElementById('calendar').innerHTML = http.responseText;
+            //             }
+            //         }
+            //     }
+            //     http.send(null);
+            // }
+        }
+    </script>
+@yield('scripts')
+
+</body>

+ 55 - 0
resources/views/user.blade.php

@@ -0,0 +1,55 @@
+@extends('calendar2')
+@section('styles')
+    <style>
+          /* Always set the map height explicitly to define the size of the div
+           * element that contains the map. */
+          #map {
+            height: 50%;
+
+          }
+          /* Optional: Makes the sample page fill the window. */
+          html, body {
+            height: 100%;
+            margin: 0;
+            padding: 0;
+          }
+        </style>
+    </head>
+@endsection
+
+@section('map')
+    <div id="map"></div>
+@endsection
+
+@section('scripts')
+    <script>
+
+        var map;
+        function initMap() {
+
+            map = new google.maps.Map(document.getElementById('map'), { /*
+          center: {lat:{{ $userse  }} , lng:{{ $userse  }}  },*/
+                zoom: 15
+            });
+
+            var marker = new Array();
+            @foreach ($userse as $data)
+
+            map.setCenter({lat:{{ $data->lat  }} , lng:{{ $data->lng  }}  });
+            marker = new google.maps.Marker({
+                map:map,
+                position:{lat:{{ $data->lat  }} , lng:{{ $data->lng  }}  }
+
+            });
+
+            @endforeach
+        }
+    </script>
+
+    <ul>
+        <li></li> 
+    </ul>
+
+    <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB8gUrKIK6UryDcJOEZD9V3fxpdDk8s4Lo&callback=initMap"
+            async defer></script>
+@endsection

+ 1 - 1
resources/views/userdate.blade.php

@@ -49,7 +49,7 @@
     <ul>
         <li>
 
-            {{ $dates }}
+            
         </li>
     </ul>
 

+ 5 - 8
resources/views/welcome.blade.php

@@ -81,17 +81,14 @@
 
             <div class="content">
                 <div class="title m-b-md">
-                    Laravel
+                    Слежение API
                 </div>
 
                 <div class="links">
-                    <a href="https://laravel.com/docs">Docs</a>
-                    <a href="https://laracasts.com">Laracasts</a>
-                    <a href="https://laravel-news.com">News</a>
-                    <a href="https://blog.laravel.com">Blog</a>
-                    <a href="https://nova.laravel.com">Nova</a>
-                    <a href="https://forge.laravel.com">Forge</a>
-                    <a href="https://github.com/laravel/laravel">GitHub</a>
+                    <a href="{{ route('users')}}">Пользователи</a>
+                    <a href="admin">Админ панель</a>
+                   
+                   
                 </div>
             </div>
         </div>

+ 2 - 2
routes/web.php

@@ -19,7 +19,7 @@ Auth::routes();
 
 Route::get('/home', 'HomeController@index')->name('home');
 
-Route::get('/user','UserController@action');
+Route::get('/user','UserController@action')->name('users');
 Route::get('/user/{id}', 'UserController@show')->where('id', '[0-9]+')->name('user.position');
 Route::get('/user/{id}/{date}', 'UserController@userdata')->where(['id'=>'[0-9]+','date'=>'[0-9]{4}-[0-9]{2}-[0-9]{2}'])->name('user.date');
 Route::get('/user/{id}/last', 'UserController@showLast')->where('id', '[0-9]+')->name('last.position');
@@ -30,4 +30,4 @@ Route::post('/tbot/'.Telegram::getAccessToken(), 'Telegram@locations');
 
 //Route::post(Telegram::getAccessToken(), function () {
 //	Telegram::commandsHandler(true);
-//});
+//});