split service level screen into parts, use buttons for gold/silver upgrades
[raven.git] / apps / gacksadmin / user_service_level.php
index 8d34a66..bd75a64 100644 (file)
@@ -13,6 +13,8 @@ require_once 'gacks_functions.php';
 require_once 'linetabs.php';\r
 require_once 'table.php';\r
 require_once 'gacksclient.php';\r
+require_once 'toggle.php';\r
+require_once 'details.php';\r
 \r
 // find person roles\r
 $_person= $plc->person;\r
@@ -26,7 +28,13 @@ include 'plc_header.php';
 \r
 $gacksapi = new GACKSAPI();\r
 \r
-print "<br><br>";\r
+$toggle = new PlekitToggle ('select_sice',"Select slice",\r
+                            array('bubble'=>'Select slice to configure',\r
+                                  'visible'=>true));\r
+\r
+$toggle->start();\r
+\r
+print "<br>";\r
 \r
 $account_name = get_account_name($api, $_person_id);\r
 \r
@@ -39,6 +47,7 @@ if ($account == NULL) {
     if ($account_name != NULL) {\r
         print "Oops. We had an error retrieving the account details for $account_name.";\r
     }\r
+    $toggle->end();\r
 } else {\r
     $account = $gacksapi->get_account(gacksid($account_name), "user");\r
     $level = $account['level'];\r
@@ -47,21 +56,21 @@ if ($account == NULL) {
         $level = "best effort";\r
     }\r
 \r
+    print "<br><p>Your current service level is <span class='bold'>$level</span>. </p>";\r
 \r
-    $form = new PlekitForm(l_gacks_actions(), array("action"=>"set-service",\r
-                                                    "account_name"=> $account_name));
-    $form->start();\r
+//    $details = new PlekitDetails($can_update);\r
+//    $details->start();\r
+//    $details->th_td("Service Level", $level);\r
+//    $details->end();\r
 \r
-    print "<br><p>Your current service level is <span class='bold'>$level</span>. </p>";\r
+    $toggle->end();\r
 \r
     if ($level != "gold") {\r
-        $upgrade_selectors = array();\r
-        $upgrade_selectors []= array("display"=>"Do not upgrade", "value"=>"");\r
-        if ($level != "silver") {\r
-            $upgrade_selectors []= array("display"=>"Silver", "value"=>"silver");\r
-        }\r
-        $upgrade_selectors []= array("display"=>"Gold", "value"=>"gold");\r
-        $upgrade_combo = $form->select_html("level", $upgrade_selectors);\r
+        $toggle = new PlekitToggle ('upgrade',"Upgrade Service",\r
+                                    array('bubble'=>'Upgrade service to allow reservations',\r
+                                          'visible'=>get_arg('upgrade_service',true)));\r
+\r
+        $toggle->start();\r
 \r
         print <<< EOF\r
 <p>You may upgrade your service level to silver or gold access in order to be able to reserve resources.\r
@@ -69,10 +78,41 @@ Silver or gold access will incur a membership fee, and require a one year commit
 about the policies associated with silver or gold access, please follow these links:\r
 <a href="/service_silver">silver</a> or <a href="/service_gold">gold</a>.</p>\r
 <p>To upgrade your service, choose a new service level below:</p>\r
-$upgrade_combo\r
 EOF;\r
+        if ($level != "silver") {\r
+            $form = new PlekitForm(l_gacks_actions(), array("action" => "set-service",\r
+                                                          "account_name" => $account_name,\r
+                                                          "level" => "silver"));\r
+            $form->start();\r
+            print $form->submit_html("submit", "Upgrade To Silver");\r
+            $form->end();\r
+\r
+            print "<br>";\r
+        }\r
+\r
+\r
+        $form = new PlekitForm(l_gacks_actions(), array("action"=>"set-service",\r
+                                                      "account_name" => $account_name,\r
+                                                      "level" => "gold"));\r
+        $form->start();\r
+        print $form->submit_html("submit", "Upgrade To Gold");\r
+        $form->end();\r
+\r
+        $toggle->end();\r
     }\r
 \r
+    // --------------------- service settings ------------------------------------\r
+\r
+    $toggle = new PlekitToggle ("service_settings", "Service Settings",\r
+                                array('bubble'=>'Configure Service Settings',\r
+                                      'visible'=>get_arg('service_settings',true)));\r
+\r
+    $toggle->start();\r
+\r
+    $form = new PlekitForm(l_gacks_actions(), array("action"=>"set-service",\r
+                                                    "account_name"=> $account_name));
+    $form->start();\r
+\r
     if ($level != "best effort") {\r
         $term = $account['term'];\r
         if ($term == "") {\r
@@ -95,12 +135,12 @@ EOF;
         $freeze_combo = $form->select_html("enableBestEffort", $freeze_selectors);\r
 \r
         print <<< EOF\r
-<br><br><p>You may choose whether or not your service will\r
+<br><p>You may choose whether or not your service will\r
 automatically renew. The next renewal date of your service is $anniversary and it will renew for $term months.</p>\r
 <p>Choose an automatic renewal option below:</p>\r
 $renew_combo\r
 \r
-<br><br><p>Reservation users can choose whether or not to enable best effort traffic. If best effort traffic is\r
+<br><p>Reservation users can choose whether or not to enable best effort traffic. If best effort traffic is\r
 enabled, then Vicci will allow your slices to run on nodes even though you have not reserved them. Regulard best\r
 effort changes will apply. Vicci may be configured to automatically freeze your slices if no reservation is present,\r
 preventing best effort charges from being incurred.</p>\r
@@ -109,7 +149,7 @@ EOF;
     }\r
 \r
     print <<< EOF\r
-<br><br><p>Please enter the email addresses of your billing contacts below.\r
+<br><p>Please enter the email addresses of your billing contacts below.\r
 You may enter multiple contacts separated by a comma. Invoices will be emailed\r
 to these contacts once per week</p>\r
 EOF;\r
@@ -119,6 +159,8 @@ EOF;
     print $form->submit_html("submit", "submit");\r
 \r
     $form->end();\r
+\r
+    $toggle->end();\r
 }\r
 \r
 include 'plc_footer.php';\r