|
@@ -6,16 +6,23 @@ define [
|
|
|
scope:
|
|
scope:
|
|
|
onToggle: '='
|
|
onToggle: '='
|
|
|
ngModel: '='
|
|
ngModel: '='
|
|
|
|
|
+ disabled: '=?'
|
|
|
|
|
+ onDisabledClick: '=?'
|
|
|
link: (scope) ->
|
|
link: (scope) ->
|
|
|
|
|
+ if !scope.disabled?
|
|
|
|
|
+ scope.disabled = false
|
|
|
scope.onChange = (args...) ->
|
|
scope.onChange = (args...) ->
|
|
|
scope.onToggle(scope.localModel)
|
|
scope.onToggle(scope.localModel)
|
|
|
|
|
+ scope.handleClick = () ->
|
|
|
|
|
+ if scope.disabled
|
|
|
|
|
+ scope.onDisabledClick()
|
|
|
scope.localModel = scope.ngModel
|
|
scope.localModel = scope.ngModel
|
|
|
scope.$watch "ngModel", (value) ->
|
|
scope.$watch "ngModel", (value) ->
|
|
|
scope.localModel = value
|
|
scope.localModel = value
|
|
|
|
|
|
|
|
template: """
|
|
template: """
|
|
|
-<div class="rp-toggle">
|
|
|
|
|
- <input id="rp-toggle-{{$id}}" type="checkbox" class="rp-toggle-hidden-input" ng-model="localModel" ng-change="onChange()" />
|
|
|
|
|
|
|
+<div class="rp-toggle" ng-click="handleClick();">
|
|
|
|
|
+ <input id="rp-toggle-{{$id}}" ng-disabled="disabled" type="checkbox" class="rp-toggle-hidden-input" ng-model="localModel" ng-change="onChange()" />
|
|
|
<label for="rp-toggle-{{$id}}" class="rp-toggle-btn"></label>
|
|
<label for="rp-toggle-{{$id}}" class="rp-toggle-btn"></label>
|
|
|
</div>
|
|
</div>
|
|
|
"""
|
|
"""
|