rsence-pre 2.2.0.11 → 2.2.0.12

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.
Files changed (31) hide show
  1. data/VERSION +1 -1
  2. data/js/controls/window/themes/default/window.css +9 -0
  3. data/js/datetime/calendar/calendar.js +109 -11
  4. data/js/datetime/calendar/themes/default/calendar.css +89 -7
  5. data/js/datetime/calendar/themes/default/calendar.html +11 -0
  6. data/js/datetime/calendar/themes/default/calendar_bg-ie6.gif +0 -0
  7. data/js/datetime/calendar/themes/default/calendar_bg.png +0 -0
  8. data/js/datetime/calendar/themes/default/calendar_parts1-ie6.gif +0 -0
  9. data/js/datetime/calendar/themes/default/calendar_parts1.png +0 -0
  10. data/js/datetime/calendar/themes/default/calendar_parts2-ie6.gif +0 -0
  11. data/js/datetime/calendar/themes/default/calendar_parts2.png +0 -0
  12. data/js/datetime/datetimevalue/datetimevalue.js +22 -5
  13. data/js/foundation/eventmanager/eventmanager.js +8 -6
  14. data/js/foundation/locale_settings/locale_settings.js +7 -0
  15. data/js/lists/radiobuttonlist/radiobuttonlist.js +4 -2
  16. data/js/menus/minimenu/minimenu.js +7 -2
  17. data/lib/conf/argv.rb +1 -130
  18. data/lib/conf/default.rb +5 -5
  19. data/lib/plugins/gui_plugin.rb +2 -0
  20. data/lib/plugins/plugin_plugins.rb +1 -1
  21. data/lib/rsence.rb +134 -3
  22. data/plugins/client_pkg/client_pkg.rb +7 -3
  23. data/plugins/client_pkg/lib/client_pkg_build.rb +2 -1
  24. metadata +11 -12
  25. data/js/datetime/timesheet/old_timesheet.js +0 -292
  26. data/js/datetime/timesheet/themes/default/old_timesheet.css +0 -30
  27. data/js/datetime/timesheet/themes/default/old_timesheet.html +0 -2
  28. data/js/datetime/timesheet_item/old_timesheet_item.js +0 -308
  29. data/js/datetime/timesheet_item/themes/default/old_timesheet_item.css +0 -42
  30. data/js/datetime/timesheet_item/themes/default/old_timesheet_item.html +0 -8
  31. data/js/datetime/timesheet_item_edit/old_timesheet_item_edit.js +0 -274
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.2.0.11.pre
1
+ 2.2.0.12.pre
@@ -23,6 +23,15 @@
23
23
  cursor: inherit;
24
24
  background-repeat: no-repeat;
25
25
  }
26
+ .window_bg, .window_body {
27
+ opacity: 0.95;
28
+ }
29
+ .window_titlebar {
30
+ opacity: 0.97;
31
+ }
32
+ .inactive .window_titlebar {
33
+ opacity: 0.95;
34
+ }
26
35
 
27
36
  .window_shadow {
28
37
  left: 4px; right: 4px; top: 4px; bottom: 4px;
@@ -41,7 +41,8 @@ HCalendar = HControl.extend({
41
41
  },
42
42
 
43
43
  /** = Description
44
- * Simple clickthrouct
44
+ * Simple clickthrough
45
+ **/
45
46
  click: function(){
46
47
  return false;
47
48
  },
@@ -55,14 +56,16 @@ HCalendar = HControl.extend({
55
56
  return;
56
57
  }
57
58
  var _weekdays_localized = this.weekdaysLocalized(),
58
- _weekdays_width = Math.floor(this.rect.width/_weekdays_localized.length),
59
+ _availWidth = this.rect.width-2,
60
+ _weekdays_width = Math.floor(_availWidth/8),
61
+ _leftPlus = (_availWidth % 8)-1,
59
62
  _weekdays_html = [],
60
63
  i = 0,
61
64
  _weekdays_html_pre = ['<div style="width:'+_weekdays_width+'px;left:','px">'],
62
65
  _weekdays_html_suf = '</div>';
63
66
  for(;i<_weekdays_localized.length;i++){
64
67
  _weekdays_html.push([
65
- _weekdays_html_pre.join(i*_weekdays_width),
68
+ _weekdays_html_pre.join(i*_weekdays_width+_leftPlus),
66
69
  _weekdays_localized[i],
67
70
  _weekdays_html_suf
68
71
  ].join('') );
@@ -132,6 +135,86 @@ HCalendar = HControl.extend({
132
135
  },
133
136
  viewMonth: [1970,0],
134
137
 
138
+ monthMenu: function(){
139
+ if(!HPopupMenu){
140
+ console.log('HPopupMenu not included; cannot continue');
141
+ return;
142
+ }
143
+ var
144
+ _calendar = this,
145
+ _menu = HMiniMenu.extend({
146
+ refreshValue: function(){
147
+ this.base();
148
+ if( this._killAfterRefresh ){
149
+ this._killAfterRefresh = false;
150
+ var _menu = this;
151
+ _calendar.setValue( _calendar.setMonth( this.value ) );
152
+ if( _calendar.month() !== this.value ){
153
+ _calendar.setValue( _calendar.setMday( 30 ) );
154
+ _calendar.setValue( _calendar.setMonth( this.value ) );
155
+ }
156
+ if( _calendar.month() !== this.value ){
157
+ _calendar.setValue( _calendar.setMday( 29 ) );
158
+ _calendar.setValue( _calendar.setMonth( this.value ) );
159
+ }
160
+ if( _calendar.month() !== this.value ){
161
+ _calendar.setValue( _calendar.setMday( 28 ) );
162
+ _calendar.setValue( _calendar.setMonth( this.value ) );
163
+ }
164
+ COMM.Queue.push( function(){_menu.die();} );
165
+ }
166
+ },
167
+ _killAfterRefresh: false,
168
+ menuHide: function(){
169
+ this.base();
170
+ var _menu = this;
171
+ _menu._killAfterRefresh = true;
172
+ COMM.Queue.push( function(){_menu._killAfterRefresh && _menu.refreshValue();} );
173
+ return true;
174
+ }
175
+ }).nu( [24, 0, Math.round(this.rect.width*0.66)-24, 20 ], this, {
176
+ value: this.month(),
177
+ initialVisibility: true
178
+ } ),
179
+ _monthValues = [],
180
+ i = 0,
181
+ _monthNames = HLocale.dateTime.strings.monthsLong;
182
+ for(;i<_monthNames.length;i++){
183
+ _monthValues.push( [ i, _monthNames[i] ] );
184
+ }
185
+ _menu.setListItems( _monthValues );
186
+ },
187
+
188
+ yearMenu: function(){
189
+ var
190
+ _calendar = this,
191
+ _year = HNumericTextControl.extend({
192
+ refreshValue: function(){
193
+ this.base();
194
+ _calendar.setValue( _calendar.setYear( this.value ) );
195
+ },
196
+ textBlur: function(){
197
+ this.base();
198
+ COMM.Queue.push( function(){_year.die();} );
199
+ },
200
+ textEnter: function(){
201
+ this.base();
202
+ if( ( EVENT.status[ EVENT.keysDown ].indexOf( 13 ) !== -1 ) || ( EVENT.status[ EVENT.keysDown ].length === 0 ) ){
203
+ ELEM.get( this.markupElemIds.value ).blur();
204
+ }
205
+ }
206
+ }).nu(
207
+ HRect.nu(this.rect.width/2,0,this.rect.width-32,20),
208
+ this, {
209
+ value: this.year(),
210
+ minValue: -38399,
211
+ maxValue: 38400,
212
+ focusOnCreate: true,
213
+ refreshOnInput: false
214
+ }
215
+ );
216
+ },
217
+
135
218
  /** = Description
136
219
  * Draws the calendar with the date open given as input.
137
220
  *
@@ -146,10 +229,13 @@ HCalendar = HControl.extend({
146
229
  _monthLast = this.lastDateOfMonth(_date),
147
230
  _firstDate = _calendarDateRange[0],
148
231
  _lastDate = _calendarDateRange[1],
149
- _column_count = this.weekdaysLocalized().length,
150
- _column_width = Math.floor((this.rect.width-1)/_column_count),
151
- _row_height = Math.floor((this.rect.height-1-35)/6),
152
- _week_html_pre = ['<div class="calendar_weeks_week_row" style="width:'+(this.rect.width-3)+'px;height:'+_row_height+'px;top:','px">'],
232
+ _availWidth = this.rect.width-2,
233
+ _availHeight = this.rect.height-36,
234
+ _leftPlus = (_availWidth%8)-2,
235
+ _topPlus = _availHeight%6,
236
+ _column_width = Math.floor(_availWidth/8),
237
+ _row_height = Math.floor(_availHeight/6),
238
+ _week_html_pre = ['<div class="calendar_weeks_week_row" style="width:'+(_availWidth)+'px;height:'+_row_height+'px;top:','px">'],
153
239
  _week_html_suf = '</div>',
154
240
  _col_html_pre = ['<a href="javascript:void(HSystem.views['+this.viewId+'].setValue(','));" class="calendar_weeks_week_col','" style="width:'+_column_width+'px;height:'+_row_height+'px;line-height:'+_row_height+'px;left:','px">'],
155
241
  _col_html_suf = '</a>',
@@ -163,6 +249,7 @@ HCalendar = HControl.extend({
163
249
  _colMs,
164
250
  _colSecs,
165
251
  _colDate,
252
+ _monthYearHTML,
166
253
  _extraCssClass;
167
254
  for(; _row<6; _row++){
168
255
  _week_html = [];
@@ -190,7 +277,7 @@ HCalendar = HControl.extend({
190
277
  _col_html_pre[1],
191
278
  _extraCssClass,
192
279
  _col_html_pre[2],
193
- (_col*_column_width),
280
+ (_col*_column_width+_leftPlus),
194
281
  _col_html_pre[3],
195
282
  this.mday(_colDate),
196
283
  _col_html_suf
@@ -199,13 +286,24 @@ HCalendar = HControl.extend({
199
286
  _week_html.push(_col_html);
200
287
  }
201
288
  _month_html.push([
202
- _week_html_pre.join(_row*_row_height),
289
+ _week_html_pre.join(_row*_row_height+_topPlus),
203
290
  _week_html.join(''),
204
291
  _week_html_suf
205
292
  ].join('') );
206
293
  }
207
- ELEM.setHTML(this.markupElemIds.value, _month_html.join(''));
208
- ELEM.setHTML(this.markupElemIds.state, this.monthName(_date)+'&nbsp;'+this.year(_date));
294
+ ELEM.setHTML( this.markupElemIds.value, _month_html.join('') );
295
+ _monthYearHTML = [
296
+ '<a href="javascript:void(HSystem.views[',
297
+ this.viewId,
298
+ '].monthMenu());">',
299
+ this.monthName(_date),
300
+ '</a>&nbsp;<a href="javascript:void(HSystem.views[',
301
+ this.viewId,
302
+ '].yearMenu());">',
303
+ this.year(_date),
304
+ '</a>'
305
+ ].join('');
306
+ ELEM.setHTML( this.markupElemIds.state, _monthYearHTML );
209
307
  this.viewMonth = [_monthFirst.getUTCFullYear(),_monthFirst.getUTCMonth()];
210
308
  }
211
309
  });
@@ -1,7 +1,6 @@
1
1
  .calendar_control {
2
2
  position: absolute;
3
- left: 0px; top: 0px; right: 1px; bottom: 1px;
4
- border: 1px solid #999;
3
+ left: 0px; top: 0px; right: 0px; bottom: 0px;
5
4
  }
6
5
  .calendar_head {
7
6
  position: absolute;
@@ -85,11 +84,8 @@
85
84
  }
86
85
  .calendar_weeks_week_col_no {
87
86
  color: #666;
88
- border-left: 1px solid #999;
89
- border-top: 1px solid #999;
90
87
  }
91
88
  .calendar_weeks_week_col_no:hover {
92
- background-color: #fff;
93
89
  color: #000;
94
90
  }
95
91
  .calendar_weeks_week_col_yes,
@@ -97,11 +93,97 @@
97
93
  color: #000;
98
94
  background-color: #ddd;
99
95
  font-weight: bold;
100
- border-left: 1px solid #666;
101
- border-top: 1px solid #666;
96
+ border: 1px solid #666;
102
97
  }
103
98
  .calendar_weeks_week_col_sel,
104
99
  .calendar_weeks_week_col_yes:hover {
105
100
  background-color: #fff;
106
101
  }
102
+ .calendar_bg {
103
+ position: absolute;
104
+ left: -1px; right: -1px;
105
+ top: -1px; bottom: -2px;
106
+ }
107
+ .calendar_bg * {
108
+ position: absolute;
109
+ font-size: 0; line-height: 0; /* ie bug work-arounds */
110
+ }
111
+ .disabled > .calendar_bg {
112
+ opacity: 0.9;
113
+ }
114
+ .calendar_bg .calendar_nw,
115
+ .calendar_bg .calendar_n,
116
+ .calendar_bg .calendar_ne,
117
+ .calendar_bg .calendar_sw,
118
+ .calendar_bg .calendar_s,
119
+ .calendar_bg .calendar_se {
120
+ height: 12px;
121
+ background-image: #{this.getCssFilePath('calendar_parts1.png')};
122
+ }
123
+ .calendar_bg .calendar_c {
124
+ left: 12px; right: 12px; top: 12px; bottom: 12px;
125
+ background-color: #fbfafb;
126
+ /* background-image: #{this.getCssFilePath('calendar_bg.png')};*/
127
+ }
128
+ .calendar_bg .calendar_w,
129
+ .calendar_bg .calendar_e {
130
+ top: 12px; bottom: 12px;
131
+ width: 12px;
132
+ background-image: #{this.getCssFilePath('calendar_parts2.png')};
133
+ }
134
+ .calendar_bg .calendar_n,
135
+ .calendar_bg .calendar_s {
136
+ left: 12px; right: 12px;
137
+ }
138
+ .calendar_bg .calendar_nw,
139
+ .calendar_bg .calendar_ne,
140
+ .calendar_bg .calendar_sw,
141
+ .calendar_bg .calendar_se {
142
+ width: 12px;
143
+ }
144
+ .calendar_bg .calendar_nw,
145
+ .calendar_bg .calendar_n,
146
+ .calendar_bg .calendar_ne {
147
+ top: 0px;
148
+ }
149
+ .calendar_bg .calendar_sw,
150
+ .calendar_bg .calendar_s,
151
+ .calendar_bg .calendar_se {
152
+ bottom: 0px;
153
+ }
154
+ .calendar_bg .calendar_nw,
155
+ .calendar_bg .calendar_w,
156
+ .calendar_bg .calendar_sw {
157
+ left: 0px;
158
+ }
159
+ .calendar_bg .calendar_ne,
160
+ .calendar_bg .calendar_e,
161
+ .calendar_bg .calendar_se {
162
+ right: 0px;
163
+ }
164
+ .calendar_bg .calendar_nw {
165
+ background-position: 0px 0px;
166
+ }
167
+ .calendar_bg .calendar_n {
168
+ background-position: 0px -24px;
169
+ }
170
+ .calendar_bg .calendar_ne {
171
+ background-position: -12px 0px;
172
+ }
173
+ .calendar_bg .calendar_sw {
174
+ background-position: 0px -12px;
175
+ }
176
+ .calendar_bg .calendar_s {
177
+ background-position: 0px -36px;
178
+ }
179
+ .calendar_bg .calendar_se {
180
+ background-position: -12px -12px;
181
+ }
182
+ .calendar_bg .calendar_w {
183
+ background-position: 0px 0px;
184
+ }
185
+ .calendar_bg .calendar_e {
186
+ background-position: -12px 0px;
187
+ }
188
+
107
189
 
@@ -1,3 +1,14 @@
1
+ <div class="calendar_bg">
2
+ <div class="calendar_nw"></div>
3
+ <div class="calendar_n"></div>
4
+ <div class="calendar_ne"></div>
5
+ <div class="calendar_w"></div>
6
+ <div class="calendar_c"></div>
7
+ <div class="calendar_e"></div>
8
+ <div class="calendar_sw"></div>
9
+ <div class="calendar_s"></div>
10
+ <div class="calendar_se"></div>
11
+ </div>
1
12
  <div class="calendar_control" id="control#{_ID}">
2
13
  <div class="calendar_head">
3
14
  <div class="calendar_head_prev_month" onclick="HSystem.views[#{this.viewId}].prevMonth();"></div>
@@ -16,10 +16,6 @@ HDateTime = HClass.extend({
16
16
  msDay: 86400000,
17
17
  msHour: 3600000,
18
18
  msMinute: 60000,
19
- months_localized: [
20
- 'January', 'February', 'March', 'April', 'May', 'June', 'July',
21
- 'August', 'September', 'October', 'November', 'December'
22
- ],
23
19
 
24
20
  /** = Description
25
21
  * Returns month name of the given date.
@@ -33,7 +29,7 @@ HDateTime = HClass.extend({
33
29
  **/
34
30
  monthName: function(_date){
35
31
  _date = (_date instanceof Date)?_date:this.date();
36
- return this.months_localized[_date.getUTCMonth()];
32
+ return HLocale.dateTime.strings.monthsLong[_date.getUTCMonth()];
37
33
  },
38
34
 
39
35
  /** = Description
@@ -77,6 +73,13 @@ HDateTime = HClass.extend({
77
73
  return _date.getUTCDate();
78
74
  },
79
75
 
76
+ setMday: function( _mday ){
77
+ var
78
+ _date = this.date();
79
+ _date.setUTCDate( _mday );
80
+ return Math.round( _date.getTime()/1000 );
81
+ },
82
+
80
83
  /** = Description
81
84
  * Returns month number for the date given as input.
82
85
  * Note that months are numbered from 0 to 11.
@@ -93,6 +96,13 @@ HDateTime = HClass.extend({
93
96
  return _date.getUTCMonth();
94
97
  },
95
98
 
99
+ setMonth: function( _month ){
100
+ var
101
+ _date = this.date();
102
+ _date.setUTCMonth( _month );
103
+ return Math.round( _date.getTime()/1000 );
104
+ },
105
+
96
106
  /** = Description
97
107
  * Returns year for given date.
98
108
  *
@@ -108,6 +118,13 @@ HDateTime = HClass.extend({
108
118
  return _date.getUTCFullYear();
109
119
  },
110
120
 
121
+ setYear: function( _year ){
122
+ var
123
+ _date = this.date();
124
+ _date.setUTCFullYear( _year );
125
+ return Math.round( _date.getTime()/1000 );
126
+ },
127
+
111
128
  /** = Description
112
129
  * Returns the timezone offset in milliseconds.
113
130
  *
@@ -750,14 +750,16 @@ EVENT = {
750
750
  // if it's no longer the active control.
751
751
  _prevActiveCtrl = _this.activeControl;
752
752
  // Did the active control change?
753
- if (_ctrl && (_ctrl !== _prevActiveCtrl) && (_ctrl._gainedActiveStatus || _prevActiveCtrl._lostActiveStatus)) {
753
+ if (_ctrl && (_ctrl !== _prevActiveCtrl) && (_ctrl._gainedActiveStatus || (_prevActiveCtrl && _prevActiveCtrl._lostActiveStatus))) {
754
754
  if (_prevActiveCtrl && _prevActiveCtrl._lostActiveStatus) {
755
755
  // Previously active control just lost the active status.
756
- _prevActiveCtrl.active = false;
757
- _prevActiveCtrl._lostActiveStatus(_ctrl);
758
- if(_this.focusTrace){
759
- _prevActiveCtrl.setStyle('border','2px solid green');
760
- _this.prevActiveCtrl && _this.prevActiveCtrl.setStyle('border','2px solid blue');
756
+ if( _prevActiveCtrl ){
757
+ _prevActiveCtrl.active = false;
758
+ _prevActiveCtrl._lostActiveStatus(_ctrl);
759
+ if(_this.focusTrace){
760
+ _prevActiveCtrl.setStyle('border','2px solid green');
761
+ _this.prevActiveCtrl && _this.prevActiveCtrl.setStyle('border','2px solid blue');
762
+ }
761
763
  }
762
764
  _this.prevActiveCtrl = _prevActiveCtrl;
763
765
  }
@@ -13,6 +13,13 @@ HLocale = {
13
13
  },
14
14
  dateTime: {
15
15
  strings: {
16
+ monthsLong: [
17
+ 'January', 'February', 'March', 'April', 'May', 'June', 'July',
18
+ 'August', 'September', 'October', 'November', 'December'
19
+ ],
20
+ monthsShort: [
21
+ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
22
+ ],
16
23
  weekDaysLong: [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' ],
17
24
  weekDaysShort: [ 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat' ],
18
25
  weekLong: 'Week',
@@ -83,8 +83,10 @@ HRadioButtonList = HControl.extend({
83
83
  }
84
84
  this.radioButtonIndexValue && this.radioButtonIndexValue.die();
85
85
  this.listItems = null;
86
- for(var i=0;i<this.listItemViews.length;i++){
87
- this.listItemViews[i].die();
86
+ if( this.listItemViews ){
87
+ for(var i=0;i<this.listItemViews.length;i++){
88
+ this.listItemViews[i].die();
89
+ }
88
90
  }
89
91
  this.listItemViews = null;
90
92
  this.radioButtonIndexValue && this.radioButtonIndexValue.die();
@@ -21,7 +21,7 @@ HMiniMenu = HRadioButtonList.extend({
21
21
  click: true
22
22
  },
23
23
 
24
- subCompenentHeight: 15,
24
+ subComponentHeight: 15,
25
25
 
26
26
  repositionMenuItems: function(){
27
27
  var
@@ -108,7 +108,8 @@ HMiniMenu = HRadioButtonList.extend({
108
108
  },
109
109
 
110
110
  drawSubviews: function(){
111
- var itemStyle = {
111
+ var
112
+ itemStyle = {
112
113
  'background-color': '#f6f6f6',
113
114
  'border': '1px solid #999',
114
115
  'overflow': 'auto',
@@ -130,6 +131,10 @@ HMiniMenu = HRadioButtonList.extend({
130
131
  this.base(listItems);
131
132
  this.valueMatrix = this.menuItemView.valueMatrix;
132
133
  this.refreshValue();
134
+ if( this.options.initialVisibility ){
135
+ EVENT.changeActiveControl(this);
136
+ this.menuShow();
137
+ }
133
138
  },
134
139
 
135
140
  createComponent: function( i, _label ){
data/lib/conf/argv.rb CHANGED
@@ -6,38 +6,8 @@
6
6
  # with this software package. If not, contact licensing@riassence.com
7
7
  ##
8
8
 
9
- # Includes the Signal Communication utility.
10
- # Used to respond via special PID files in the run directory of the environment
11
- require 'daemon/sigcomm'
12
-
13
-
14
9
  module RSence
15
-
16
- # @private Returns true, if platform fully supports POSIX standard signals.
17
- def self.pid_support?
18
- # true for non-windows
19
- return (not ['i386-mingw32','x86-mingw32'].include?(RUBY_PLATFORM))
20
- end
21
-
22
- # @private Returns true, if platform is linux
23
- def self.linux?
24
- return RUBY_PLATFORM.end_with?('-linux')
25
- end
26
-
27
- # @private Returns true, if platform is Mac OS X
28
- def self.darwin?
29
- return RUBY_PLATFORM.include?('-darwin')
30
- end
31
-
32
- # @private Returns signal name that resembles INFO or PWR (extra signal to poll for server status)
33
- def self.info_signal_name
34
- if self.linux?
35
- return 'PWR'
36
- else
37
- return 'INFO'
38
- end
39
- end
40
-
10
+
41
11
  # @private ARGVParser is the "user interface" as a command-line argument parser.
42
12
  # It parses the command-line arguments and sets up things accordingly.
43
13
  class ARGVParser
@@ -832,105 +802,6 @@ module RSence
832
802
 
833
803
  end
834
804
 
835
- # @private This accessor enables RSence.argv method, which returns the ARGVParser instance
836
- def self.argv; @@argv_parser; end
837
-
838
- # @private This accessor enables RSence.cmd method, which returns the command the process was started with.
839
- def self.cmd; @@argv_parser.cmd; end
840
-
841
- # Command line options parsed
842
- # @return [Hash] Parsed command-line options:
843
- # *Key* (Symbol):: *Value*
844
- # +:env_path+:: (String) The directory of the environment.
845
- # +:conf_files+:: (Array of Strings) Additional configuration files given with the +--conf+ command-line option. Default is +[]+.
846
- # +:debug+:: (true or false) True, if the +-d+ or +--debug+ command-line option was given. Default is false.
847
- # +:verbose+:: (true or false) True, if the +-v+ or +--verbose+ command-line option was given. Default is false.
848
- # +:log_fg+:: (true or false) True, if the +-f+ or +--log-fg+ command-line option was given. Default is false.
849
- # +:trace_js+:: (true or false) True, if the +--trace-js+ command-line option was given. Default is false.
850
- # +:trace_delegate+:: (true or false) True, if the +--trace-delegate+ command-line option was given. Default is false.
851
- # +:port+:: (String or nil) The TCP port number given with the +--port+ command-line option. Default is nil.
852
- # +:addr+:: (String or nil) The TCP bind address given with the +--addr+ command-line option. Default is nil.
853
- # +:server+:: (String or nil) The Rack http server handler given with the +--server+ command-line option. Default is nil.
854
- # +:reset_ses+:: (true or false) True, if the +-r+ or +--reset-sessions+ command-line option was given. Default is false.
855
- # +:autoupdate+:: (true or false) True, if the +-a+ or +--auto-update+ command-line option was given. Default is false.
856
- # +:latency+:: (Number) Amount of milliseconds to sleep in each request given with the +--latency+ command-line option. Default is 0.
857
- # +:say+:: (true or false) True, if the +-S+ or +--say+ command-line option was given. Default is false.
858
- def self.args; @@argv_parser.args; end
859
-
860
- # @private This accessor enables RSence.startable? method, which returns true if a start-type command was given.
861
- def self.startable?; @@argv_parser.startable?; end
862
-
863
- # @return [String] The version of RSence
864
- def self.version; @@argv_parser.version; end
865
-
866
- # @private This accessor enables RSence.startup method, which starts RSence.
867
- def self.startup
868
- puts "Loading configuration..." if self.args[:verbose]
869
- # Use the default configuration:
870
- require 'conf/default'
871
- @@config = Configuration.new(self.args).config
872
-
873
- # RSence runtime configuration data
874
- # @return [Hash] the active configuration structure as defined by the {file:default_conf default configuration} and overridden by local configuration files.
875
- def self.config
876
- @@config
877
- end
878
-
879
- def self.transporter
880
- @@transporter
881
- end
882
- def self.transporter=(transporter)
883
- if class_variable_defined?(:'@@transporter')
884
- warn "WARN: Transporter already set."
885
- return
886
- else
887
- @@transporter = transporter
888
- end
889
- end
890
-
891
- def self.plugin_manager
892
- @@plugin_manager
893
- end
894
- def self.plugin_manager=(plugin_manager)
895
- if class_variable_defined?(:'@@plugin_manager')
896
- warn "WARN: @@plugin_manager already set."
897
- return
898
- else
899
- @@plugin_manager = plugin_manager
900
- end
901
- end
902
-
903
- def self.value_manager
904
- @@value_manager
905
- end
906
- def self.value_manager=(value_manager)
907
- if class_variable_defined?(:'@@value_manager')
908
- warn "WARN: @@value_manager already set."
909
- return
910
- else
911
- @@value_manager = value_manager
912
- end
913
- end
914
-
915
- def self.session_manager
916
- @@session_manager
917
- end
918
- def self.session_manager=(session_manager)
919
- if class_variable_defined?(:'@@session_manager')
920
- warn "WARN: @@session_manager already set."
921
- return
922
- else
923
- @@session_manager = session_manager
924
- end
925
- end
926
-
927
- ## Riassence Daemon controls
928
- require 'daemon/daemon'
929
- puts "Starting RSence..." if self.args[:verbose]
930
- daemon = HTTPDaemon.new
931
- daemon.daemonize!
932
- end
933
-
934
805
  # @private The ARGVParser instance and its startup
935
806
  @@argv_parser = ARGVParser.new
936
807
  @@argv_parser.parse( ARGV )
data/lib/conf/default.rb CHANGED
@@ -198,11 +198,11 @@ module RSence
198
198
  end
199
199
  end
200
200
 
201
- if RUBY_VERSION.to_f >= 1.9
202
- # The encodings mess up compression when using ruby1.9
203
- warn "Disabling gzip support for ruby 1.9" if args[:debug]
204
- config[:no_gzip] = true
205
- end
201
+ # if RUBY_VERSION.to_f >= 1.9
202
+ # # The encodings mess up compression when using ruby1.9
203
+ # warn "Disabling gzip support for ruby 1.9" if args[:debug]
204
+ # config[:no_gzip] = true
205
+ # end
206
206
 
207
207
  # The default address of the index_html plugin
208
208
  unless config[:index_html].has_key?(:respond_address)
@@ -93,6 +93,7 @@ module RSence
93
93
  client_pkg.add_src_dir( src_dir )
94
94
  end
95
95
  end
96
+ sleep 0.1 until client_pkg.ready?
96
97
  client_pkg.add_packages( @client_pkgs[:packages ] ) if @client_pkgs.has_key?(:packages )
97
98
  client_pkg.add_themes( @client_pkgs[:theme_names ] ) if @client_pkgs.has_key?(:theme_names )
98
99
  client_pkg.add_gfx_formats( @client_pkgs[:gfx_formats ] ) if @client_pkgs.has_key?(:gfx_formats )
@@ -112,6 +113,7 @@ module RSence
112
113
  client_pkg.del_src_dir( src_dir )
113
114
  end
114
115
  end
116
+ sleep 0.1 until client_pkg.ready?
115
117
  client_pkg.del_reserved_names( @client_pkgs[:reserved_names] ) if @client_pkgs.has_key?(:reserved_names)
116
118
  client_pkg.del_gfx_formats( @client_pkgs[:gfx_formats ] ) if @client_pkgs.has_key?(:gfx_formats )
117
119
  client_pkg.del_themes( @client_pkgs[:theme_names ] ) if @client_pkgs.has_key?(:theme_names )
@@ -30,7 +30,7 @@ module RSence
30
30
  super
31
31
  @plugin_plugins = RSence::PluginManager.new({
32
32
  :plugin_paths => [ bundle_path('plugins') ],
33
- :autoreload => false,
33
+ :autoreload => true,
34
34
  :name_prefix => name_with_manager_s.to_sym,
35
35
  :parent_manager => @plugins,
36
36
  :resolved_deps => [:system]