JavaScript BIC Validator: Validate the owner of a container with a BIC code

Recommend this page to a friend!
  Info   Example   Demos   View files Files   Download Download   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
Not yet rated by the usersTotal: 86 All time: 444 This week: 3Up
Version License JavaScript version Categories
bic-validator 1.0MIT/X Consortium ...1.0Validation, Text processing
Description 

Author

This object can validate the owner of a container with a BIC code.

It takes the ISO 6346 BIC code of a cargo container being shipped and computes the check digit.

The object can also generate a BIC code taking the codes of the container owner, product, origin and destination ports.

Innovation Award
JavaScript Programming Innovation award winner
September 2014
Winner


Prize: One year Codenvy Developer hosted cloud IDE premium plan
BIC is an ISO standard that defines the format of codes used to identify cargo containers being transported world wide.

This object can generate and validate cargo container codes according to the ISO BIC standard.

Manuel Lemos
Picture of Sameer Semna
Name: Sameer Semna <contact>
Classes: 1 package by
Country: India India
Age: 41
All time rank: 16814 in India India
Week rank: 6 Up1 in India India Up
Innovation award
Innovation award
Nominee: 1x

Winner: 1x

Example

<html> <head> <TITLE>Container Validator ISO 6346 JS</TITLE> <META NAME="description" CONTENT="Cargo container validator ISO 6346 implemented in Javascript"> <META NAME="keywords" CONTENT="cargo, container, validator, javascript, php, iso 6346"> <META NAME="robot" CONTENT="index,follow"> <META name="revisit-after" content="1 month"> <META NAME="author" CONTENT="Sameer Shemna"> <META NAME="language" CONTENT="English"> <link rel="shortcut icon" href="./img/favicon.ico" /> <script type="text/javascript" src="ContainerValidator.js"></script> <style type="text/css"> *{ font-size: 105%; } body{ text-align: center; font-family: Arial, Helvetica, sans-serif; } div.wrap{ width:960px; background: rgba(225,225,225,0.5); margin: auto; padding: 10px 20px; text-align: left; } span.validator{color:red;} textarea{width:100%; height: 200px;} div.staticTestResult span{margin:5px 10px;} h1,h2,h3,div.centerAlign{text-align: center;} </style> </head> <body> <div class="wrap"> <div class="centerAlign"> <img class="imgCenter" src="./img/container_red_128.png"/> </div> <h1>Cargo container validator ISO 6346 in Javascript</h1> <h3>Download</h3> <div class="centerAlign"> <a href="https://github.com/sameersemna/Container-validator-JS" title="Download at GitHub"><img src="./img/github.png"/></a> </div> <h3>Static Demo</h3> <div class="content"> <div id="staticTests"> </div> </div> <h3>Dynamic Demo</h3> <div class="content"> <label for="container1">Container Number: </label> <input id="container1" type="text" value="TEXU4645646" onkeyup="checkValid(this)" maxlength="11"/> <br/> <span id="validator1" class="validator"></span> </div> <h3>Generated Containers Demo</h3> <div class="content"> <textarea id="genContNos"> </textarea> </div> <h3>Credits</h3> <table> <tr> <td>Wonderpoint Software Pvt Ltd </td><td><a href="http://www.wonderpoint.com">wonderpoint.com</a></td> </tr> <tr> <td>Wikipedia : ISO 6346 </td><td><a href="http://en.wikipedia.org/wiki/ISO_6346">wikipedia.org</a></td> </tr> <tr> <td>PHP Script : Stormpat</td><td><a href="https://github.com/stormpat/Container-validator">github.com</a></td> </tr> <tr> <td>PHP JS</td><td><a href="http://phpjs.org">phpjs.org</a></td> </tr> <tr> <td>Icons </td><td><a href="http://www.fancyicons.com/free-icon/108/gis-gps-icon-set/free-container-red-icon-png/">fancyicons.com</a></td> </tr> </table> </div> <script type="text/javascript"> var container1 = document.getElementById('container1'); var validator1 = document.getElementById('validator1'); function getValidatorMessage(validator, containerNo){ var isvalid = validator.isValid(containerNo); var valMsgs = validator.getErrorMessages(); var valMsgsTxt = valMsgs.join(', '); msg = isvalid; if (msg == false) { msg+= ' : ' + valMsgsTxt + '.'; if(valMsgs.indexOf('The check digit does not match') != -1){ msg+= ' Check digit must be ' + validator.createCheckDigit(containerNo.substr(0,10)) + '.'; } } return msg; } function checkValid(txt) { if(txt.value != ''){ var validator = new ContainerValidator(); validator1.innerHTML = getValidatorMessage(validator, txt.value); }else{ validator1.innerHTML = 'Please enter Container Number'; } } checkValid(container1); function staticTest(){ var staticTests = document.getElementById('staticTests'); var validator = new ContainerValidator(); var generatedContainers = validator.generate('TEX','U', 0, 99); var genContNos = document.getElementById('genContNos'); genContNos.innerHTML = generatedContainers.join(', '); var container_numbers = ['TEXU3070079', 'TEXU3070070', 'TEXA3070079', 'TEXU307007', 'TEXU30700']; var container_test_results = []; for(var i=0; i<container_numbers.length; i++){ container_test_results.push(getValidatorMessage(validator, container_numbers[i])); var container = validator.validate(container_numbers[i]); console.log(container); // Array ( [0] => TEXU3070079 [1] => TEX [2] => U [3] => 307007 [4] => 9 ) } var testHTML = ''; for(var i=0; i<container_numbers.length; i++){ testHTML+='<div class="staticTestResult"><span class="containerNo">('+i+') '+container_numbers[i]+'</span><span class="validator containerVal">'+container_test_results[i]+'</span></div>'; } staticTests.innerHTML = testHTML; console.warn(validator.getErrorMessages()); //validator.isValid('TEXU3070079');// boolean true //validator.isValid('TEXU3070070'); // boolean false } staticTest(); </script> </body> </html>

  Container Validator DemoExternal page  
  Files folder image Files (2)  
File Role Description
Plain text file ContainerValidator.js Class Main Class
Accessible without login Plain text file demo.html Example Container Validator Demo

 Version Control Unique User Downloads Download Rankings  
 0%
Total:86
This week:0
All time:444
This week:3Up
User Comments (1)
This is a good and useful class ;-) good job ;-)
9 years ago (José Filipe Lopes Santos)
70%StarStarStarStar