jsharmony 1.28.0 → 1.28.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -369,6 +369,7 @@ jsHarmonyServer.prototype.Run = function(cb){
369
369
  _this.servers.push(server);
370
370
  _this.addWebSocketHandler(server);
371
371
  server.timeout = _this.serverConfig.request_timeout;
372
+ if(server.timeout > 2*60*1000) server.keepAlive = true;
372
373
  _this.ListenPort(server, _this.serverConfig.http_port, _this.serverConfig.http_ip, function(){
373
374
  _this.jsh.Log.info(_this.jsh.Config.app_name + ' listening on HTTP port ' + server.address().port);
374
375
  _this.jsh.Log.info('Log in at '+_this.getURL());
@@ -395,6 +396,7 @@ jsHarmonyServer.prototype.Run = function(cb){
395
396
  _this.servers.push(server);
396
397
  _this.addWebSocketHandler(server);
397
398
  server.timeout = _this.serverConfig.request_timeout;
399
+ if(server.timeout > 2*60*1000) server.keepAlive = true;
398
400
  var new_http_port = 0;
399
401
  var new_https_port = 0;
400
402
 
@@ -438,6 +440,7 @@ jsHarmonyServer.prototype.Run = function(cb){
438
440
  var redirect_server = http.createServer(redirect_app);
439
441
  _this.servers.push(redirect_server);
440
442
  redirect_server.timeout = _this.serverConfig.request_timeout;
443
+ if(redirect_server.timeout > 2*60*1000) redirect_server.keepAlive = true;
441
444
  _this.ListenPort(redirect_server, _this.serverConfig.http_port, _this.serverConfig.http_ip, function(){
442
445
  new_http_port = redirect_server.address().port;
443
446
  start_https_server(cb,[redirect_server]);
package/lib/ejsext.js CHANGED
@@ -291,6 +291,7 @@ exports.BreadCrumbs = function (req, jsh, fullmodelid) {
291
291
  else if(model.title && _.isString(model.title.browse)) mtitle = model.title.browse;
292
292
  }
293
293
  if(mtitle) rslt += mtitle;
294
+ else rslt += "<#=xmodel.title||''#>";
294
295
 
295
296
  rslt += '</div>';
296
297
  return rslt;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jsharmony",
3
- "version": "1.28.0",
3
+ "version": "1.28.2",
4
4
  "description": "Rapid Application Development (RAD) Platform for Node.js Database Application Development",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -379,7 +379,7 @@ var jsHarmonyRouter = function (jsh, siteid) {
379
379
  });
380
380
  router.get('/_restart', function (req, res, next) {
381
381
  if(!('SYSADMIN' in req._roles) && !('DEV' in req._roles)) return next();
382
- res.end('<html><body>System will restart in 1 sec...<script type="text/javascript">window.setTimeout(function(){document.write(\'Restart initiated...\');},1000); window.setTimeout(function(){window.location.href="/";},5000);</script></body></html>');
382
+ res.end('<html><body>Service will restart in 1 sec...<script type="text/javascript">window.setTimeout(function(){document.write(\'Restart initiated...\');},1000); window.setTimeout(function(){window.location.href="/";},5000);</script></body></html>');
383
383
  jsh.Restart(1000);
384
384
  });
385
385
  router.get('/_listing', function (req, res, next) {
@@ -3,7 +3,7 @@
3
3
  var xmenu_headings = {};
4
4
  if(locals.menudata && menudata.MainMenu){
5
5
  %><div class="xmenu"><%
6
- for(var i=0;i<menudata.MainMenu.length;i++){ menuitem = menudata.MainMenu[i];
6
+ for(var i=0;i<menudata.MainMenu.length;i++){ var menuitem = menudata.MainMenu[i];
7
7
  xmenu_headings[menuitem.ID] = menuitem.Title;
8
8
  %><a href="<%-menuitem.Link%>" onclick="<%-ejsext.escapeHTML(menuitem.OnClick?menuitem.OnClick+';return false;':'')%>" data-id="<%=menuitem.ID%>" class="xmenuitem xmenuitem_<%=ejsext.escapeCSSClass(menuitem.ID)%> <%-ejsext.iif(menuitem.Selected,'selected')%>"><%=menuitem.Title%><div class="bottom"></div></a><%
9
9
  }
@@ -17,7 +17,7 @@ if(locals.menudata && menudata.SubMenus){
17
17
  var parentname = '';
18
18
  if(parentid in xmenu_headings) parentname = xmenu_headings[parentid];
19
19
  %><div style="display:none;" class="xsubmenu xsubmenu_<%=ejsext.escapeCSSClass(parentid)%>" data-parent="<%=parentid%>"><div class="head"><%=parentname%>:</div><%
20
- for(var i=0;i<submenu.length;i++){ menuitem = submenu[i];
20
+ for(var i=0;i<submenu.length;i++){ var menuitem = submenu[i];
21
21
  %><a href="<%-menuitem.Link%>" onclick="<%-ejsext.escapeHTML(menuitem.OnClick?menuitem.OnClick+';return false;':'')%>" data-id="<%=menuitem.ID%>" class="xsubmenuitem xsubmenuitem_<%=ejsext.escapeCSSClass(menuitem.ID)%> <%-ejsext.iif(menuitem.Selected,'selected')%>"><%=menuitem.Title%></a><%-ejsext.iif(i<submenu.length-1,'<div>&nbsp;|&nbsp;</div>')%><%
22
22
  }
23
23
  %><a class="xsubmenu_more" href="#">Menu &nbsp;&#9656;</a><%