Opened 13 years ago

Closed 12 years ago

#1768 closed task (fixed)

Implement RFC110 UI

Reported by: yangte Owned by: Ted Yang
Priority: high Milestone:
Component: Server Version:
Severity: major Keywords:
Cc: External ID:

Description

As mentioned in the RFC 110, we will implement a UI under the site admin. So this ticket is for implementing the UI part of RFC 110. As the profiling API is not finish yet, this patch is only the partial implement of the UI.

Attachments (10)

ProfilingAPI_GUI_part1.patch (88.0 KB ) - added by yangte 13 years ago.
1.PNG (54.4 KB ) - added by yangte 13 years ago.
UI screenshot 1
2.PNG (68.5 KB ) - added by yangte 13 years ago.
UI screenshot 2
ProfilingAPI_GUI_part2.patch (67.5 KB ) - added by yangte 13 years ago.
ProfilingAPI_GUI_part4.patch (14.8 KB ) - added by yangte 13 years ago.
fix some defects
ProfilingAPI_GUI_part5.patch (138.7 KB ) - added by yangte 13 years ago.
ProfilingAPI_GUI_part6.patch (12.4 KB ) - added by yangte 12 years ago.
ProfilingAPI_GUI_part7.patch (33.2 KB ) - added by yangte 12 years ago.
ProfilingAPI_GUI_part8.patch (2.8 KB ) - added by yangte 12 years ago.
ProfilingAPI_GUI_part9.patch (4.0 KB ) - added by yangte 12 years ago.

Download all attachments as: .zip

Change History (22)

by yangte, 13 years ago

comment:1 by yangte, 13 years ago

Version: 2.1.0

comment:2 by yangte, 13 years ago

As the profiling API is not finished yet, this patch is only the partial implement of the UI. It includes:

  1. Add a new php file "PerformanceReport.php" under the site Admin
  2. Add one link point to the PerformaceReport page on the left menu items
  3. implement the settings part of the UI, in this part users can input their settings to get the results.
  4. use temp data to simulate the Profiling results, in this part users can view the profiling results in a visual way.

by yangte, 13 years ago

Attachment: 1.PNG added

UI screenshot 1

by yangte, 13 years ago

Attachment: 2.PNG added

UI screenshot 2

comment:3 by yangte, 13 years ago

Summary: Implement RFC110 UI - part 1Implement RFC110 UI

The ProfilingAPI_GUI_part2.patch includes:

  1. fixed layer info table head with vertical scroll


  1. click layer info table row will display layer detail info


  1. export works


  1. fix some UI defects:
    • change "Select settings" to "Select setting..."
    • the ajax loading image can be clicked to submit the page (use <img> instead of <input type="img">)
    • add some icons

by yangte, 13 years ago

comment:4 by yangte, 13 years ago

The ProfilingAPI_GUI_Part3.patch includes:

  1. implement the "Recent Settings" functions
  2. use cookie to save the last run settings
  3. display inline alert message when the setting is changed
  4. get the real profiling result use the new profiling API
  5. click the layer table row to display the detailed info
  6. export the performance report use the real data
  7. fix some UI defects:
    a) pass the session ID to the mapViewer so users don't need to input the username and password
    b) user reopen the mapviewer can zoom to the view which last time opened
    c) when the mapViewer opened, user press "Enter" should not refresh the whole page
    d) the order of the map names should be case insensitive

by yangte, 13 years ago

fix some defects

comment:5 by yangte, 13 years ago

The ProfilingAPI_GUI_Part4.patch is mainly fixed some UI defects:

  1. The alphabetical order of Map resource name should make the lower case prior to uppercase
  2. use "Infinity" to replace the '1000000000000' when display the scale range
  3. correct the the error message as "is no longer..."
  4. when user reset the setting from the mapviewer if should display warning as the setting changed
  5. correct the recent setting time format
  6. when the layer detailed information contains special chars the layer detailed info will not be displayed
  7. adjust the render time graph style
  8. add the initial sorting to the layer information table

by yangte, 13 years ago

comment:6 by yangte, 13 years ago

The ProfilingAPI_GUI_Part5.patch is mainly fixed some UI defects:

  1. In the layer information table, the selected row should be highlighted, and the move over highlighted is removed
  2. For the scale, it should keep 4 decimals
  3. 0 only is invalid for the scale value
  4. if no filter was applied, then "No filter was applied to this layer." should be displayed
  5. refine some code structure, replace the <style>section and <script> section in performanceReport.php

by yangte, 12 years ago

comment:7 by yangte, 12 years ago

The ProfilingAPI_GUI_Part6.patch is mainly fixed some UI defects:

  1. When session is timeout, the whole performance report page should redirect to the login page, not part of the page
  2. Some map needs a long time to execute the profiling map API, so we need to set the time limit longer for 15 minutes
  3. The column headers of the layers info table should be correct when the content is longer than the column width
  4. In IE9 quirks mode, the background div is display in the top, not cover the whole page, so change the position mode as "absolute"

by yangte, 12 years ago

comment:8 by yangte, 12 years ago

The ProfilingAPI_GUI_Part7 is mainly add error handling for performance report and fixed some UI defects:

  1. While profing the map, there will be errors if something wrong, so we must display the error message
  2. fix the problem that Apache+Jave will fail to open the "select setting" dialogue
  3. fix the problem that error message will not disapper when user click the "Recent Settings" to enter correct values
  4. fix the problem when export the profing data, the format of scale will be recognized as time

comment:9 by yangte, 12 years ago

The ProfilingAPI_GUI_Part8 is mainly fixed some defects on Linux:

  1. on Linux, the "select settings" dialogue is not displayed correctly, cause the code depends on the folder "ajaxviewerjava" which is always installed on liunx
  2. fix the problem that session timeout issue

by yangte, 12 years ago

by yangte, 12 years ago

comment:10 by yangte, 12 years ago

The ProfilingAPI_GUI_Part9 is mainly fixed some UI defects:

  1. the Center Point/Scale text box doesn't give warning if user cut the text and make it empty or paste the invalid string into it, use the context menu. This is because "onkeyup" event doesn't support the "copy/paste", so we use the "onInput" to instead. Unfortunately, the IE doesn't support "Input", so we use "onpropertychange" event under the IE;
  1. the warning icon is too close to the border, so add 2px space and make the error info has a fixed height;
  1. in IE, when the exception message is too long, it will exceed the width of the container, so add "word-wrap:break-word;" in the style;
  1. when the layer info table is empty, an excption of null reference will be thrown, so catch this exception and return ;
  1. fix the tooltip display problem in IE9.

comment:11 by yangte, 12 years ago

Add performance report help doc and update the links

comment:12 by yangte, 12 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.