rsence-pre 2.3.0.20 → 2.3.0.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. data/VERSION +1 -1
  2. data/conf/client_pkg.yaml +1 -3
  3. data/js/chat/speech_bubble/themes/default/speech_bubble.html +6 -6
  4. data/js/comm/jsloader/jsloader.js +0 -19
  5. data/js/comm/queue/queue.js +21 -4
  6. data/js/controls/button/themes/bright/button.html +2 -2
  7. data/js/controls/button/themes/default/button.html +2 -2
  8. data/js/controls/checkbox/themes/default/checkbox.css +12 -12
  9. data/js/controls/checkbox/themes/default/checkbox.html +4 -4
  10. data/js/controls/dialogs/sheet/themes/default/sheet.html +4 -4
  11. data/js/controls/onoffbutton/themes/default/onoffbutton.html +5 -5
  12. data/js/controls/passwordcontrol/themes/default/passwordcontrol.html +2 -2
  13. data/js/controls/radiobutton/themes/default/radiobutton.css +11 -11
  14. data/js/controls/radiobutton/themes/default/radiobutton.html +4 -4
  15. data/js/controls/searchfield/themes/default/searchfield.css +10 -3
  16. data/js/controls/searchfield/themes/default/searchfield.html +2 -2
  17. data/js/controls/sliders/slider/themes/default/slider.html +2 -2
  18. data/js/controls/sliders/vslider/themes/default/vslider.html +2 -2
  19. data/js/controls/stepper/themes/default/stepper.html +1 -1
  20. data/js/controls/stringview/themes/default/stringview.html +1 -1
  21. data/js/controls/tab/tab.js +1 -1
  22. data/js/controls/tab/themes/bright/tab.html +3 -3
  23. data/js/controls/tab/themes/default/tab.html +3 -3
  24. data/js/controls/textarea/themes/default/textarea.css +12 -2
  25. data/js/controls/textarea/themes/default/textarea.html +3 -3
  26. data/js/controls/textcontrol/textcontrol.coffee +4 -4
  27. data/js/controls/textcontrol/themes/default/textcontrol.css +10 -6
  28. data/js/controls/textcontrol/themes/default/textcontrol.html +4 -4
  29. data/js/controls/uploader/themes/default/uploader.html +1 -1
  30. data/js/controls/window/themes/default/window.html +7 -7
  31. data/js/core/elem/elem.coffee +4 -33
  32. data/js/core/util/util_methods/util_methods.coffee +3 -3
  33. data/js/datetime/calendar/themes/default/calendar.html +7 -7
  34. data/js/datetime/calendar_pulldown/themes/default/calendar_pulldown.html +1 -1
  35. data/js/datetime/timesheet/themes/default/timesheet.html +4 -4
  36. data/js/datetime/timesheet/timesheet.js +2 -0
  37. data/js/datetime/timesheet_item/themes/default/timesheet_item.css +0 -1
  38. data/js/datetime/timesheet_item/themes/default/timesheet_item.html +5 -5
  39. data/js/datetime/timesheet_item/themes/default/timesheet_item_icons.png +0 -0
  40. data/js/datetime/timesheet_item/timesheet_item.js +10 -5
  41. data/js/menus/menuitem/themes/default/menuitem.html +3 -3
  42. data/js/menus/minimenu/themes/default/minimenu.html +2 -2
  43. data/js/menus/minimenuitem/themes/default/minimenuitem.html +3 -3
  44. data/js/menus/popupmenu/themes/default/popupmenu.css +2 -1
  45. data/js/menus/popupmenu/themes/default/popupmenu.html +2 -2
  46. data/js/tables/table/themes/default/table.html +3 -3
  47. data/lib/rsence/msg.rb +0 -6
  48. data/plugins/client_pkg/lib/client_pkg_serve.rb +4 -52
  49. data/plugins/main/tmpl/index.html +0 -1
  50. data/plugins/ticket/lib/common.rb +0 -3
  51. metadata +2 -39
  52. data/js/controls/button/themes/bright/button_parts1-ie6.gif +0 -0
  53. data/js/controls/button/themes/default/button_parts1-ie6.gif +0 -0
  54. data/js/controls/checkbox/themes/default/checkbox_parts1-ie6.gif +0 -0
  55. data/js/controls/dialogs/sheet/themes/default/sheet_bg-ie6.gif +0 -0
  56. data/js/controls/dialogs/sheet/themes/default/sheet_dim-ie6.gif +0 -0
  57. data/js/controls/dialogs/sheet/themes/default/sheet_parts1-ie6.gif +0 -0
  58. data/js/controls/dialogs/sheet/themes/default/sheet_parts2-ie6.gif +0 -0
  59. data/js/controls/dialogs/sheet/themes/default/sheet_warning-ie6.gif +0 -0
  60. data/js/controls/radiobutton/themes/default/radiobutton_parts1-ie6.gif +0 -0
  61. data/js/controls/searchfield/themes/default/searchfield_parts1-ie6.gif +0 -0
  62. data/js/controls/sliders/slider/themes/default/hslider_tracks-ie6.gif +0 -0
  63. data/js/controls/sliders/slider/themes/default/slider_thumbs-ie6.gif +0 -0
  64. data/js/controls/sliders/vslider/themes/default/vslider_tracks-ie6.gif +0 -0
  65. data/js/controls/stepper/themes/default/stepper-ie6.gif +0 -0
  66. data/js/controls/tab/themes/bright/tab_bg_color-ie6.gif +0 -0
  67. data/js/controls/tab/themes/bright/tab_border_pattern-ie6.gif +0 -0
  68. data/js/controls/tab/themes/bright/tab_parts1-ie6.gif +0 -0
  69. data/js/controls/tab/themes/default/tab_bg_color-ie6.gif +0 -0
  70. data/js/controls/tab/themes/default/tab_border_pattern-ie6.gif +0 -0
  71. data/js/controls/tab/themes/default/tab_parts1-ie6.gif +0 -0
  72. data/js/controls/textcontrol/themes/default/textcontrol_parts1-ie6.gif +0 -0
  73. data/js/controls/textcontrol/themes/default/textcontrol_parts2-ie6.gif +0 -0
  74. data/js/controls/textcontrol/themes/default/textcontrol_parts3-ie6.gif +0 -0
  75. data/js/controls/validatorview/themes/default/validator-ie6.gif +0 -0
  76. data/js/controls/window/themes/default/window_bg_active-ie6.gif +0 -0
  77. data/js/controls/window/themes/default/window_bg_inactive-ie6.gif +0 -0
  78. data/js/controls/window/themes/default/window_buttons-ie6.gif +0 -0
  79. data/js/controls/window/themes/default/window_parts1-ie6.gif +0 -0
  80. data/js/controls/window/themes/default/window_parts2-ie6.gif +0 -0
  81. data/js/core/iefix/ie_css_element.htc +0 -5
  82. data/js/core/iefix/ie_css_style.htc +0 -5
  83. data/js/core/iefix/iefix.js +0 -349
  84. data/js/datetime/calendar/themes/default/calendar_arrows-ie6.gif +0 -0
  85. data/js/datetime/calendar/themes/default/calendar_bg-ie6.gif +0 -0
  86. data/js/datetime/calendar/themes/default/calendar_parts1-ie6.gif +0 -0
  87. data/js/datetime/calendar/themes/default/calendar_parts2-ie6.gif +0 -0
  88. data/js/util/reloadapp/themes/default/reloadapp_warning-ie6.gif +0 -0
@@ -10,11 +10,11 @@
10
10
  <div class="textcontrol_se"></div>
11
11
  <div class="textcontrol_sw"></div>
12
12
 
13
- <div id="subview#{_ID}" class="textcontrol_subview"></div>
13
+ <div id="subview]I[" class="textcontrol_subview"></div>
14
14
 
15
- <div id="label#{_ID}" title="#{this.label}" class="textarea_input_parent">
15
+ <div id="label]I[" title="#{this.label}" class="textarea_input_parent">
16
16
  <textarea class="textarea_input" style="resize:none;" #{this.enabled?'':'disabled'}
17
17
  onfocus="HSystem.views[#{this.viewId}].textFocus();"
18
18
  onblur="HSystem.views[#{this.viewId}].textBlur();"
19
- id="value#{_ID}">#{this.value}</textarea>
19
+ id="value]I[">#{this.value}</textarea>
20
20
  </div>
@@ -204,6 +204,9 @@ HTextControl = HControl.extend
204
204
  _inputElement = @getInputElement()
205
205
  if _inputElement == null or @hasTextFocus == false
206
206
  _rangeArr = [ 0, 0 ]
207
+ ## Other browsers
208
+ else if _inputElement.selectionStart
209
+ _rangeArr = [ _inputElement.selectionStart, _inputElement.selectionEnd ]
207
210
  ## Internet Explorer:
208
211
  else if document.selection
209
212
  # create a range object
@@ -216,7 +219,7 @@ HTextControl = HControl.extend
216
219
  # create random marker to replace the text with
217
220
  _marker = @_randomMarker()
218
221
  # re-generate marker if it's found in the text.
219
- _marker = @_randomMarker() until ~_origValue.indexOf( _marker )
222
+ _marker = @_randomMarker() while ~_origValue.indexOf( _marker )
220
223
  _markerLength = _marker.length
221
224
  # temporarily set the text of the selection to the unique marker
222
225
  _range.text = _marker
@@ -224,9 +227,6 @@ HTextControl = HControl.extend
224
227
  _range.text = _rangeText
225
228
  _markerIndex = _markerValue.indexOf( _marker )
226
229
  _rangeArr = [ _markerIndex, _markerIndex + _rangeLength ]
227
- ## Other browsers
228
- else if _inputElement.selectionStart
229
- _rangeArr = [ _inputElement.selectionStart, _inputElement.selectionEnd ]
230
230
  ## No support:
231
231
  else
232
232
  _rangeArr = [ 0, 0 ]
@@ -9,7 +9,11 @@
9
9
  vertical-align: middle;
10
10
  border: 0;
11
11
  left: 0; top: 0;
12
- #{(BROWSER_TYPE.firefox||BROWSER_TYPE.ie7||BROWSER_TYPE.ie8||BROWSER_TYPE.ie9||BROWSER_TYPE.opera)?'padding-left:2px;width:100% !important;height:90% !important;':BROWSER_TYPE.ie6?'right:4px;bottom:2px;':'padding:2px;right:0px;bottom:0px;width:auto;height:auto;'}
12
+ #{(
13
+ (BROWSER_TYPE.firefox||BROWSER_TYPE.ie7||BROWSER_TYPE.ie8||BROWSER_TYPE.ie9||BROWSER_TYPE.ie10||BROWSER_TYPE.opera)?
14
+ 'padding-left:2px;width:100% !important;height:90% !important;':
15
+ 'padding:2px;right:0px;bottom:0px;width:auto;height:auto;'
16
+ )}
13
17
  }
14
18
 
15
19
  .default .textcontrol_input:focus {
@@ -34,7 +38,11 @@
34
38
  .default .textcontrol_input_parent {
35
39
  position: absolute;
36
40
  z-index: 2;
37
- #{((BROWSER_TYPE.chrome && BROWSER_TYPE.mac)||BROWSER_TYPE.firefox||BROWSER_TYPE.ie7||BROWSER_TYPE.ie8||BROWSER_TYPE.ie9||BROWSER_TYPE.opera)?'left:0;padding-left:1px;top:0;right:4px;bottom:0;':BROWSER_TYPE.ie6?'left:2px;top:1px;right:1px;bottom:1px;':'left:-2px;top:-2px;right:-2px;bottom:-2px;'}
41
+ #{(
42
+ ((BROWSER_TYPE.chrome && BROWSER_TYPE.mac)||BROWSER_TYPE.firefox||BROWSER_TYPE.ie7||BROWSER_TYPE.ie8||BROWSER_TYPE.ie9||BROWSER_TYPE.ie10||BROWSER_TYPE.opera)?
43
+ 'left:0;padding-left:1px;top:0;right:4px;bottom:0;':
44
+ 'left:-2px;top:-2px;right:-2px;bottom:-2px;'
45
+ )}
38
46
  #{(BROWSER_TYPE.chrome && BROWSER_TYPE.mac)?'top:1px;':''}
39
47
  }
40
48
 
@@ -42,7 +50,6 @@
42
50
  position: absolute;
43
51
  left: 2px; top: 2px; right: 2px; bottom: 2px;
44
52
  background-color: #fff;
45
- #{BROWSER_TYPE.ie6?'font-size:0;line-height:0;':''}
46
53
  }
47
54
 
48
55
  .default .active>.textcontrol_bg {
@@ -65,7 +72,6 @@
65
72
  width: 7px; height: 7px;
66
73
  background-repeat: no-repeat;
67
74
  background-image: #{this.getCssFilePath('textcontrol_parts1.png')};
68
- #{BROWSER_TYPE.ie6?'font-size:0;line-height:0;':''}
69
75
  }
70
76
 
71
77
  .default .textcontrol_nw {
@@ -96,7 +102,6 @@
96
102
  width: 7px; top: 7px; bottom: 7px;
97
103
  background-repeat: repeat-y;
98
104
  background-image: #{this.getCssFilePath('textcontrol_parts3.png')};
99
- #{BROWSER_TYPE.ie6?'font-size:0;line-height:0;':''}
100
105
  }
101
106
 
102
107
  .default .textcontrol_w {
@@ -117,7 +122,6 @@
117
122
  height: 7px; left: 7px; right: 7px;
118
123
  background-repeat: repeat-x;
119
124
  background-image: #{this.getCssFilePath('textcontrol_parts2.png')};
120
- #{BROWSER_TYPE.ie6?'font-size:0;line-height:0;':''}
121
125
  }
122
126
 
123
127
  .default .textcontrol_n {
@@ -1,4 +1,4 @@
1
- <div class="textcontrol_bg" id="bg#{_ID}"></div>
1
+ <div class="textcontrol_bg" id="bg]I["></div>
2
2
 
3
3
  <div class="textcontrol_n"></div>
4
4
  <div class="textcontrol_s"></div>
@@ -10,11 +10,11 @@
10
10
  <div class="textcontrol_se"></div>
11
11
  <div class="textcontrol_sw"></div>
12
12
 
13
- <div id="subview#{_ID}" class="textcontrol_subview"></div>
13
+ <div id="subview]I[" class="textcontrol_subview"></div>
14
14
 
15
- <div id="label#{_ID}" title="#{this.label}" class="textcontrol_input_parent">
15
+ <div id="label]I[" title="#{this.label}" class="textcontrol_input_parent">
16
16
  <input type="text" class="textcontrol_input" #{this.enabled?'':'disabled'}
17
17
  onfocus="HSystem.views[#{this.viewId}].textFocus();"
18
18
  onblur="HSystem.views[#{this.viewId}].textBlur();"
19
- id="value#{_ID}" value="#{this.value}" />
19
+ id="value]I[" value="#{this.value}" />
20
20
  </div>
@@ -8,7 +8,7 @@
8
8
  <div class="button_edge_left"></div>
9
9
  <div class="button_center"></div>
10
10
  <div class="button_edge_right"></div>
11
- <div class="button_label" id="button_label#{_ID}">#{this.label}</div>
11
+ <div class="button_label" id="button_label]I[">#{this.label}</div>
12
12
  <div class="button_antiselect"></div>
13
13
  </div>
14
14
  <div class="button_control ack_button" id="ack_button#{this.elemId}">
@@ -13,11 +13,11 @@ ${this.setStyle('overflow','visible')}
13
13
  <div class="window_body_corner_left"></div>
14
14
  <div class="window_body_corner_right"></div>
15
15
  </div>
16
- <div class="window_label" id="label#{_ID}">#{this.label}</div>
17
- <div class="window_controls" id="control#{_ID}">
18
- <div class="window_controls_close" id="close#{_ID}"></div>
19
- <div class="window_controls_collapse" id="collapse#{_ID}"></div>
20
- <div class="window_controls_zoom" id="zoom#{_ID}"></div>
16
+ <div class="window_label" id="label]I[">#{this.label}</div>
17
+ <div class="window_controls" id="control]I[">
18
+ <div class="window_controls_close" id="close]I["></div>
19
+ <div class="window_controls_collapse" id="collapse]I["></div>
20
+ <div class="window_controls_zoom" id="zoom]I["></div>
21
21
  </div>
22
- <div class="window_subview" id="subview#{_ID}"></div>
23
- <div class="window_resize_se" id="resize#{_ID}"></div>
22
+ <div class="window_subview" id="subview]I["></div>
23
+ <div class="window_resize_se" id="resize]I["></div>
@@ -15,7 +15,6 @@ BROWSER_TYPE =
15
15
  ie10: false
16
16
  opera: false
17
17
  safari: false
18
- symbian: false
19
18
  chrome: false
20
19
  firefox: false
21
20
  firefox2: false
@@ -264,7 +263,7 @@ ELEM = HClass.extend
264
263
  Sets the opcity of the element as a number equaling or between 0 and 1
265
264
  ###
266
265
  setOpacity: (_id, _opacity)->
267
- if BROWSER_TYPE.ie6 or BROWSER_TYPE.ie7 or BROWSER_TYPE.ie8
266
+ if BROWSER_TYPE.ie7 or BROWSER_TYPE.ie8
268
267
  @_setOpacityIE( _id, _opacity)
269
268
  else
270
269
  @_elements[_id].style.setProperty('opacity', _opacity.toString(), '')
@@ -388,19 +387,6 @@ ELEM = HClass.extend
388
387
  setIdleDelay: (_idleDelay)->
389
388
  @_idleDelay = _idleDelay
390
389
  null
391
-
392
- ###
393
- A flag that signals iefix (for IE6) if it needs to re-run or not
394
- ###
395
- _ieFixesNeeded: false
396
-
397
- ###
398
- Applies fixes for IE6
399
- ###
400
- _ieFixes: ->
401
- iefix._traverseTree()
402
- @_ieFixesNeeded = false
403
- null
404
390
 
405
391
  ###
406
392
  Re-sets the flushLoop
@@ -425,7 +411,6 @@ ELEM = HClass.extend
425
411
  ###
426
412
  flushLoop: (_delay)->
427
413
  _delay = @_defaultDelay() unless _delay?
428
- @_ieFixes() if BROWSER_TYPE.ie6 and @_ieFixesNeeded
429
414
  clearTimeout(@_timer)
430
415
  if @_flushing
431
416
  _delay *= 2
@@ -433,7 +418,6 @@ ELEM = HClass.extend
433
418
  else
434
419
  unless @_needFlush
435
420
  # go into 'sleep mode'
436
- @_ieFixes() if BROWSER_TYPE.ie6 and @_ieFixesNeeded
437
421
  @_resetFlushLoop( _delay, @_idleDelay )
438
422
  return
439
423
  _delay = @_defaultDelay()
@@ -623,9 +607,6 @@ ELEM = HClass.extend
623
607
  _elem.style[@_camelize(_key)] = _value
624
608
  catch e
625
609
  console.log('ie setstyle error:'+_key+', '+_value+', '+e)
626
- if BROWSER_TYPE.ie6
627
- if ~iefix._traverseStyleProperties.indexOf(_key)
628
- @_ieFixesNeeded = true
629
610
  null
630
611
 
631
612
  ###
@@ -635,7 +616,6 @@ ELEM = HClass.extend
635
616
  return null unless @_elements[_id]? # item is deleted
636
617
  if _id == undefined
637
618
  console.log('ERROR; undefined id in ELEM#setStyle(',_id, _key, _value, _noCache,')')
638
- # _noCache = true if BROWSER_TYPE.ie9
639
619
  try
640
620
  _cached = @_styleCache[_id]
641
621
  catch e
@@ -768,14 +748,6 @@ ELEM = HClass.extend
768
748
  @_getComputedStyle = @_getComputedStyleIE
769
749
  @_setElementStyle = @_setElementStyleIE
770
750
  @bind( document.body ) unless @_timer
771
- if BROWSER_TYPE.symbian
772
- TestClass = HClass.extend({test:true, constructor:null})
773
- # The Symbian JS implementation gets corrupted if the page is reloaded (loaded from cache), this tests that:
774
- unless TestClass.test
775
- if confirm('Your Web Browser fails. Please restart the S60 Web Browser or install a better browser.\nDo you want to download and install Opera Mobile now?')
776
- location.href = 'http://www.opera.com/download/get.pl?sub=++++&id=32792&location=270&nothanks=yes'
777
- # Can't do anything with such badly broken js engine
778
- return
779
751
  @_flushDomLoadQueue() until @_initDone
780
752
  @_resetFlushLoop( @_minDelay )
781
753
  null
@@ -821,7 +793,7 @@ ELEM = HClass.extend
821
793
  return _steps
822
794
  _linearGradientStyle: (_gradient)->
823
795
  # IE6-8
824
- if BROWSER_TYPE.ie and not BROWSER_TYPE.ie9 and not BROWSER_TYPE.ie10
796
+ if BROWSER_TYPE.ie7 or BROWSER_TYPE.ie8
825
797
  _key = 'filter'
826
798
  _value = "progid:DXImageTransform.Microsoft.gradient( startColorstr='#{_gradient.start}', endColorstr='#{_gradient.end}',GradientType=0 )"
827
799
  # IE9
@@ -883,12 +855,12 @@ ELEM = HClass.extend
883
855
  _browserType = BROWSER_TYPE
884
856
  _browserType.opera = !!~_ua.indexOf('Opera')
885
857
  _browserType.safari = !!~_ua.indexOf('KHTML')
886
- _browserType.symbian = !!~_ua.indexOf('SymbianOS')
887
858
  _browserType.chrome = !!~_ua.indexOf('Chrome')
888
859
  _isIE = document.all and not _browserType.opera
889
860
  if _isIE
890
861
  _browserType.ie = _isIE
891
862
  _browserType.ie6 = !!~_ua.indexOf('MSIE 6')
863
+ location.href = 'http://www.ie6nomore.com' if _browserType.ie6
892
864
  _browserType.ie7 = !!~_ua.indexOf('MSIE 7')
893
865
  _browserType.ie8 = !!~_ua.indexOf('MSIE 8')
894
866
  _browserType.ie9 = !!~_ua.indexOf('MSIE 9')
@@ -924,7 +896,7 @@ ELEM = HClass.extend
924
896
  Checks if the document is fully loaded
925
897
  ###
926
898
  _domWaiter: ->
927
- if BROWSER_TYPE.ie6 or BROWSER_TYPE.ie7 or BROWSER_TYPE.ie8
899
+ if BROWSER_TYPE.ie7 or BROWSER_TYPE.ie8
928
900
  if location.protocol == 'https:'
929
901
  _ie_proto = 'src=//0'
930
902
  else
@@ -947,7 +919,6 @@ ELEM = HClass.extend
947
919
 
948
920
  if ELEM._domLoadStatus
949
921
  clearTimeout( @_domLoadTimer )
950
- BROWSER_TYPE.symbian = document.body.innerHTML == 'fastinnerhtml!' if BROWSER_TYPE.symbian
951
922
  @_init()
952
923
  else
953
924
  ELEM._domLoadTimer = setTimeout( =>
@@ -116,7 +116,7 @@ UtilMethods = (->
116
116
  ]
117
117
  # Returns a quoted string (escapes quotation marks and places quotes within)
118
118
  _quoteString: (_str)->
119
- for _substitution in @_stringSubstritutions
119
+ for _substitution in @_stringSubstitutions
120
120
  [ _substFrom, _substTo ] = _substitution
121
121
  _str = _str.replace( _substFrom, _substTo )
122
122
  '"'+_str+'"'
@@ -227,7 +227,7 @@ UtilMethods = (->
227
227
  encodeObject: (_obj)->
228
228
  return 'null' unless _obj?
229
229
  _type = @typeChr(_obj)
230
- unless _obj
230
+ unless _type
231
231
  console.log 'WARNING: encode of '+(typeof _obj)+' not possible'
232
232
  return 'null'
233
233
  return String(_obj) if _type == 'b' or _type == 'n'
@@ -272,7 +272,7 @@ UtilMethods = (->
272
272
  _cloned[_key] = _value
273
273
  else
274
274
  for _key, _value of _obj
275
- _cloned[_key] = @cloneObject( _item )
275
+ _cloned[_key] = @cloneObject( _value )
276
276
  return _cloned
277
277
  _obj
278
278
  for _methodName, _methodValue of _encodeDecodeMethods
@@ -9,12 +9,12 @@
9
9
  <div class="calendar_s"></div>
10
10
  <div class="calendar_se"></div>
11
11
  </div>
12
- <div class="calendar_control" id="control#{_ID}">
12
+ <div class="calendar_control" id="control]I[">
13
13
  <div class="calendar_head">
14
- <div class="calendar_head_prev_month" id="prevMonth#{_ID}"></div>
15
- <div class="calender_head_month_year" id="state#{_ID}"></div>
16
- <div class="calendar_head_next_month" id="nextMonth#{_ID}"></div>
14
+ <div class="calendar_head_prev_month" id="prevMonth]I["></div>
15
+ <div class="calender_head_month_year" id="state]I["></div>
16
+ <div class="calendar_head_next_month" id="nextMonth]I["></div>
17
17
  </div>
18
- <div class="calendar_weekdays" id="label#{_ID}"></div>
19
- <div class="calendar_weeks" id="value#{_ID}"></div>
20
- </div>
18
+ <div class="calendar_weekdays" id="label]I["></div>
19
+ <div class="calendar_weeks" id="value]I["></div>
20
+ </div>
@@ -1 +1 @@
1
- <div class="calendar_pulldown" id="control#{_ID}"><span id="label#{_ID}"></span></div>
1
+ <div class="calendar_pulldown" id="control]I["><span id="label]I["></span></div>
@@ -1,4 +1,4 @@
1
- <div id="label#{_ID}" class="timesheet_label"></div>
2
- <div id="timeline#{_ID}" class="timesheet_timeline"></div>
3
- <div id="value#{_ID}" class="timesheet_items"></div>
4
- ${this.themeSettings(30, 20, 0, 10, -6);}
1
+ <div id="label]I[" class="timesheet_label"></div>
2
+ <div id="timeline]I[" class="timesheet_timeline"></div>
3
+ <div id="value]I[" class="timesheet_items"></div>
4
+ ${this.themeSettings(30, 20, 0, 10, -6);}
@@ -40,6 +40,7 @@ HTimeSheet = HControl.extend({
40
40
  itemOffsetBottom: 0, // Theme settings; don't enter in options
41
41
  itemDisplayTime: true,
42
42
  allowClickCreate: false,
43
+ iconImage: 'timesheet_item_icons.png',
43
44
  allowDoubleClickCreate: true,
44
45
  minDragSize: 5, // minimum amount of pixels dragged required for accepting a drag
45
46
  hourOffsetTop: -4, // Theme settings; don't enter in options
@@ -234,6 +235,7 @@ HTimeSheet = HControl.extend({
234
235
  this, {
235
236
  value: _dummyValue,
236
237
  visible: false,
238
+ iconImage: this.options.iconImage,
237
239
  displayTime: this.options.itemDisplayTime
238
240
  }
239
241
  );
@@ -63,7 +63,6 @@
63
63
  position: absolute;
64
64
  top: 0px; width: 16px; height: 16px;
65
65
  background-position: 0px 0px;
66
- background-image: url(#{this.getThemeGfxFile('/timesheet_item_icons.png')});
67
66
  }
68
67
 
69
68
  .locked .timesheet_item_move,
@@ -1,10 +1,10 @@
1
- <div class="timesheet_item" id="bg#{_ID}">
2
- <div class="timesheet_item_time" id="state#{_ID}"></div>
1
+ <div class="timesheet_item" id="bg]I[">
2
+ <div class="timesheet_item_time" id="state]I["></div>
3
3
  <div class="timesheet_item_middle">
4
- <div class="timesheet_item_label" id="label#{_ID}">#{this.label}</div>
4
+ <div class="timesheet_item_label" id="label]I[">#{this.label}</div>
5
5
  </div>
6
- <div class="timesheet_item_icons" id="icons#{_ID}"></div>
6
+ <div class="timesheet_item_icons" id="icons]I["></div>
7
7
  <div class="timesheet_item_resize_top"></div>
8
8
  <div class="timesheet_item_resize_bottom"></div>
9
- <div class="timesheet_item_move" id="subview#{_ID}"></div>
9
+ <div class="timesheet_item_move" id="subview]I["></div>
10
10
  </div>
@@ -9,15 +9,20 @@ HTimeSheetItem = HControl.extend({
9
9
  markupElemNames: ['bg', 'label', 'state', 'icons', 'value', 'subview'],
10
10
 
11
11
  controlDefaults: HControlDefaults.extend({
12
- displayTime: true
12
+ displayTime: true,
13
+ iconImage: 'timesheet_item_icons.png'
13
14
  }),
14
15
 
15
16
  drawIcon: function( _iconOrder, _iconId ){
16
17
  var
17
- _iconElemId = ELEM.make( this.markupElemIds.icons, 'div' );
18
+ _iconElemId = ELEM.make( this.markupElemIds.icons, 'div' ),
19
+ _iconUrl = this.getThemeGfxFile(this.options.iconImage);
18
20
  ELEM.addClassName( _iconElemId, 'timesheet_item_icon' );
19
- ELEM.setStyle( _iconElemId, 'right', ((_iconOrder*16)+_iconOrder)+'px' );
20
- ELEM.setStyle( _iconElemId, 'background-position', '0px '+(_iconId*-16)+'px' );
21
+ ELEM.setStyles( _iconElemId, {
22
+ right: ((_iconOrder*16)+_iconOrder)+'px',
23
+ backgroundPosition: '0px '+(_iconId*-16)+'px',
24
+ backgroundImage: 'url('+_iconUrl+')'
25
+ } );
21
26
  return _iconElemId;
22
27
  },
23
28
 
@@ -194,7 +199,7 @@ HTimeSheetItem = HControl.extend({
194
199
  _startChanged = ( this.dragTimeStart !== this.originTimeStart ) && ( this.dragTimeStart !== this.value.start ),
195
200
  _durationChanged = ( this.dragDuration !== this.originDuration ) && ( this.dragDuration !== this.value.duration );
196
201
  if( _startChanged || _durationChanged ){
197
- if( this.parent['editor'] ){
202
+ if( this.parent.editor ){
198
203
  var _modValue = { id: this.value.id, start: this.dragTimeStart, duration: this.dragDuration, label: this.value.label };
199
204
  this.parent.editor.modifyItem( _modValue );
200
205
  }
@@ -1,4 +1,4 @@
1
- <div class="menuitem_control#{this.value?' checked':' unchecked'}" id="control#{_ID}">
2
- <div class="menuitem_state" id="state#{_ID}"></div>
3
- <div class="menuitem_label" id="label#{_ID}">#{this.label}</div>
1
+ <div class="menuitem_control#{this.value?' checked':' unchecked'}" id="control]I[">
2
+ <div class="menuitem_state" id="state]I["></div>
3
+ <div class="menuitem_label" id="label]I[">#{this.label}</div>
4
4
  </div>
@@ -1,7 +1,7 @@
1
- <div class="minimenu_control" id="control#{_ID}">
1
+ <div class="minimenu_control" id="control]I[">
2
2
  <div class="minimenu_edge_left"></div>
3
3
  <div class="minimenu_center"></div>
4
4
  <div class="minimenu_edge_right"></div>
5
- <div class="minimenu_label" id="label#{_ID}">#{this.label}</div>
5
+ <div class="minimenu_label" id="label]I[">#{this.label}</div>
6
6
  <div class="minimenu_antiselect"></div>
7
7
  </div>
@@ -1,4 +1,4 @@
1
- <div class="minimenuitem_control#{this.value?' checked':' unchecked'}" id="control#{_ID}">
2
- <div class="minimenuitem_state" id="state#{_ID}"></div>
3
- <div class="minimenuitem_label" id="label#{_ID}">#{this.label}</div>
1
+ <div class="minimenuitem_control#{this.value?' checked':' unchecked'}" id="control]I[">
2
+ <div class="minimenuitem_state" id="state]I["></div>
3
+ <div class="minimenuitem_label" id="label]I[">#{this.label}</div>
4
4
  </div>
@@ -43,7 +43,7 @@
43
43
 
44
44
  .popupmenu_label {
45
45
  left: 13px; right: 11px; top: 0px;
46
- height: 22px; line-height: #{(BROWSER_TYPE.ie7||BROWSER_TYPE.ie6)?'20':'22'}px;
46
+ height: 22px;
47
47
  text-align: left;
48
48
  text-overflow: ellipsis;
49
49
  overflow: hidden;
@@ -52,6 +52,7 @@
52
52
  font-family: Arial, sans-serif;
53
53
  font-size: 12px;
54
54
  color: #333;
55
+ line-height: #{BROWSER_TYPE.ie7?'20':'22'}px;
55
56
  }
56
57
  .popupmenu_control:hover > .popupmenu_label {
57
58
  color: #000;