mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5282 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
78 lines
2.3 KiB
JavaScript
78 lines
2.3 KiB
JavaScript
/*
|
|
Copyright (c) 2004-2006, The Dojo Foundation
|
|
All Rights Reserved.
|
|
|
|
Licensed under the Academic Free License version 2.1 or above OR the
|
|
modified BSD license. For more information on Dojo licensing, see:
|
|
|
|
http://dojotoolkit.org/community/licensing.shtml
|
|
*/
|
|
|
|
dojo.provide("dojo.widget.CurrencyTextbox");
|
|
|
|
dojo.require("dojo.widget.IntegerTextbox");
|
|
dojo.require("dojo.validate.common");
|
|
|
|
dojo.widget.defineWidget(
|
|
"dojo.widget.CurrencyTextbox",
|
|
dojo.widget.IntegerTextbox,
|
|
{
|
|
// summary:
|
|
// A subclass that extends IntegerTextbox.
|
|
// Over-rides isValid/isInRange to test if input denotes a monetary value .
|
|
|
|
/*=====
|
|
// fractional: Boolean
|
|
// The decimal places (e.g. for cents). Can be true or false, optional if omitted.
|
|
fractional: undefined,
|
|
|
|
// symbol: String
|
|
// A currency symbol such as Yen "???", Pound "???", or the Euro "???". Default is "$".
|
|
symbol: "$",
|
|
|
|
// separator: String
|
|
// Default is "," instead of no separator as in IntegerTextbox.
|
|
separator: ",",
|
|
|
|
// min: Number
|
|
// Minimum signed value. Default is -Infinity
|
|
min: undefined,
|
|
|
|
// max: Number
|
|
// Maximum signed value. Default is +Infinity
|
|
max: undefined,
|
|
=====*/
|
|
|
|
mixInProperties: function(localProperties, frag){
|
|
// First initialize properties in super-class.
|
|
dojo.widget.CurrencyTextbox.superclass.mixInProperties.apply(this, arguments);
|
|
|
|
// Get properties from markup attributes, and assign to flags object.
|
|
if(localProperties.fractional){
|
|
this.flags.fractional = (localProperties.fractional == "true");
|
|
}else if(localProperties.cents){
|
|
dojo.deprecated("dojo.widget.IntegerTextbox", "use fractional attr instead of cents", "0.5");
|
|
this.flags.fractional = (localProperties.cents == "true");
|
|
}
|
|
if(localProperties.symbol){
|
|
this.flags.symbol = localProperties.symbol;
|
|
}
|
|
if(localProperties.min){
|
|
this.flags.min = parseFloat(localProperties.min);
|
|
}
|
|
if(localProperties.max){
|
|
this.flags.max = parseFloat(localProperties.max);
|
|
}
|
|
},
|
|
|
|
isValid: function(){
|
|
// summary: Over-ride for currency validation
|
|
return dojo.validate.isCurrency(this.textbox.value, this.flags);
|
|
},
|
|
isInRange: function(){
|
|
// summary: Over-ride for currency validation
|
|
return dojo.validate.isInRange(this.textbox.value, this.flags);
|
|
}
|
|
}
|
|
);
|