Skip to content

Commit

Permalink
development notes enhance, version bump, missed dependency fix
Browse files Browse the repository at this point in the history
  • Loading branch information
nikitaeverywhere committed Dec 13, 2015
1 parent b443cd0 commit 2c179e5
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 15 deletions.
24 changes: 10 additions & 14 deletions DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,20 @@ Contributing

## Any fixes or propositions are welcome, just a couple of guidelines:
* Use spaces instead of tabs;
* Comment well every new contribution.
* Comment well every new contribution;
* Feel free to create a discussion or a new issue for every new contribution.

## Building tips
0. Ensure that you have NodeJS (npm) installed, and executed the following:
1. <code>npm install</code> (to install all required dependencies).
1. To test your changes in sources without exporting:
1. Comment/replace <code>$$$ISOK(..RequireAuthorization())</code> in %WebTerminal.Engine studio class;
2. Open <code>index.html</code> file from local server (execute `node localServer/run.js`). You may also need to change the debug port 57772 in TerminalController.js.
3. OR, just build & import terminal application into Cach? each time you make change.
2. After changes tested, export the project to studio:
1. Run <code>gulp</code> command to build the project;
3. Find build/CacheWebTerminal-v*.xml file and import it to the studio.
3. By making changes in studio files (*.cls, *.mac) just export the code into appropriate files in repository. (insert changes by copying them into `export/template.xml` file)
4. If you commented line as the first step says, fo not forget to uncomment it.
0. Ensure that you have NodeJS (npm as well) installed, and executed the following:
1. `npm install` (to install all required dependencies).
1. Having changes made, export the project:
1. Run `gulp` command to build the project;
3. Find `build/CacheWebTerminal-v*.xml` file and import it to the studio.
2. By making changes in studio files (*.cls, *.mac) just export the code into appropriate files in repository. (insert changes by copying them into `export/template.xml` file)

## Applications Integration
If you want to integrate WebTerminal with your application, follow the next tips & tricks:
* An <code>NS</code> parameter of GET request can set default namespace. For example, URL `../terminal/?NS=USER` will open terminal in USER namespace.
* In order to use IFrame to insert terminal on page, you may need to add <code>sandbox="allow-same-origin allow-scripts"</code> attribute to IFrame tag to enable storage and scripts which are required.
* A `NS` parameter of GET request can set default namespace. For example, URL `../terminal/?NS=USER` will open terminal in USER namespace.
* In order to use IFrame to insert terminal on page, you may need to add `sandbox="allow-same-origin allow-scripts"` attribute to IFrame tag to enable storage and scripts which are required.
* To get latest version of terminal, you can parse [latestVersion](http://intersystems-ru.github.io/webterminal/latestVersion) file which is always available on WEB and then request XML to import from `http://intersystems-ru.github.io/webterminal/files/WebTerminal-<b>{FILE PART}</b>.xml`.
* Web Terminal is able to auto-update itself, just execute `/update` command in the terminal.
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"title": "Cache WEB Terminal",
"description": "Web-based terminal emulator for Caché administering.",
"author": "ZitRo",
"version": "3.1.0",
"version": "3.1.1",
"releaseNumber": 13,
"repository": {
"type": "git",
Expand All @@ -14,6 +14,7 @@
},
"devDependencies": {
"express": "^4.13.3",
"gulp": "^3.9.0",
"gulp-concat": "^2.6.0",
"gulp-html-replace": "^1.5.5",
"gulp-minify-css": "^1.2.2",
Expand Down
18 changes: 18 additions & 0 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,3 +57,21 @@ Type "/help" there to get more information.
<td>Hope you will find this useful.</td>
</tr>
</table>

### Development
We are glad to see anyone who want to contribute to Caché WEB Terminal development! Check the
[developer's](https://github.com/intersystems-ru/webterminal/blob/master/DEVELOPMENT.md) guide.

In short, the "hot start" is extremely easy. Having latest [NodeJS](https://nodejs.org/en/) installed,
execute the following:

```sh
git clone <this repository URL>
cd <cloned repository name>
npm install -g gulp
npm install
gulp
```

Now, in `build` folder you will find `CacheWebTerminal-v*.xml` file ready to import. Every time you
changes is ready to be tested, just run `gulp` command again and import XML again.

0 comments on commit 2c179e5

Please sign in to comment.