|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| | The class "Products" may build the manifest for the simulation products,
and can manage/manipulate this manifest. | 
| | 
| 
| 
| 
| 
| | * Calculate pixel resolution note on pressing "Enter" in "common/nside"
* Update the pixel resolution note as well as "common/lmax" when
  "common/nside" changed. | 
| | |  | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | * Major change to the Web UI.
  + The WebSocket is only used to push configurations and logging
    messages to the client;
  + The configuration manipulations and console operations are
    implemented using the AJAX techniques;
  + Modal box is used to notify the AJAX request results, therefore much
    better user experience.
* Several bug fixes to the Web UI.
* Minor improvements to the simulation parts.
* TODO/problems:
  + The console task currently still blocks the Tornado IO loop! | 
| | |  | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| | * Fix the wrong "action=reset" in "setServerConfigs()"
* Add the missing "return" in the jQuery AJAX chain | 
| | |  | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| 
| | * Remove the authentication requirement on GET operation
* "main.js": Redirect to the login page if POST response 403 forbidden
* "main.js": Use global AJAX events handling instead of `$.ajaxSetup()` | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| | * Also update the logging messages styles for the Web UI
* Show a modal notification when the task finished. | 
| | 
| 
| 
| | Also support modal dialog for confirmation and operation results. | 
| | 
| 
| 
| 
| 
| 
| 
| | * Rename to "ConsoleAJAXHandler"
* Change to use the request/response model, which accepts the AJAX
  request and then response.
* Update logging handler to push messages to all connected clients
* Many simplifications and rewrites. | 
| | 
| 
| 
| | Also change the pushed messages to have "action=push" and "subtype=log" | 
| | 
| 
| 
| 
| 
| 
| | * Add new attributes "executor" and "task_status" for "console.py"
* Define an option for the "executor"
* Rename attribute "ws_clients" to "websockets"
* Update docstring and comments | 
| | |  | 
| | 
| 
| 
| 
| 
| 
| | * IE11 does NOT support most of the ECMAScript 6 features, such as the
  "computed property names" which used in "configs.js".
* Do not use the "computed property names" feature to support IE11
* Fix a missing quotation in "index.html" | 
| | 
| 
| 
| | See the docstring for more details. | 
| | 
| 
| 
| 
| 
| 
| | NOTE:
By using the "tornado.options", each module can defines its own
options, which are added to the global namespace.
And the defined options can also be used by other modules. | 
| | |  | 
| | |  | 
| | 
| 
| 
| | No contents/functionalities changes. | 
| | 
| 
| 
| 
| | * Implement "showModalConsole()" based on "showModal()"
* Move binding function from "websocket.js" to "console.js" | 
| | |  | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| | Wrap the section contents with a div of class "body", separating from
its heading. | 
| | 
| 
| 
| 
| 
| | The section header has class "heading" and a toggle control with class
"toggle", which will toggle the display of the next block with the
"body" class. | 
| | |  | 
| | |  | 
| | 
| 
| 
| | Also improve the "showConfigsModal()" to support buttons. | 
| | 
| 
| 
| 
| | The "exists" action through the GET request will check the existence of
the specified filepath (which should be an absolute path). | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | * Interact with server-side configurations using AJAX GET and POST,
  instead of sending and receiving messages through the WebSocket.
* Add callbacks on both AJAX success and error, to show a modal box
  displaying the operation results/errors, achieving better user
  experiences.
* Use jQuery deferred and promises to achieve sequential operations.
* Also move the binding function from "websocket.js" to "configs.js" | 
| | |  | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | The handling of "configs" and "console" types of messages, will be
changed to implement using the AJAX techniques.
The basic WebSocket communication is too low-level, and there is no easy
way to relate each received message to the corresponding sent message.
There are high-level sub-protocols exists (e.g., WAMP [1]) to allow the
RPC (remote procedure call) and publish/subscribe operations, however,
the Tornado web framework current does not support them, and another
client JavaScript library is also required.
Using the more traditional AJAX techniques allow the request-response
model and sequential operations (e.g., jQuery deferred and promises) be
easily implemented.  Therefore better operation interaction and
reflection and error handling is achieved.
[1]: WAMP: Web Application Messaging Protocl, http://wamp-proto.org/ | 
| | 
| 
| 
| | Also expand the output file for the prefix "~" (tilde) | 
| | 
| 
| 
| 
| | NOTE:
These two AJAX handlers are currently not finished! | 
| | |  | 
| | 
| 
| 
| 
| 
| 
| 
| | * Add function "getCookie()": get the value of the specified key from
  the cookies;
* Add jQuery extension ".postJSON()": wrapper for easier AJAX post,
  with the XSRF header and correct content type;
* Also set the default "error" handle function for AJAX request. | 
| | |  | 
| | |  | 
| | |  | 
| | |  | 
| | 
| 
| 
| 
| 
| 
| | * Change configuration status text from "Valid :)" to "OK"
* Reduce maximum WS connection trials from 100 to 21
* Fix the wrong global name of "g_ws_reconnect"
* Comment the Console "Stop" button, which is currently not implemented |