[Portal 15] Also includes Portal 8 41/5941/2
authorst782s <statta@research.att.com>
Wed, 7 Jun 2017 14:43:46 +0000 (10:43 -0400)
committerst782s <statta@research.att.com>
Wed, 7 Jun 2017 15:52:54 +0000 (11:52 -0400)
This enhancement included changes pertaining to the the charting and
search functions of Ecomp SDK Analytics and inclusion of os module in
root POM

Change-Id: I4a2db5588a311a1098ee67c7d352299afb7679a0
Signed-off-by: st782s <statta@research.att.com>
ecomp-sdk/epsdk-app-os/README.md
ecomp-sdk/epsdk-app-os/db-scripts/EcompSdkMySql_Rollback_1707_to_1610.2_OS.sql
ecomp-sdk/epsdk-app-os/db-scripts/EcompSdkMySql_Upgrade_1610.2_to_1707_OS.sql
ecomp-sdk/epsdk-app-os/src/main/webapp/WEB-INF/conf/system.properties
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-reports/report-chart-controller.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-reports/report-search-controller.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-reports/report-step-controller.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-reports/report-chart-wizard.html
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-reports/report-run.html
ecomp-sdk/pom.xml

index db7dcaa..5d5935b 100644 (file)
@@ -17,6 +17,7 @@ Version 1.1.0
 - [Portal-7] Improvements added as part of the rebasing process
 - [Portal-6] Updates to License and Trademark in the PORTAL Source Code
 - [Portal 13] ecompsdk db connection intermittent issue seen for VID app 
+- [Portal 15] Fix Charting and Search Capabilities of EcompSDK Analytics
  
 Version 1.0.0
 - Initial release
index ea959a1..ce3565f 100644 (file)
 -- ---------------------------------------------------------------------------------------------------------------
 -- This rollback script is for the OpenSource ECOMP SDK App database from version 1707 to 1610.2.
 -- change size on 3 name columns from fn_user for the Opensource version
---
 -- changed DS1 icon names to DS2 icon names
--- removed unnecessary fn_menu entries, updated fn_menu actions
+-- removed unnecessary fn_menu entries, updated fn_menu actions;  changes the schema name from ecomp_sdk to ecomp_sdk_os_os
 -- ---------------------------------------------------------------------------------------------------------------
+SET FOREIGN_KEY_CHECKS=1; 
+CREATE DATABASE IF NOT EXISTS ecomp_sdk_os;
+
+rename table ecomp_sdk.cr_favorite_reports to ecomp_sdk_os.cr_favorite_reports;
+rename table ecomp_sdk.cr_filehist_log to ecomp_sdk_os.cr_filehist_log;
+rename table ecomp_sdk.cr_folder to ecomp_sdk_os.cr_folder;
+rename table ecomp_sdk.cr_folder_access to ecomp_sdk_os.cr_folder_access;
+rename table ecomp_sdk.cr_hist_user_map to ecomp_sdk_os.cr_hist_user_map;
+rename table ecomp_sdk.cr_lu_file_type to ecomp_sdk_os.cr_lu_file_type;
+rename table ecomp_sdk.cr_raptor_action_img to ecomp_sdk_os.cr_raptor_action_img;
+rename table ecomp_sdk.cr_raptor_pdf_img to ecomp_sdk_os.cr_raptor_pdf_img;
+rename table ecomp_sdk.cr_remote_schema_info to ecomp_sdk_os.cr_remote_schema_info;
+rename table ecomp_sdk.cr_report to ecomp_sdk_os.cr_report;
+rename table ecomp_sdk.cr_report_access to ecomp_sdk_os.cr_report_access;
+rename table ecomp_sdk.cr_report_dwnld_log to ecomp_sdk_os.cr_report_dwnld_log;
+rename table ecomp_sdk.cr_report_email_sent_log to ecomp_sdk_os.cr_report_email_sent_log;
+rename table ecomp_sdk.cr_report_file_history to ecomp_sdk_os.cr_report_file_history;
+rename table ecomp_sdk.cr_report_log to ecomp_sdk_os.cr_report_log;
+rename table ecomp_sdk.cr_report_schedule to ecomp_sdk_os.cr_report_schedule;
+rename table ecomp_sdk.cr_report_schedule_users to ecomp_sdk_os.cr_report_schedule_users;
+rename table ecomp_sdk.cr_report_template_map to ecomp_sdk_os.cr_report_template_map;
+rename table ecomp_sdk.cr_schedule_activity_log to ecomp_sdk_os.cr_schedule_activity_log;
+rename table ecomp_sdk.cr_table_join to ecomp_sdk_os.cr_table_join;
+rename table ecomp_sdk.cr_table_role to ecomp_sdk_os.cr_table_role;
+rename table ecomp_sdk.cr_table_source to ecomp_sdk_os.cr_table_source;
+rename table ecomp_sdk.fn_lu_timezone to ecomp_sdk_os.fn_lu_timezone;
+rename table ecomp_sdk.fn_user to ecomp_sdk_os.fn_user;
+rename table ecomp_sdk.fn_role to ecomp_sdk_os.fn_role;
+rename table ecomp_sdk.fn_audit_action to ecomp_sdk_os.fn_audit_action;
+rename table ecomp_sdk.fn_audit_action_log to ecomp_sdk_os.fn_audit_action_log;
+rename table ecomp_sdk.fn_lu_activity to ecomp_sdk_os.fn_lu_activity;
+rename table ecomp_sdk.fn_audit_log to ecomp_sdk_os.fn_audit_log;
+rename table ecomp_sdk.fn_broadcast_message to ecomp_sdk_os.fn_broadcast_message;
+rename table ecomp_sdk.fn_chat_logs to ecomp_sdk_os.fn_chat_logs;
+rename table ecomp_sdk.fn_chat_room to ecomp_sdk_os.fn_chat_room;
+rename table ecomp_sdk.fn_chat_users to ecomp_sdk_os.fn_chat_users;
+rename table ecomp_sdk.fn_datasource to ecomp_sdk_os.fn_datasource;
+rename table ecomp_sdk.fn_function to ecomp_sdk_os.fn_function;
+rename table ecomp_sdk.fn_lu_alert_method to ecomp_sdk_os.fn_lu_alert_method;
+rename table ecomp_sdk.fn_lu_broadcast_site to ecomp_sdk_os.fn_lu_broadcast_site;
+rename table ecomp_sdk.fn_lu_menu_set to ecomp_sdk_os.fn_lu_menu_set;
+rename table ecomp_sdk.fn_lu_priority to ecomp_sdk_os.fn_lu_priority;
+rename table ecomp_sdk.fn_lu_role_type to ecomp_sdk_os.fn_lu_role_type;
+rename table ecomp_sdk.fn_lu_tab_set to ecomp_sdk_os.fn_lu_tab_set;
+rename table ecomp_sdk.fn_lu_message_location to ecomp_sdk_os.fn_lu_message_location;
+rename table ecomp_sdk.fn_menu to ecomp_sdk_os.fn_menu;
+rename table ecomp_sdk.fn_org to ecomp_sdk_os.fn_org;
+rename table ecomp_sdk.fn_restricted_url to ecomp_sdk_os.fn_restricted_url;
+rename table ecomp_sdk.fn_role_composite to ecomp_sdk_os.fn_role_composite;
+rename table ecomp_sdk.fn_role_function to ecomp_sdk_os.fn_role_function;
+rename table ecomp_sdk.fn_tab to ecomp_sdk_os.fn_tab;
+rename table ecomp_sdk.fn_tab_selected to ecomp_sdk_os.fn_tab_selected;
+rename table ecomp_sdk.fn_user_pseudo_role to ecomp_sdk_os.fn_user_pseudo_role;
+rename table ecomp_sdk.fn_user_role to ecomp_sdk_os.fn_user_role;
+rename table ecomp_sdk.schema_info to ecomp_sdk_os.schema_info;
+rename table ecomp_sdk.fn_app to ecomp_sdk_os.fn_app;
+rename table ecomp_sdk.fn_workflow to ecomp_sdk_os.fn_workflow;
+rename table ecomp_sdk.fn_schedule_workflows to ecomp_sdk_os.fn_schedule_workflows;
+rename table ecomp_sdk.demo_bar_chart to ecomp_sdk_os.demo_bar_chart;
+rename table ecomp_sdk.demo_bar_chart_inter to ecomp_sdk_os.demo_bar_chart_inter;
+rename table ecomp_sdk.demo_line_chart to ecomp_sdk_os.demo_line_chart;
+rename table ecomp_sdk.demo_pie_chart to ecomp_sdk_os.demo_pie_chart;
+rename table ecomp_sdk.demo_util_chart to ecomp_sdk_os.demo_util_chart;
+rename table ecomp_sdk.demo_scatter_chart to ecomp_sdk_os.demo_scatter_chart;
+rename table ecomp_sdk.demo_scatter_plot to ecomp_sdk_os.demo_scatter_plot;
+rename table ecomp_sdk.fn_qz_job_details to ecomp_sdk_os.fn_qz_job_details;
+rename table ecomp_sdk.fn_qz_triggers to ecomp_sdk_os.fn_qz_triggers;
+rename table ecomp_sdk.fn_qz_simple_triggers to ecomp_sdk_os.fn_qz_simple_triggers;
+rename table ecomp_sdk.fn_qz_cron_triggers to ecomp_sdk_os.fn_qz_cron_triggers;
+rename table ecomp_sdk.fn_qz_simprop_triggers to ecomp_sdk_os.fn_qz_simprop_triggers;
+rename table ecomp_sdk.fn_qz_blob_triggers to ecomp_sdk_os.fn_qz_blob_triggers;
+rename table ecomp_sdk.fn_qz_calendars to ecomp_sdk_os.fn_qz_calendars;
+rename table ecomp_sdk.fn_qz_paused_trigger_grps to ecomp_sdk_os.fn_qz_paused_trigger_grps;
+rename table ecomp_sdk.fn_qz_fired_triggers to ecomp_sdk_os.fn_qz_fired_triggers;
+rename table ecomp_sdk.fn_qz_scheduler_state to ecomp_sdk_os.fn_qz_scheduler_state;
+rename table ecomp_sdk.fn_qz_locks to ecomp_sdk_os.fn_qz_locks;
+rename table ecomp_sdk.rcloudinvocation to ecomp_sdk_os.rcloudinvocation;
+rename table ecomp_sdk.rcloudnotebook to ecomp_sdk_os.rcloudnotebook;
 
-USE ecomp_sdk;
+USE ecomp_sdk_os;
+
+--
+-- NAME: V_URL_ACCESS; TYPE: VIEW
+--
+CREATE VIEW v_url_access AS
+ SELECT DISTINCT M.ACTION AS URL,
+    M.FUNCTION_CD
+   FROM FN_MENU M
+  WHERE (M.ACTION IS NOT NULL)
+UNION
+ SELECT DISTINCT T.ACTION AS URL,
+    T.FUNCTION_CD
+   FROM FN_TAB T
+  WHERE (T.ACTION IS NOT NULL)
+UNION
+ SELECT R.RESTRICTED_URL AS URL,
+    R.FUNCTION_CD
+   FROM FN_RESTRICTED_URL R;
 
 update fn_menu
 set image_src = 'ion-home'
@@ -58,5 +153,7 @@ alter table fn_user
        CHANGE COLUMN FIRST_NAME FIRST_NAME VARCHAR(25) NULL DEFAULT NULL ,
        CHANGE COLUMN MIDDLE_NAME MIDDLE_NAME VARCHAR(25) NULL DEFAULT NULL ,
        CHANGE COLUMN LAST_NAME LAST_NAME VARCHAR(25) NULL DEFAULT NULL;
-    
+
+drop schema ecomp_sdk;
+
 commit;
index c7d448d..c45ad9c 100644 (file)
 -- ---------------------------------------------------------------------------------------------------------------
 -- This script upgrades the OpenSource ECOMP SDK App database from version 1610.2 to 1707.
 -- change size on 3 name columns from fn_user for the Opensource version
---
 -- changed DS1 icon names to DS2 icon names
--- removed unnecessary fn_menu entries, updated fn_menu actions
+-- removed unnecessary fn_menu entries, updated fn_menu actions; changes the schema name from ecomp_sdk_os to ecomp_sdk
 -- ---------------------------------------------------------------------------------------------------------------
 
+SET FOREIGN_KEY_CHECKS=1; 
+CREATE DATABASE IF NOT EXISTS ecomp_sdk;
+
+rename table ecomp_sdk_os.cr_favorite_reports to ecomp_sdk.cr_favorite_reports;
+rename table ecomp_sdk_os.cr_filehist_log to ecomp_sdk.cr_filehist_log;
+rename table ecomp_sdk_os.cr_folder to ecomp_sdk.cr_folder;
+rename table ecomp_sdk_os.cr_folder_access to ecomp_sdk.cr_folder_access;
+rename table ecomp_sdk_os.cr_hist_user_map to ecomp_sdk.cr_hist_user_map;
+rename table ecomp_sdk_os.cr_lu_file_type to ecomp_sdk.cr_lu_file_type;
+rename table ecomp_sdk_os.cr_raptor_action_img to ecomp_sdk.cr_raptor_action_img;
+rename table ecomp_sdk_os.cr_raptor_pdf_img to ecomp_sdk.cr_raptor_pdf_img;
+rename table ecomp_sdk_os.cr_remote_schema_info to ecomp_sdk.cr_remote_schema_info;
+rename table ecomp_sdk_os.cr_report to ecomp_sdk.cr_report;
+rename table ecomp_sdk_os.cr_report_access to ecomp_sdk.cr_report_access;
+rename table ecomp_sdk_os.cr_report_dwnld_log to ecomp_sdk.cr_report_dwnld_log;
+rename table ecomp_sdk_os.cr_report_email_sent_log to ecomp_sdk.cr_report_email_sent_log;
+rename table ecomp_sdk_os.cr_report_file_history to ecomp_sdk.cr_report_file_history;
+rename table ecomp_sdk_os.cr_report_log to ecomp_sdk.cr_report_log;
+rename table ecomp_sdk_os.cr_report_schedule to ecomp_sdk.cr_report_schedule;
+rename table ecomp_sdk_os.cr_report_schedule_users to ecomp_sdk.cr_report_schedule_users;
+rename table ecomp_sdk_os.cr_report_template_map to ecomp_sdk.cr_report_template_map;
+rename table ecomp_sdk_os.cr_schedule_activity_log to ecomp_sdk.cr_schedule_activity_log;
+rename table ecomp_sdk_os.cr_table_join to ecomp_sdk.cr_table_join;
+rename table ecomp_sdk_os.cr_table_role to ecomp_sdk.cr_table_role;
+rename table ecomp_sdk_os.cr_table_source to ecomp_sdk.cr_table_source;
+rename table ecomp_sdk_os.fn_lu_timezone to ecomp_sdk.fn_lu_timezone;
+rename table ecomp_sdk_os.fn_user to ecomp_sdk.fn_user;
+rename table ecomp_sdk_os.fn_role to ecomp_sdk.fn_role;
+rename table ecomp_sdk_os.fn_audit_action to ecomp_sdk.fn_audit_action;
+rename table ecomp_sdk_os.fn_audit_action_log to ecomp_sdk.fn_audit_action_log;
+rename table ecomp_sdk_os.fn_lu_activity to ecomp_sdk.fn_lu_activity;
+rename table ecomp_sdk_os.fn_audit_log to ecomp_sdk.fn_audit_log;
+rename table ecomp_sdk_os.fn_broadcast_message to ecomp_sdk.fn_broadcast_message;
+rename table ecomp_sdk_os.fn_chat_logs to ecomp_sdk.fn_chat_logs;
+rename table ecomp_sdk_os.fn_chat_room to ecomp_sdk.fn_chat_room;
+rename table ecomp_sdk_os.fn_chat_users to ecomp_sdk.fn_chat_users;
+rename table ecomp_sdk_os.fn_datasource to ecomp_sdk.fn_datasource;
+rename table ecomp_sdk_os.fn_function to ecomp_sdk.fn_function;
+rename table ecomp_sdk_os.fn_lu_alert_method to ecomp_sdk.fn_lu_alert_method;
+rename table ecomp_sdk_os.fn_lu_broadcast_site to ecomp_sdk.fn_lu_broadcast_site;
+rename table ecomp_sdk_os.fn_lu_menu_set to ecomp_sdk.fn_lu_menu_set;
+rename table ecomp_sdk_os.fn_lu_priority to ecomp_sdk.fn_lu_priority;
+rename table ecomp_sdk_os.fn_lu_role_type to ecomp_sdk.fn_lu_role_type;
+rename table ecomp_sdk_os.fn_lu_tab_set to ecomp_sdk.fn_lu_tab_set;
+rename table ecomp_sdk_os.fn_lu_message_location to ecomp_sdk.fn_lu_message_location;
+rename table ecomp_sdk_os.fn_menu to ecomp_sdk.fn_menu;
+rename table ecomp_sdk_os.fn_org to ecomp_sdk.fn_org;
+rename table ecomp_sdk_os.fn_restricted_url to ecomp_sdk.fn_restricted_url;
+rename table ecomp_sdk_os.fn_role_composite to ecomp_sdk.fn_role_composite;
+rename table ecomp_sdk_os.fn_role_function to ecomp_sdk.fn_role_function;
+rename table ecomp_sdk_os.fn_tab to ecomp_sdk.fn_tab;
+rename table ecomp_sdk_os.fn_tab_selected to ecomp_sdk.fn_tab_selected;
+rename table ecomp_sdk_os.fn_user_pseudo_role to ecomp_sdk.fn_user_pseudo_role;
+rename table ecomp_sdk_os.fn_user_role to ecomp_sdk.fn_user_role;
+rename table ecomp_sdk_os.schema_info to ecomp_sdk.schema_info;
+rename table ecomp_sdk_os.fn_app to ecomp_sdk.fn_app;
+rename table ecomp_sdk_os.fn_workflow to ecomp_sdk.fn_workflow;
+rename table ecomp_sdk_os.fn_schedule_workflows to ecomp_sdk.fn_schedule_workflows;
+rename table ecomp_sdk_os.demo_bar_chart to ecomp_sdk.demo_bar_chart;
+rename table ecomp_sdk_os.demo_bar_chart_inter to ecomp_sdk.demo_bar_chart_inter;
+rename table ecomp_sdk_os.demo_line_chart to ecomp_sdk.demo_line_chart;
+rename table ecomp_sdk_os.demo_pie_chart to ecomp_sdk.demo_pie_chart;
+rename table ecomp_sdk_os.demo_util_chart to ecomp_sdk.demo_util_chart;
+rename table ecomp_sdk_os.demo_scatter_chart to ecomp_sdk.demo_scatter_chart;
+rename table ecomp_sdk_os.demo_scatter_plot to ecomp_sdk.demo_scatter_plot;
+rename table ecomp_sdk_os.fn_qz_job_details to ecomp_sdk.fn_qz_job_details;
+rename table ecomp_sdk_os.fn_qz_triggers to ecomp_sdk.fn_qz_triggers;
+rename table ecomp_sdk_os.fn_qz_simple_triggers to ecomp_sdk.fn_qz_simple_triggers;
+rename table ecomp_sdk_os.fn_qz_cron_triggers to ecomp_sdk.fn_qz_cron_triggers;
+rename table ecomp_sdk_os.fn_qz_simprop_triggers to ecomp_sdk.fn_qz_simprop_triggers;
+rename table ecomp_sdk_os.fn_qz_blob_triggers to ecomp_sdk.fn_qz_blob_triggers;
+rename table ecomp_sdk_os.fn_qz_calendars to ecomp_sdk.fn_qz_calendars;
+rename table ecomp_sdk_os.fn_qz_paused_trigger_grps to ecomp_sdk.fn_qz_paused_trigger_grps;
+rename table ecomp_sdk_os.fn_qz_fired_triggers to ecomp_sdk.fn_qz_fired_triggers;
+rename table ecomp_sdk_os.fn_qz_scheduler_state to ecomp_sdk.fn_qz_scheduler_state;
+rename table ecomp_sdk_os.fn_qz_locks to ecomp_sdk.fn_qz_locks;
+rename table ecomp_sdk_os.rcloudinvocation to ecomp_sdk.rcloudinvocation;
+rename table ecomp_sdk_os.rcloudnotebook to ecomp_sdk.rcloudnotebook;
+
 USE ecomp_sdk;
 
+--
+-- NAME: V_URL_ACCESS; TYPE: VIEW
+--
+CREATE VIEW v_url_access AS
+ SELECT DISTINCT M.ACTION AS URL,
+    M.FUNCTION_CD
+   FROM FN_MENU M
+  WHERE (M.ACTION IS NOT NULL)
+UNION
+ SELECT DISTINCT T.ACTION AS URL,
+    T.FUNCTION_CD
+   FROM FN_TAB T
+  WHERE (T.ACTION IS NOT NULL)
+UNION
+ SELECT R.RESTRICTED_URL AS URL,
+    R.FUNCTION_CD
+   FROM FN_RESTRICTED_URL R;
+
 update fn_menu
 set image_src = 'icon-building-home'
 where menu_id = 2 and  label = 'Home';
@@ -53,12 +149,14 @@ where menu_id = 92 and label = 'Import User';
 delete from fn_menu 
 where menu_id = 103 and label = 'Broadcast Messages';
 
-INSERT INTO fn_menu (MENU_ID, LABEL, PARENT_ID, SORT_ORDER, ACTION, FUNCTION_CD, ACTIVE_YN, SERVLET, QUERY_STRING, EXTERNAL_URL, TARGET, MENU_SET_CD, SEPARATOR_YN, IMAGE_SRC) VALUES (89, 'Import', 8, 140, 'report#/report_import', 'menu_reports', 'Y', null, null, null, null, 'APP', 'N', null); 
-INSERT INTO fn_menu (MENU_ID, LABEL, PARENT_ID, SORT_ORDER, ACTION, FUNCTION_CD, ACTIVE_YN, SERVLET, QUERY_STRING, EXTERNAL_URL, TARGET, MENU_SET_CD, SEPARATOR_YN, IMAGE_SRC) VALUES (150022, 'Menus', 10, 60, 'admin#/admin_menu_edit', 'menu_admin', 'Y', NULL, NULL, NULL, NULL, 'APP', 'N', NULL);
-
 alter table fn_user
        CHANGE COLUMN FIRST_NAME FIRST_NAME VARCHAR(50) NULL DEFAULT NULL ,
        CHANGE COLUMN MIDDLE_NAME MIDDLE_NAME VARCHAR(50) NULL DEFAULT NULL ,
        CHANGE COLUMN LAST_NAME LAST_NAME VARCHAR(50) NULL DEFAULT NULL;
     
+INSERT INTO fn_menu (MENU_ID, LABEL, PARENT_ID, SORT_ORDER, ACTION, FUNCTION_CD, ACTIVE_YN, SERVLET, QUERY_STRING, EXTERNAL_URL, TARGET, MENU_SET_CD, SEPARATOR_YN, IMAGE_SRC) VALUES (89, 'Import', 8, 140, 'report#/report_import', 'menu_reports', 'Y', null, null, null, null, 'APP', 'N', null); 
+INSERT INTO fn_menu (MENU_ID, LABEL, PARENT_ID, SORT_ORDER, ACTION, FUNCTION_CD, ACTIVE_YN, SERVLET, QUERY_STRING, EXTERNAL_URL, TARGET, MENU_SET_CD, SEPARATOR_YN, IMAGE_SRC) VALUES (150022, 'Menus', 10, 60, 'admin#/admin_menu_edit', 'menu_admin', 'Y', NULL, NULL, NULL, NULL, 'APP', 'N', NULL);
+
+drop schema ecomp_sdk_os;
+
 commit;
index 1f8aac8..e5917c6 100644 (file)
@@ -33,6 +33,9 @@ db.encrypt_flag = false
 db.hib.dialect = org.hibernate.dialect.MySQLDialect
 db.min_pool_size = 5
 db.max_pool_size = 10
+#db.test_connection_on_checkout = false
+#db.preferred_test_query = SELECT 1 from FN_USER
+
 hb.dialect = org.hibernate.dialect.MySQLDialect
 # SQL statements are logged to stdout
 hb.show_sql = true
index 80e1a26..fc36b73 100644 (file)
@@ -1,33 +1,43 @@
 appDS2.controller('reportChartController', function ($scope, $rootScope, $timeout, $window, $http, $routeParams,modalService) {
-       //$scope.test="1223";
-       //alert($scope.chartType.value);
-       console.log("reportChartController called");
+       $scope.showLoader = true;
     $scope.commonOptionOpen = false;
     $scope.additionalOptionOpen = false;
-    
+    $scope.barChartOptionOpen = false;
+    $scope.timeSeriesChartOptionOpen = false;
        $scope.selectedChartType = {value:""};
     $scope.chartTypeOptions = [
-        {value: 'barChart', text: 'Bar Chart'},
-        {value: 'timeSeries', text: 'Time Series/Area Chart'},
-        {value: 'pieChart', text: 'Pie Chart'},        
-        {value: 'annotationChart', text: 'Annotation Chart'},
-        {value: 'flexibleTimeChart', text: 'Flexible Time Chart'}    
+        {value: 'BarChart3D', text: 'Bar Chart'},
+        {value: 'TimeSeriesChart', text: 'Time Series/Area Chart'},
+        {value: 'PieChart', text: 'Pie Chart'},        
+        {value: 'AnnotationChart', text: 'Annotation Chart'},
+        {value: 'FlexTimeChart', text: 'Flexible Time Chart'}    
     ];
-    
-    $scope.animateSelected = {value:false};
-    
+        
        $scope.populateChrtWzdFields = function() {
                $scope.reportRunJson = {};
                $http.get("raptor.htm?action=chart.json&c_master="+$routeParams.reportId).then(function (response) {
                        $scope.reportRunJson = response.data;
                          //Set chart type
+                       $scope.reportRunJson.commonChartOptions.animateAnimatedChart = $scope.reportRunJson.commonChartOptions.animateAnimatedChart+"";
+                       $scope.reportRunJson.commonChartOptions.hideLegend = $scope.reportRunJson.commonChartOptions.hideLegend + "";
+                       $scope.reportRunJson.showTitle = $scope.reportRunJson.showTitle + "";
+                       
+                       // if barChartOptions is not null
+                       if ($scope.reportRunJson.barChartOptions) {
+                               $scope.reportRunJson.barChartOptions.displayBarControls = $scope.reportRunJson.barChartOptions.displayBarControls+"";
+                               $scope.reportRunJson.barChartOptions.minimizeXAxisTickers = $scope.reportRunJson.barChartOptions.minimizeXAxisTickers+"";
+                               $scope.reportRunJson.barChartOptions.stackedChart = $scope.reportRunJson.barChartOptions.stackedChart+"";
+                               $scope.reportRunJson.barChartOptions.timeAxis =$scope.reportRunJson.barChartOptions.timeAxis+""; 
+                               $scope.reportRunJson.barChartOptions.verticalOrientation = $scope.reportRunJson.barChartOptions.verticalOrientation +"";
+                               $scope.reportRunJson.barChartOptions.xAxisDateType = $scope.reportRunJson.barChartOptions.xAxisDateType +"";
+                               }                       
+                       
                          if ($scope.reportRunJson.chartTypeJSON) {
-                                 var chrtTypeValue = $scope.reportRunJson.chartTypeJSON.value;
+                                 var chrtTypeValue = $scope.reportRunJson.chartType;
                                         for(var i = 0; i < $scope.chartTypes.length; i++) {
-                                                   var obj = $scope.chartTypes[i];
-                                                   //console.log(obj.id);
                                                    if ($scope.chartTypes[i].value==chrtTypeValue) {
-                                                       $scope.reportRunJson.chartTypeJSON.index=$scope.chartTypes[i].index;
+                                                       $scope.reportRunJson.chartTypeJSON.index=$scope.chartTypes[i].index;                                                    
+                                                       $scope.reportRunJson.chartTypeJSON.value=$scope.chartTypes[i].value;
                                                        $scope.reportRunJson.chartTypeJSON.title=$scope.chartTypes[i].title;
                                                    }
        
@@ -108,12 +118,65 @@ appDS2.controller('reportChartController', function ($scope, $rootScope, $timeou
                                                 }
                                        }
                                }
+                               $scope.showLoader = false;                              
                  });
                
                $scope.legend = "true";
        }
        
        $scope.saveChartData = function() {
+               $scope.showLoader = true;
+
+               $scope.reportRunJson.commonChartOptions.animateAnimatedChart = ($scope.reportRunJson.commonChartOptions.animateAnimatedChart=="true")
+               $scope.reportRunJson.commonChartOptions.hideLegend = ($scope.reportRunJson.commonChartOptions.hideLegend=="true");
+               $scope.reportRunJson.showTitle = ($scope.reportRunJson.showTitle=="true");
+               
+               $scope.reportRunJson.chartTypeJSON = {
+                               'index':0,'title':'','value':''};
+               
+               
+               if (($scope.reportRunJson.chartType == "BarChart3D")&&($scope.reportRunJson.barChartOptions)) {
+                       $scope.reportRunJson.barChartOptions.displayBarControls = ($scope.reportRunJson.barChartOptions.displayBarControls=="true") ;
+                       $scope.reportRunJson.barChartOptions.minimizeXAxisTickers = ($scope.reportRunJson.barChartOptions.minimizeXAxisTickers=="true") ;
+                       $scope.reportRunJson.barChartOptions.stackedChart = ($scope.reportRunJson.barChartOptions.stackedChart=="true") ;
+                       $scope.reportRunJson.barChartOptions.timeAxis= ($scope.reportRunJson.barChartOptions.timeAxi=="true") ;
+                       $scope.reportRunJson.barChartOptions.verticalOrientation = ($scope.reportRunJson.barChartOptions.verticalOrientation=="true") ;
+                       $scope.reportRunJson.barChartOptions.xAxisDateType = ($scope.reportRunJson.barChartOptions.xAxisDateType=="true") ;
+               }
+               
+               for (var i=0;i<$scope.chartTypes.length;i++) {
+                       if ($scope.reportRunJson.chartType==$scope.chartTypes[i].value) {
+                               $scope.reportRunJson.chartTypeJSON = {
+                                               'index':$scope.chartTypes[i].index,
+                                               'title':$scope.chartTypes[i].title,
+                                               'value':$scope.chartTypes[i].value                                      
+                               }                               
+                       }
+               }
+               
+               $scope.reportRunJson.domainAxisJSON = {
+                               "index":0,"value":$scope.reportRunJson.domainAxis,"title": $scope.reportRunJson.domainAxis
+                       };
+               $scope.reportRunJson.categoryAxisJSON = {
+                               "index":0,"value":$scope.reportRunJson.categoryAxis,"title": $scope.reportRunJson.categoryAxis
+                       };
+               
+               // Specifically for DS2 for color 
+               for (var i=0; i<$scope.reportRunJson.rangeAxisList.length; i ++) {
+                       $scope.reportRunJson.rangeAxisList[i].rangeColorJSON = 
+                       {"index":0, "value": $scope.reportRunJson.rangeAxisList[i].rangeColor, "title": ""};
+                       
+                       $scope.reportRunJson.rangeAxisList[i].rangeLineTypeJSON =                               
+                       {"index":0, "value": "", "title": ""};
+                       for (var j=0;j<$scope.lineTypes.length;j++) {
+                               if ($scope.reportRunJson.rangeAxisList[i].rangeLineType ==$scope.lineTypes[j].value) {
+                                       $scope.reportRunJson.rangeAxisList[i].rangeLineTypeJSON =                               
+                                       {"index":$scope.lineTypes[j].index, "value": $scope.lineTypes[j].value, "title": $scope.lineTypes[j].title};
+                               }
+                       }
+                       
+               }
+               
                //Converting string variables to numbers
                $scope.reportRunJson.commonChartOptions.rightMargin = Number($scope.reportRunJson.commonChartOptions.rightMargin);
                $scope.reportRunJson.commonChartOptions.topMargin = Number($scope.reportRunJson.commonChartOptions.topMargin);
@@ -121,15 +184,24 @@ appDS2.controller('reportChartController', function ($scope, $rootScope, $timeou
                $scope.reportRunJson.commonChartOptions.leftMargin = Number($scope.reportRunJson.commonChartOptions.leftMargin);
         
                if ($scope.reportRunJson.categoryAxisJSON == "") { 
-                       console.log('Inside categoryAxisJSON value'); 
                        $scope.reportRunJson.categoryAxisJSON = {}; 
                        $scope.reportRunJson.categoryAxisJSON.value = -1; 
-                       console.log('$scope.reportRunJson.categoryAxisJSON',$scope.reportRunJson.categoryAxisJSON);  
                }
                
-               console.log($scope.reportRunJson);
                $http.post("save_chart", JSON.stringify($scope.reportRunJson)).success(function(data, status) {
-                        $scope.successSubmit=true;             
+                        $scope.successSubmit=true;  
+                       $scope.showLoader = false;
+                       $scope.reportRunJson.commonChartOptions.animateAnimatedChart = $scope.reportRunJson.commonChartOptions.animateAnimatedChart+"";
+                       $scope.reportRunJson.commonChartOptions.hideLegend = $scope.reportRunJson.commonChartOptions.hideLegend + "";
+                       $scope.reportRunJson.showTitle = $scope.reportRunJson.showTitle + "";                   
+                       if ($scope.reportRunJson.chartType == "BarChart3D") {
+                               $scope.reportRunJson.barChartOptions.displayBarControls = $scope.reportRunJson.barChartOptions.displayBarControls+"";
+                               $scope.reportRunJson.barChartOptions.minimizeXAxisTickers = $scope.reportRunJson.barChartOptions.minimizeXAxisTickers+"";
+                               $scope.reportRunJson.barChartOptions.stackedChart = $scope.reportRunJson.barChartOptions.stackedChart+"";
+                               $scope.reportRunJson.barChartOptions.timeAxis =$scope.reportRunJson.barChartOptions.timeAxis+""; 
+                               $scope.reportRunJson.barChartOptions.verticalOrientation = $scope.reportRunJson.barChartOptions.verticalOrientation +"";
+                               $scope.reportRunJson.barChartOptions.xAxisDateType = $scope.reportRunJson.barChartOptions.xAxisDateType +"";
+                       }                       
                        })
        }
        
index 3fe5bde..e1c5e1e 100644 (file)
@@ -1,5 +1,6 @@
 appDS2.requires.push('ui.grid');
 appDS2.requires.push('ui.grid.pagination');
+appDS2.requires.push('ui.grid.resizeColumns');
 appDS2.controller("reportSearchController", ['$scope','$rootScope','$http','$timeout','uiGridConstants','$modal','$q','$log','raptorReportFactory',function ($scope,$rootScope,$http,$timeout,uiGridConstants,$modal,$q,$log,raptorReportFactory) { 
            
        $scope.getSearchData = function(){
index faa2c42..ab07379 100644 (file)
@@ -1,6 +1,5 @@
-appDS2.controller('reportStepController', function($scope,$http,$location, $routeParams, $q, $modal,$log,$window, raptorReportFactory, stepFormFactory, DOMHelper) {
+appDS2.controller('reportStepController', function($scope,$http,$location, $routeParams, $q, $modal,$log,$window, raptorReportFactory, stepFormFactory) {
 
-       
        $scope.showLoader = true;
        // tabs for report wizard steps:
        $scope.activeTabsId = 'Definition';
@@ -743,19 +742,6 @@ appDS2.controller('reportStepController', function($scope,$http,$location, $rout
                     break;
                 }
             }
-
-            var selectedTabPanelElement = document.getElementById($scope.gTabs[selectedTab].tabPanelId);
-
-            var elem = null;
-            if (selectedTabPanelElement) {
-                elem = DOMHelper.firstTabableElement(selectedTabPanelElement);
-            }
-
-            if (elem) {
-                $timeout(function () {
-                    elem.focus();
-                }, 100);
-            }
         }
     });         
         
index 16676d2..3fae62f 100644 (file)
@@ -20,31 +20,31 @@ table{
 
 <div id="page-content">
 <h1 class="heading-page">Report Chart Configuration</h1>
-<!-- <div style="color:#2ca02c" ng-show="successSubmit">Your configurations have been successfully submitted</div> -->
 
+<div ng-show="showLoader" class="span loader-container">
+       <i class="icon-primary-spinner" role="img"
+               aria-label="Please wait while we load your content"></i>
+</div>
 
 
+<div ng-hide="showLoader">
 <div>
 <table>
        <thead>
            <tr>
                <th width="30%">Chart Type</th>
-               <th>Animate</th>
+               <th></th>
            </tr>
        </thead>
        
     <tbody>
         <tr>
             <td>
-                               <select name="chartType" b2b-dropdown ng-model="reportRunJson.chartTypeJSON.value" placeholder-text="Select">
+                               <select name="chartType" b2b-dropdown ng-model="reportRunJson.chartType">
                                        <option b2b-dropdown-list option-repeat="d in chartTypeOptions" value="{{d.value}}">{{d.text}}</option>
                    </select>
             </td>
-            <td>
-                <label for="animateCheckbox" class="checkbox">
-                    <input id="animateCheckbox" type="checkbox" ng-model="reportRunJson.animation" /><i class="skin"></i><span></span>
-                </label>            
-                       </td>
+            <td></td>
         </tr>
     </tbody>
 </table>
@@ -108,12 +108,12 @@ table{
     <tbody>
         <tr>
             <td>
-                               <select name="chartType" b2b-dropdown ng-model="reportRunJson.domainAxisJSON" placeholder-text="Select">
+                               <select name="chartType" b2b-dropdown ng-model="reportRunJson.domainAxis">
                                        <option b2b-dropdown-list option-repeat="d in reportRunJson.chartColumnJSONList" value="{{d.value}}">{{d.title}}</option>
                    </select>
             </td>
             <td>
-                               <select name="chartType" b2b-dropdown ng-model="reportRunJson.categoryAxisJSON" placeholder-text="Select">
+                               <select name="chartType" b2b-dropdown ng-model="reportRunJson.categoryAxis">
                                        <option b2b-dropdown-list option-repeat="d in reportRunJson.chartColumnJSONList" value="{{d.value}}">{{d.title}}</option>
                    </select>
             </td>
@@ -127,11 +127,11 @@ table{
 <table ng-repeat="rangeReport in reportRunJson.rangeAxisList">
        <thead>
            <tr>
-               <th width="25%">Range Axis</th>
-               <th  width="10%">Y Axis</th>
-               <th  width="20%">Chart Title</th>
+               <th width="18%">Range Axis</th>
+               <th  width="15%">Y Axis</th>
+               <th  width="15%">Chart Title</th>
                <th  width="22%">Color</th>
-               <th  width="18%">Line Type</th>
+               <th  width="25%">Line Type</th>
                <th></th>               
            </tr>
        </thead>
@@ -144,16 +144,17 @@ table{
             </td>
             <td>
                <input type="text" name="displayName" ng-model="rangeReport.rangeYAxis" style="width:100px;">
-            </td>            <td>
+            </td>
+            <td>
                <input type="text" name="displayName" ng-model="rangeReport.rangeChartGroup" style="width:150px;">
             </td>
             <td>
-                               <select name="chartType" b2b-dropdown ng-model="rangeReport.rangeColorJSON" placeholder-text="Select">
+                               <select name="chartType" b2b-dropdown ng-model="rangeReport.rangeColor">
                                        <option b2b-dropdown-list option-repeat="d in rangeColors" value="{{d.value}}">{{d.title}}</option>
                    </select>
             </td>
             <td>
-                               <select name="chartType" b2b-dropdown ng-model="rangeReport.rangeLineTypeJSON" placeholder-text="Select">
+                               <select name="lineType" b2b-dropdown ng-model="rangeReport.rangeLineType">
                                        <option b2b-dropdown-list option-repeat="d in lineTypes" value="{{d.value}}">{{d.title}}</option>
                    </select>
             </td>
@@ -208,7 +209,7 @@ table{
        
        <div class="fn-ebz-container" >
                <label class="fn-ebz-text-label">Category</label><BR>
-               <div class="form-field" att-select="reportRunJson.chartColumnJSONList" ng-model="reportRunJson.categoryAxisJSON" placeholder="Select an Option" show-input-filter="true"></div>
+               <div class="form-field" att-select="reportRunJson.chartColumnJSONList" ng-model="reportRunJson.categoryAxis" placeholder="" show-input-filter="true"></div>
        </div>
        <BR>
 
@@ -284,7 +285,7 @@ table{
        
        
 
-<div ng-show="reportRunJson.chartTypeJSON.value=='BarChart3D'">
+<div ng-show="reportRunJson.chartType=='BarChart3D'">
   
        <accordion close-others="true" css="att-accordion--no-box">
        <accordion-group id="accBar" heading="Bar Chart Options"  child-length="10">
@@ -337,9 +338,8 @@ table{
   </accordion-group>
 </accordion>
 </div>
-       
-       <div ng-show="reportRunJson.chartTypeJSON.value=='TimeSeriesChart'">
-       <!-- <div class="fn-ebz-text-label"><b>Time Series Chart Options</b></div><BR> -->
+       {{reportRunJson.chartType}}
+       <div ng-show="reportRunJson.chartType=='TimeSeriesChart'">
         <accordion close-others="true" css="att-accordion--no-box">
                <accordion-group id="accTimeChart"  heading="Time Series Chart Options"  child-length="10">
                
@@ -380,13 +380,11 @@ table{
        
        </div>
        
-       <div ng-show="reportRunJson.chartTypeJSON.value=='FlexTimeChart'">
-               
+       <div>           
                
                <accordion close-others="true" css="att-accordion--no-box">
                <accordion-group id="accFlexTimeChart"  heading="Flex Time Series Chart Options"  child-length="10">
                
-               <!-- <div class="fn-ebz-text-label"><b>Flex Time Series Chart Options</b></div><BR>  -->
                <div style="border:2px;border-style:solid;border-color:#808080;margin-bottom:9px">
                        <div style="margin-left:5px">
                <div class="fn-ebz-container">
@@ -414,7 +412,6 @@ table{
        
        
         
-       <!-- <div class="fn-ebz-text-label"><b>Common Options</b></div><BR>  -->
        
        <accordion close-others="true" css="att-accordion--no-box">
        <accordion-group id="accCommonOptions"  heading="Common Options"  child-length="10">
@@ -488,73 +485,250 @@ table{
             </div>    
         </b2b-expander-heading>               
         <b2b-expander-body>                   
-            <div>
-<!--   <div style="border:2px;border-style:solid;border-color:#808080;margin-bottom:9px"> -->
-<!--   <div style="margin-left:0px">
-       
-       <div class="fn-ebz-container">
-               <label class="fn-ebz-text-label">Primary Axis Label</label><BR>
-               <input type="text" name="prAxis" maxlength=50 ng-model="reportRunJson.primaryAxisLabel" style="width:210px"/>
-       </div>
-       <div class="fn-ebz-container" >
-               <label class="fn-ebz-text-label">Secondary Axis Label</label><BR>
-               <input type="text" name="secAxis" maxlength=75 ng-model="reportRunJson.secondaryAxisLabel"  style="width:210px"/>
-       </div>
-       <BR>
-       <div class="fn-ebz-container" >
-               <label class="fn-ebz-text-label">Range Axis Minimum Range</label><BR>
-               <input type="text" name="rAxisMinRange" only-digits ng-model="reportRunJson.minRange" style="width:210px"/>
-       </div>
-       <div class="fn-ebz-container">
-               <label class="fn-ebz-text-label">Maximum Range</label><BR>
-               <input type="text" name="rAxisMaxRange" only-digits ng-model="reportRunJson.maxRange"  ng-maxLength="35" style="width:210px"/>
-       </div><BR>              
-       
-        </div> -->
-        
-<div id="RangeTable">
-<table>
-       <thead>
-           <tr>
-               <th width="30%">Primary Axis Label</th>
-               <th  width="30%">Secondary Axis Label</th>
-               <th></th>               
-           </tr>
-       </thead>
-    <tbody>
-        <tr>
-            <td>
-               <input type="text" name="primaryAxisLabel" ng-model="reportRunJson.primaryAxisLabel" style="width:200px;">
-            </td>
-            <td>
-               <input type="text" name="secondaryAxisLabel" ng-model="reportRunJson.secondaryAxisLabel" style="width:200px;">
-            </td>
-        </tr>
-    </tbody>
-</table>
-<table>
-       <thead>
-           <tr>
-               <th width="30%">Range Axis Minimum Range</th>
-               <th  width="30%">Maximum Range</th>
-               <th></th>
-           </tr>
-       </thead>
-    <tbody>
-        <tr>
-            <td>
-               <input type="text" name="minRange" ng-model="reportRunJson.minRange" style="width:200px;">
-            </td>
-            <td>
-               <input type="text" name="maxRange" ng-model="reportRunJson.maxRange" style="width:200px;">
-            </td>
-        </tr>
-    </tbody>
-</table>
-</div>                 
-            </div>
+            <div>       
+                               <div id="RangeTable">
+                               <table>
+                                       <thead>
+                                           <tr>
+                                               <th width="30%">Primary Axis Label</th>
+                                               <th  width="30%">Secondary Axis Label</th>
+                                               <th></th>               
+                                           </tr>
+                                       </thead>
+                                   <tbody>
+                                       <tr>
+                                           <td>
+                                               <input type="text" name="primaryAxisLabel" ng-model="reportRunJson.primaryAxisLabel" style="width:200px;">
+                                           </td>
+                                           <td>
+                                               <input type="text" name="secondaryAxisLabel" ng-model="reportRunJson.secondaryAxisLabel" style="width:200px;">
+                                           </td>
+                                       </tr>
+                                   </tbody>
+                               </table>
+                               <table>
+                                       <thead>
+                                           <tr>
+                                               <th width="30%">Range Axis Minimum Range</th>
+                                               <th  width="30%">Maximum Range</th>
+                                               <th></th>
+                                           </tr>
+                                       </thead>
+                                   <tbody>
+                                       <tr>
+                                           <td>
+                                               <input type="text" name="minRange" ng-model="reportRunJson.minRange" style="width:200px;">
+                                           </td>
+                                           <td>
+                                               <input type="text" name="maxRange" ng-model="reportRunJson.maxRange" style="width:200px;">
+                                           </td>
+                                       </tr>
+                                   </tbody>
+                               </table>
+                               </div>                  
+                       </div>
+        </b2b-expander-body>     
+    </b2b-expanders>
+
+       <!-- BAR CHART OPTION SECTION STARTS HERE -->
+    <b2b-expanders ng-show="reportRunJson.chartType=='BarChart3D'" class="mpc-expanders" is-open="barChartOptionOpen">            
+        <b2b-expander-heading>
+            <div class="row">    
+                <div class="span6">
+                    <div class="heading-medium b2b-blue" ng-class=" { 'b2b-toggle-header-active': !barChartOptionOpen, 'b2b-toggle-header-inactive': barChartOptionOpen } ">Bar Chart Options</div>
+                    <p class="p-small">
+                    </p>                    
+                </div>
+                <div style="position: absolute;right: 250px;" class="span1">
+                       <i class="pull-right b2b-toggle-header-icon" b2b-expander-toggle b2b-accessibility-click="13,32" expand-icon="icon-primary-collapsed" collapse-icon="icon-primary-expanded" tabindex="0" aria-posinset="1" aria-setsize="2"></i>
+                </div>
+            </div>    
+        </b2b-expander-heading>               
+        <b2b-expander-body>                   
+            <div>       
+                               <div id="RangeTable">
+                               <table>
+                                       <thead>
+                                           <tr>
+                                               <th width="25%">Orientation</th>
+                                               <th  width="18%">Stacked</th>
+                                               <th  width="18%">Show Controls</th>
+                                               <th  width="18%">XAxis Date Type</th>
+                                               <th  width="21%">Display less XAxis tickers</th>                                                
+                                               <th></th>               
+                                           </tr>
+                                       </thead>
+                                   <tbody>
+                                       <tr>
+                                           <td>
+                                                           <label for="optionsOrientationVertical" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.verticalOrientation" id="optionsOrientationVertical" name="optionsOrientationVertical" value="true">
+                                                               <i class="skin"></i>
+                                                               <span>Vertical</span>
+                                                           </label>            
+                                                           <label for="optionsOrientationHorizontal" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.verticalOrientation" id="optionsOrientationHorizontal" name="optionsOrientationHorizontal" value="false">
+                                                               <i class="skin"></i>
+                                                               <span>Horizontal</span>
+                                                           </label>            
+                                           </td>
+                                           
+                                           <td>
+                                                           <label for="optionsStackedYes" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.stackedChart" id="optionsStackedYes" name="optionsStackedYes" value="true">
+                                                               <i class="skin"></i>
+                                                               <span>Yes</span>
+                                                           </label>            
+                                                           <label for="optionsStackedNo" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.stackedChart" id="optionsStackedNo" name="optionsStackedNo" value="false">
+                                                               <i class="skin"></i>
+                                                               <span>No</span>
+                                                           </label>                                        
+                                           </td>
+                                           <td>
+                                                           <label for="optionsShowControlYes" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.displayBarControls" id="optionsShowControlYes" name="optionsShowControlYes" value="true">
+                                                               <i class="skin"></i>
+                                                               <span>Yes</span>
+                                                           </label>            
+                                                           <label for="optionsShowControlNo" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.displayBarControls" id="optionsShowControlNo" name="optionsShowControlNo" value="false">
+                                                               <i class="skin"></i>
+                                                               <span>No</span>
+                                                           </label>                                        
+                                           </td>
+                                           <td>
+                                                           <label for="optionsXAxisDateTypeYes" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.xAxisDateType" id="optionsXAxisDateTypeYes" name="optionsXAxisDateTypeYes" value="true">
+                                                               <i class="skin"></i>
+                                                               <span>Yes</span>
+                                                           </label>            
+                                                           <label for="optionsXAxisDateTypeNo" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.xAxisDateType" id="optionsXAxisDateTypeNo" name="optionsXAxisDateTypeNo" value="false">
+                                                               <i class="skin"></i>
+                                                               <span>No</span>
+                                                           </label>                                        
+                                           </td>                                           
+                                           <td>
+                                                           <label for="optionsMinimizeXAxisTickersYes" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.minimizeXAxisTickers" id="optionsMinimizeXAxisTickersYes" name="optionsMinimizeXAxisTickersYes" value="true">
+                                                               <i class="skin"></i>
+                                                               <span>Yes</span>
+                                                           </label>            
+                                                           <label for="optionsMinimizeXAxisTickersNo" class="radio">
+                                                               <input type="radio" ng-model="reportRunJson.barChartOptions.minimizeXAxisTickers" id="optionsMinimizeXAxisTickersNo" name="optionsMinimizeXAxisTickersNo" value="false">
+                                                               <i class="skin"></i>
+                                                               <span>No</span>
+                                                           </label>                                        
+                                           </td>                                           
+                                       </tr>
+                                   </tbody>
+                               </table>
+                               <table>
+                                       <thead>
+                                           <tr>
+                                               <th width="25%">Is Time Axis?</th>
+                                               <th  width="25%">Log Scale (Y Axis)</th>
+                                               <th></th>
+                                           </tr>
+                                       </thead>
+                                   <tbody>
+                                       <tr>
+                                           <td>
+                                                   <label for="optionsTimeAxisYes" class="radio">
+                                                       <input type="radio" ng-model="reportRunJson.barChartOptions.timeAxis" id="optionsTimeAxisYes" name="optionsTimeAxisYes" value="true">
+                                                       <i class="skin"></i>
+                                                       <span>Yes</span>
+                                                   </label>            
+                                                   <label for="optionsTimeAxisNo" class="radio">
+                                                       <input type="radio" ng-model="reportRunJson.barChartOptions.timeAxis" id="optionsTimeAxisNo" name="optionsTimeAxisNo" value="false">
+                                                       <i class="skin"></i>
+                                                       <span>No</span>
+                                                   </label>                                        
+                                           </td>
+                                           <td>
+                                               <label for="logScaleYAxisCheckBox" class="checkbox">
+                                                   <input id="logScaleYAxisCheckBox" type="checkbox" ng-model="reportRunJson.barChartOptions.yAxisLogScale" /><i class="skin"></i><span></span>
+                                               </label>                                                    
+                                           </td>
+                                       </tr>
+                                   </tbody>
+                               </table>
+                               </div>                  
+                       </div>
+        </b2b-expander-body>     
+    </b2b-expanders>
+       <!-- BAR CHART OPTION SECTION ENDS HERE -->
+
+       <!-- TIME SERIES CHART OPTION SECTION STARTS HERE -->
+    <b2b-expanders ng-show="reportRunJson.chartType=='TimeSeriesChart'" class="mpc-expanders" is-open="timeSeriesChartOptionOpen">            
+        <b2b-expander-heading>
+            <div class="row">    
+                <div class="span6">
+                    <div class="heading-medium b2b-blue" ng-class=" { 'b2b-toggle-header-active': !timeSeriesChartOptionOpen, 'b2b-toggle-header-inactive': timeSeriesChartOptionOpen } ">Time Series Chart Options</div>
+                    <p class="p-small">
+                    </p>                    
+                </div>
+                <div style="position: absolute;right: 250px;" class="span1">
+                       <i class="pull-right b2b-toggle-header-icon" b2b-expander-toggle b2b-accessibility-click="13,32" expand-icon="icon-primary-collapsed" collapse-icon="icon-primary-expanded" tabindex="0" aria-posinset="1" aria-setsize="2"></i>
+                </div>  
+            </div>    
+        </b2b-expander-heading>               
+        <b2b-expander-body>                   
+            <div>       
+                               <div>
+                               <table>
+                                       <thead>
+                                           <tr>
+                                               <th width="20%">Render as</th>
+                                               <th width="20%">X Axis Label</th>
+                                               <th width="20%">X Axis Tickers</th>
+                                               <th width="20%">Is Time Axis?</th>
+                                               <th width="20%">Multi Series</th>                                                                                               
+                                           </tr>
+                                       </thead>
+                                   <tbody>
+                                       <tr>
+                                           <td>
+                                                   <label for="optionsLineChartRendererLine" class="radio">
+                                                       <input type="radio" ng-model="reportRunJson.timeSeriesChartOptions.lineChartRenderer" id="optionsLineChartRendererLine" name="optionsLineChartRendererLine" value="line">
+                                                       <i class="skin"></i>
+                                                       <span>Line</span>
+                                                   </label>            
+                                                   <label for="optionsLineChartRendererArea" class="radio">
+                                                       <input type="radio" ng-model="reportRunJson.timeSeriesChartOptions.lineChartRenderer" id="optionsLineChartRendererArea" name="optionsLineChartRendererArea" value="area">
+                                                       <i class="skin"></i>
+                                                       <span>Area</span>
+                                                   </label>                                        
+                                           </td>
+                                           <td>
+                                               <label for="xAxisLabelCheckBox" class="checkbox">
+                                                   <input id="xAxisLabelCheckBox" type="checkbox" ng-model="reportRunJson.timeSeriesChartOptions.showXAxisLabel" /><i class="skin"></i><span></span>
+                                               </label>                                                                                            
+                                           </td>
+                                           <td>
+                                               <label for="addXAxisTickerCheckBox" class="checkbox">
+                                                   <input id="addXAxisTickerCheckBox" type="checkbox" ng-model="reportRunJson.timeSeriesChartOptions.addXAxisTicker" /><i class="skin"></i><span></span>
+                                               </label>                                                                                            
+                                           </td>
+                                           <td>
+                                               <label for="isTimeAxisCheckBox" class="checkbox">
+                                                   <input id="isTimeAxisCheckBox" type="checkbox" ng-model="reportRunJson.timeSeriesChartOptions.nonTimeAxis" /><i class="skin"></i><span></span>
+                                               </label>
+                                           </td>
+                                           <td>
+                                               <label for="multiSeriesCheckBox" class="checkbox">
+                                                   <input id="multiSeriesCheckBox" type="checkbox" ng-model="reportRunJson.timeSeriesChartOptions.multiSeries" /><i class="skin"></i><span></span>
+                                               </label>
+                                           </td>
+                                       </tr>
+                                   </tbody>
+                               </table>
+                               </div>                  
+                       </div>
         </b2b-expander-body>     
     </b2b-expanders>
+       <!-- TIME SERIES CHART OPTION SECTION ENDS HERE -->
 
     <b2b-expanders class="mpc-expanders" is-open="commonOptionOpen">            
         <b2b-expander-heading>
@@ -606,7 +780,7 @@ table{
                                                                <span>down 90&deg;</span>
                                                            </label>            
                                                            <label for="optionsRadios5555" class="radio">
-                                                               <input type="radio" ng-model="reportRunJson.commonChartOptions.legendLabelAngle" id="optionsRadios5555" name="optionsRadio55" value="Standard">
+                                                               <input type="radio" ng-model="reportRunJson.commonChartOptions.legendLabelAngle" id="optionsRadios5555" name="optionsRadio55" value="standard">
                                                                <i class="skin"></i>
                                                                <span>Standard</span>
                                                            </label>            
@@ -616,12 +790,12 @@ table{
                                                            <fieldset role="radiogroup" radio-group-accessibility>
                                                            <td>
                                                            <label for="optionsRadiosTop" class="radio">
-                                                               <input type="radio" ng-model="reportRunJson.commonChartOptions.legendPosition" id="optionsRadiosTop" name="optionsRadioTop" value="Top">
+                                                               <input type="radio" ng-model="reportRunJson.commonChartOptions.legendPosition" id="optionsRadiosTop" name="optionsRadioTop" value="top">
                                                                <i class="skin"></i>
                                                                <span>Top</span>
                                                            </label>            
                                                            <label for="optionsRadiosBottom" class="radio">
-                                                               <input type="radio" ng-model="reportRunJson.commonChartOptions.legendPosition" id="optionsRadiosBottom" name="optionsRadioBottom" value="Bottom">
+                                                               <input type="radio" ng-model="reportRunJson.commonChartOptions.legendPosition" id="optionsRadiosBottom" name="optionsRadioBottom" value="bottom">
                                                                <i class="skin"></i>
                                                                <span>Bottom</span>
                                                            </label>            
@@ -717,3 +891,4 @@ table{
        <button type="submit" style="width: 90px; height:35px;margin-top:20px; margin-left:5px;" class="btn btn-alt btn-small">Run</button>
        </a>
        </div>    
+</div>
\ No newline at end of file
index e5a04a1..aaa1cac 100644 (file)
@@ -81,7 +81,7 @@ body {
            <button type="submit" style="width: 90px; height:35px;margin-top:20px; margin-left:5px;" class="btn btn-alt btn-small" ng-click="runReport()">Run</button>
          </form>
           <button type="submit" ng-show="showBackButton" style="width: 90px; height:35px;margin-top:20px; margin-left:5px;" class="btn btn-alt btn-small" ng-click="backToParentReport()">Back</button>
-         <iframe id="chartiframe" ng-show="showChart" width="100%" height="450px" style="border: none" scrolling="no"></iframe>
+         <iframe id="chartiframe" ng-show="showChart" width="100%" height="550px" style="border: none" scrolling="no"></iframe>
          <div id="errorDiv"></div>
          <div  ng-if="showGrid">
                <div id="grid1" ui-grid="gridOptions" ui-grid-pagination ui-grid-pinning ui-grid-resize-columns class="grid" style="height: {{gridHeight}}">
index 82d9d8b..b011a6f 100644 (file)
@@ -18,6 +18,7 @@
                <module>epsdk-workflow</module>
                <module>epsdk-app-common</module>
                <module>epsdk-app-overlay</module>
+               <module>epsdk-app-os</module>
        </modules>
 
        <properties>