From c7a52b19d16fe7262621264c25cde4eebd88995f Mon Sep 17 00:00:00 2001 From: Krivchikov Dmitry Date: Sun, 29 May 2016 21:32:17 +0300 Subject: [PATCH] =?UTF-8?q?ADD=20=D1=80=D0=B5=D0=B4=D0=B0=D0=BA=D1=82?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D1=84=D1=80?= =?UTF-8?q?=D0=B0=D0=B3=D0=BC=D0=B5=D0=BD=D1=82=D0=BE=D0=B2=20=D1=82=D1=80?= =?UTF-8?q?=D0=B5=D0=BA=D0=B0=20-=20=D0=B8=D0=BC=D1=8F=20=D0=B8=20=D0=BE?= =?UTF-8?q?=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/Geo.php | 2 +- controllers/EdittrackController.php | 23 ++++++++++++ controllers/TracksController.php | 1 + models/Tracks.php | 4 +++ views/tracks/edit.php | 56 +++++++++++++++++++++++++++-- 5 files changed, 82 insertions(+), 4 deletions(-) diff --git a/classes/Geo.php b/classes/Geo.php index c70e328..7967b98 100644 --- a/classes/Geo.php +++ b/classes/Geo.php @@ -21,6 +21,6 @@ class Geo static function formatedDistance($distance) { - return $distance > 1000 ? round($distance/1000, 2).'km' : round($distance).'m'; + return $distance > 1000 ? round($distance/1000, 2).'км' : round($distance).'м'; } } diff --git a/controllers/EdittrackController.php b/controllers/EdittrackController.php index 11ac348..1a21b0f 100644 --- a/controllers/EdittrackController.php +++ b/controllers/EdittrackController.php @@ -22,6 +22,29 @@ class EdittrackController extends Controller $trip->name = trim($_POST['name']); $trip->description = trim($_POST['description']); $trip->status = ($_POST['isPublic'] == 'true') ? Trips::STATUS_PUBLIC : Trips::STATUS_PRIVATE; + $trip->json = ''; + $trip->save(); + } + + function actionTrack() + { + $id = intval(App::getParam('id')); + + $track = Tracks::model()->getByPK($id); + if (empty($_POST['name']) || $track->isEmpty()) { + App::error404(); + } + + $trip = Trips::model()->getByPK($track->tripId); + if ($trip->isEmpty() || $trip->owner != App::$user->id) { + App::error404(); + } + + $track->name = trim($_POST['name']); + $track->description = trim($_POST['description']); + $track->save(); + + $trip->json = ''; $trip->save(); } } \ No newline at end of file diff --git a/controllers/TracksController.php b/controllers/TracksController.php index fcf1fd8..96bc0c9 100644 --- a/controllers/TracksController.php +++ b/controllers/TracksController.php @@ -44,6 +44,7 @@ class TracksController extends Controller self::render('/tracks/edit.php', array( 'trip' => $trip, + 'tracks' => Tracks::model()->getAll(array('where' => '`tripId` = ' . $trip->id)), )); } diff --git a/models/Tracks.php b/models/Tracks.php index fbbbf2a..05fc827 100644 --- a/models/Tracks.php +++ b/models/Tracks.php @@ -14,4 +14,8 @@ class Tracks extends Model return new self(); } + function distance() + { + return Geo::formatedDistance($this->distance); + } } diff --git a/views/tracks/edit.php b/views/tracks/edit.php index 4e4b698..61b1ccf 100644 --- a/views/tracks/edit.php +++ b/views/tracks/edit.php @@ -2,9 +2,9 @@ Выйти из редактора -

Редактор треков

- -
+ +

Свойства трека

+
@@ -25,8 +25,34 @@ +
+ +

Фрагменты трека

+
+ + +
+
+
distance() ?>
+
+ +
+
+ +
+
+ +
+
+
+ + + + +
+