Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 84DC1200BB8 for ; Fri, 28 Oct 2016 22:04:49 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 83C2E160AE4; Fri, 28 Oct 2016 20:04:49 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id B9CFA160B03 for ; Fri, 28 Oct 2016 22:04:48 +0200 (CEST) Received: (qmail 27199 invoked by uid 500); 28 Oct 2016 20:04:47 -0000 Mailing-List: contact commits-help@airavata.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@airavata.apache.org Delivered-To: mailing list commits@airavata.apache.org Received: (qmail 27064 invoked by uid 99); 28 Oct 2016 20:04:47 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 28 Oct 2016 20:04:47 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 91417F1597; Fri, 28 Oct 2016 20:04:47 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: smarru@apache.org To: commits@airavata.apache.org Date: Fri, 28 Oct 2016 20:04:54 -0000 Message-Id: In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [08/18] airavata-php-gateway git commit: AIRAVATA-2152 Enable reservation start/end time archived-at: Fri, 28 Oct 2016 20:04:49 -0000 AIRAVATA-2152 Enable reservation start/end time Also factored out UTC<->local time conversion to functions in CommonUtilities.php. Fixed a bug in the logic with timezones with negative offset; the minus sign wasn't being handled in strtotime so I'm using the absolute value instead. Project: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/commit/18a98fd2 Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/18a98fd2 Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/18a98fd2 Branch: refs/heads/develop Commit: 18a98fd27475dd7b3e918e3b20d6c7de26dd894c Parents: 17425c0 Author: Marcus Christie Authored: Wed Oct 19 16:44:48 2016 -0400 Committer: Marcus Christie Committed: Fri Oct 28 15:04:30 2016 -0400 ---------------------------------------------------------------------- app/libraries/CRUtilities.php | 8 ++---- app/libraries/CommonUtilities.php | 26 ++++++++++++++++++ app/libraries/URPUtilities.php | 8 ++---- .../account/user-compute-resources.blade.php | 29 ++++++++++++++++++++ .../compute-resource-preferences.blade.php | 9 ++---- .../user-compute-resource-preferences.blade.php | 9 ++---- 6 files changed, 63 insertions(+), 26 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/18a98fd2/app/libraries/CRUtilities.php ---------------------------------------------------------------------- diff --git a/app/libraries/CRUtilities.php b/app/libraries/CRUtilities.php index fad1ad2..34066c1 100755 --- a/app/libraries/CRUtilities.php +++ b/app/libraries/CRUtilities.php @@ -524,15 +524,11 @@ class CRUtilities public static function add_or_update_CRP($inputs) { - $timeDifference = Session::get("user_timezone"); - $addOrSubtract = "-"; - if( $timeDifference > 0) - $addOrSubtract = "+"; $inputs = Input::all(); if( $inputs["reservationStartTime"] != "") - $inputs["reservationStartTime"] = strtotime( $addOrSubtract . " " . Session::get("user_timezone") . " hours", strtotime( $inputs["reservationStartTime"]) ) * 1000; + $inputs["reservationStartTime"] = CommonUtilities::convertLocalToUTC($inputs["reservationStartTime"]) * 1000; if( $inputs["reservationEndTime"] != "") - $inputs["reservationEndTime"] = strtotime( $addOrSubtract . " " . Session::get("user_timezone") . " hours", strtotime($inputs["reservationEndTime"]) ) * 1000; + $inputs["reservationEndTime"] = CommonUtilities::convertLocalToUTC($inputs["reservationEndTime"]) * 1000; $computeResourcePreferences = new computeResourcePreference($inputs); http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/18a98fd2/app/libraries/CommonUtilities.php ---------------------------------------------------------------------- diff --git a/app/libraries/CommonUtilities.php b/app/libraries/CommonUtilities.php index 9ec209b..94e8626 100644 --- a/app/libraries/CommonUtilities.php +++ b/app/libraries/CommonUtilities.php @@ -373,5 +373,31 @@ class CommonUtilities } }; } + + /** + * Convert from UTC time to local time. Units are seconds since Unix Epoch. + */ + public static function convertUTCToLocal($utcTime) { + + $timeDifference = Session::get("user_timezone"); + $addOrSubtract = "-"; + if( $timeDifference < 0) + $addOrSubtract = "+"; + + return strtotime( $addOrSubtract . " " . abs($timeDifference) . " hours", $utcTime); + } + + /** + * Convert from local time to UTC time. Units are seconds since Unix Epoch. + */ + public static function convertLocalToUTC($localTime) { + + $timeDifference = Session::get("user_timezone"); + $addOrSubtract = "-"; + if( $timeDifference > 0) + $addOrSubtract = "+"; + + return strtotime( $addOrSubtract . " " . abs($timeDifference) . " hours", $localTime); + } } http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/18a98fd2/app/libraries/URPUtilities.php ---------------------------------------------------------------------- diff --git a/app/libraries/URPUtilities.php b/app/libraries/URPUtilities.php index 3da8f21..ad4529b 100644 --- a/app/libraries/URPUtilities.php +++ b/app/libraries/URPUtilities.php @@ -72,15 +72,11 @@ class URPUtilities public static function add_or_update_user_CRP($inputs, $update = false) { - $timeDifference = Session::get("user_timezone"); - $addOrSubtract = "-"; - if( $timeDifference > 0) - $addOrSubtract = "+"; $inputs = Input::all(); if( $inputs["reservationStartTime"] != "") - $inputs["reservationStartTime"] = strtotime( $addOrSubtract . " " . Session::get("user_timezone") . " hours", strtotime( $inputs["reservationStartTime"]) ) * 1000; + $inputs["reservationStartTime"] = CommonUtilities::convertLocalToUTC($inputs["reservationStartTime"]) * 1000; if( $inputs["reservationEndTime"] != "") - $inputs["reservationEndTime"] = strtotime( $addOrSubtract . " " . Session::get("user_timezone") . " hours", strtotime($inputs["reservationEndTime"]) ) * 1000; + $inputs["reservationEndTime"] = CommonUtilities::convertLocalToUTC($inputs["reservationEndTime"]) * 1000; $userComputeResourcePreference = new UserComputeResourcePreference($inputs); $userId = Session::get('username'); http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/18a98fd2/app/views/account/user-compute-resources.blade.php ---------------------------------------------------------------------- diff --git a/app/views/account/user-compute-resources.blade.php b/app/views/account/user-compute-resources.blade.php index a1a1f99..e46f37e 100644 --- a/app/views/account/user-compute-resources.blade.php +++ b/app/views/account/user-compute-resources.blade.php @@ -2,6 +2,7 @@ @section('page-header') @parent +{{ HTML::style('css/datetimepicker.css')}}