Select Git revision
ViewController.php
-
Tim Steiner authored
Add the ability to make decisions on course requests while viewing their details. Also allowed for a cleaner way to check if a user has an edit link when viewing a course's request details.
Tim Steiner authoredAdd the ability to make decisions on course requests while viewing their details. Also allowed for a cleaner way to check if a user has an edit link when viewing a course's request details.
index.html 3.67 KiB
<!DOCTYPE html>
<html>
<head>
<title>How to convert number to words in Angularjs?</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
</head>
<body ng-app="MyApp">
<div ng-controller="myFormController">
<form name="myForm">
Nominal Share Capital : <input type="text" ng-pattern="/^[0-9]*$/" ng-minlength=4 ng-model="nominalshare" name="nominalshare">
<span style="color:red" ng-show="myForm.nominalshare.$error.pattern">Only Numbers are allowed</span>
<span style="color:red" ng-show="myForm.nominalshare.$error.minlength">Value is too short</span>
<br>
Nominal Share in Words : <input ng-value="nominalshare | words" ng-disabled="!nominalshare">
<br>
Nominal Share Price : <input type="text" ng-pattern="/^[0-9]*$/" ng-disabled="!nominalshare" ng-model="price" name="price">
<span style="color:red" ng-show="myForm.price.$error.pattern">Only Numbers are allowed</span>
<br>
Division : <input name="division" ng-pattern="/^[0-9]*$/" ng-disabled="!price" ng-value="(nominalshare)/(price)">
<span style="color:red" ng-show="myForm.division.$error.pattern">Please type a divisible number in Nominal Share Price</span>
<br>
<input type="submit" ng-model="submit" ng-value="Submit" ng-disabled="!nominalshare">
<br>
</form>
</div>
<script type="text/javascript">
var MyApp = angular.module('MyApp',[]);
MyApp.controller('myFormController',['$scope',function($scope){
$scope.nominalshare='';
$scope.division='';
}]);
MyApp.filter('words', function() {
function isInteger(query) {
return query % 1 === 0;
}
return function(value) {
if (value && isInteger(value))
return covertWords(value);
return value;
};
});
var myappthos = ['','thousand','million', 'billion','trillion'];
var myappdang = ['zero','one','two','three','four', 'five','six','seven','eight','nine'];
var myapptenth = ['ten','eleven','twelve','thirteen', 'fourteen','fifteen','sixteen', 'seventeen','eighteen','nineteen'];
var myapptvew = ['twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety'];
function covertWords(s)
{
s = s.toString();
s = s.replace(/[\, ]/g,'');
// if (parseFloat(s) === NaN) return 'not a number';
var query = s.indexOf('.');
// if (parseInt(query) === NaN) return 'not a number';
if (query == -1) query = s.length;
//if (query < 4) return 'too small';
var n = s.split('');
var str = '';
var mjk = 0;
for (var ld=0; ld < query; ld++)
{
if ((query-ld)%3==2)
{
if (n[ld] == '1')
{
str += myapptenth[Number(n[ld+1])] + ' ';
ld++;
mjk=1;
}
else if (n[ld]!=0)
{
str += myapptvew[n[ld]-2] + ' ';
mjk=1;
}
}
else if (n[ld]!=0)
{
str += myappdang[n[ld]] +' ';
if ((query-ld)%3==0) str += 'hundred ';
mjk=1;
}
if ((query-ld)%3==1)
{
if (mjk) str += myappthos[(query-ld-1)/3] + ' ';
mjk=0;
}
}
if (query != s.length)
{
var dv = s.length;
str += 'point ';
for (var ld=query+1; ld<dv; ld++) str += myappdang[n[ld]] +' ';
}
return str.replace(/\s+/g,' ');
}
window.covertWords = covertWords;
</script>
</body>
</html>