Thursday, 8 September 2016

Html Table Export To excel Using Javascript

Note : this Code is working Only Google Chrome
Note : only 2 MB data Uri in Exported  ( 1500 Record and 35 Columns ) Tested.

$("#btnExport").click(function(e) {
       //getting values of current time for generating the file name
       var dt = new Date();
       var day = dt.getDate();
       var month = dt.getMonth() + 1;
       var year = dt.getFullYear();
       var hour = dt.getHours();
       var mins = dt.getMinutes();
       var postfix = day + "." + month + "." + year + "_" + hour + "." + mins;
       //creating a temporary HTML link element (they support setting file names)
       var a = document.createElement('a');
       //getting data from our div that contains the HTML table
       var data_type = 'data:application/';
       var table_div = document.getElementById('tableDiv');
       var table_html = table_div.outerHTML.replace(/ /g, '%20');
       a.href = data_type + ', ' + table_html;
       //setting the file name = 'exported_table_' + postfix + '.xls';
       //triggering the function;
       //just in case, prevent default behaviour

Friday, 3 June 2016

English to marathi date convert

English to marathi date convert javascript

var marathiNumber = ["०","१","२","३","४","५","६","७","८","९"];
    function getMarathiDate(englishDate) {
      var englishDateArray = englishDate.split("");
      var marathiDate = "";
      englishDateArray.forEach(function(el) {
         if (isNaN(el) === false) {
           marathiDate +=  marathiNumber[el];
         } else {
           marathiDate += "-"
      return marathiDate;

marathi date picker

bootstrap date picker localization example

bootstrap date picker marathi  localization

$.fn.datepicker.dates['MA'] = {
days: ["रविवारी", "सोमवारी", "मंगळवारी", "बुधवारी", "गुरुवारी", "शुक्रवारी", "शनिवारी"],
daysShort: ["रवी", "सोम", "मंगळ", "बुध", "गुर", "शुक", "शन"],
daysMin: ["रवी", "सोम", "मंगळ", "बुध", "गुर", "शुक", "शन"],
months: ["जानेवारी", "फेब्रुवारी", "मार्च", "एप्रिल", "मे", "जून", "जुलै", "ऑगस्ट", "सप्टेंबर", "ऑक्टोबर", "नोव्हेंबर", "डिसेंबर"],
monthsShort:  ["जानेवारी", "फेब्रुवारी", "मार्च", "एप्रिल", "मे", "जून", "जुलै", "ऑगस्ट", "सप्टेंबर", "ऑक्टोबर", "नोव्हेंबर", "डिसेंबर"],
today: "आज",
monthsTitle: "महिन्यात",
clear: "साफ करा",
weekStart: 1,
format: "d/mm/yyyy"

Sunday, 22 May 2016

send push notification in android using node js?

send push notification in android ?
send push notification in android using node-gcm ?

save below code pushnotification.js

run code with this command

node pushnotification.js

register your token using  /register api call

open http://localhost:3000

send push notification
http://localhost:3000/push  (open in browser)

Friday, 15 April 2016

Remove a drop down item if it is selected ?

Remove a drop down item if it is selected  Select2.js?
Ability to hide currently selected value in dropdown ?
Ability to hide currently selected value in dropdown Select2.js ?


Hide Selected Tag Css
.select2-results__option[aria-selected="true"] {
.select2-results__option[aria-selected="false"] {

Prevent select2 dropdown open when clearing selection ?

  var ddl = selectEl.select2({  
       allowClear: true,  
       placeholder: "Select a "+columnName  
    }).on("select2:close",function() {  
    }).on('select2:unselecting', function() {  
    }).on('select2:opening', function(e) {  
      if ($(this).data('unselecting')) {  
    }).on("change", function (e) {  
       console.log("change event Call");

Wednesday, 18 November 2015

Changes in Node Js Express 5

Removed methods and properties:


Removed methods and properties

If you use any of these methods or properties in your app, it will crash. So, you’ll need to go through and change your app once you update to version 5.


Express 5 no longer supports app.del(). Using it will throw an error. For registering HTTP DELETE routes, use app.delete() instead.
Initially del was used instead of delete considering delete is a reserved keyword in JavaScript. However, as of ECMAScript 6, delete and other reserved keywords can legally be used as a property names. You can read the discussion which lead to the deprecation of app.del here.


The app.param(fn) signature was used for modifying the behavior ofapp.param(name, fn). It has been deprecated since v4.11.0, and Express 5 no longer supports it at all.

Pluralized method names

The following method names have been pluralized.  In Express 4, using the old methods resulted in a deprecation warning.  Express 5 no longer supports them at all:
  • req.acceptsCharset() is replaced by req.acceptsCharsets().
  • req.acceptsEncoding() is replaced by req.acceptsEncodings().
  • req.acceptsLanguage() is replaced by req.acceptsLanguages().

Leading colon (:) in name for app.param(name, fn)

A leading colon character (:) in name for app.param(name, fn) is remnant of Express 3, and for the sake of backwards compatibility, Express 4 supported it with a deprecation notice. Express 5 will silently ignore it; use the name parameter without prefixing it with a colon.
This should not affect your code, if you have been following the Express 4 documentation of app.param, as it makes no mention of the leading colon.


This potentially confusing and dangerous method of retrieving form data has been removed. You will now need to specifically look for the submitted parameter name inreq.paramsreq.body, or req.query.

res.json(obj, status)

Express 5 no longer supports the signature res.json(obj, status).  Instead, set the status and then chain it to the res.json() method like this:res.status(status).json(obj).

res.jsonp(obj, status)

Express 5 no longer supports the signature res.jsonp(obj, status).  Instead, set the status and then chain it to the res.jsonp() method like this:res.status(status).jsonp(obj).

res.send(body, status)

Express 5 no longer supports the signature res.send(obj, status).  Instead, set the status and then chain it to the res.send() method like this:res.status(status).send(obj).


Express 5 no longer supports the signature res.send(status), where status is a number. Instead, use res.sendStatus(status), which sets the HTTP response header code and sends the text version of the code: “Not Found,” “Internal Server Error,” and so on.
If you need to send a number using res.send(), quote the number to convert it to a string, so that Express does not interpret it as an attempt at using the unsupported old signature.


res.sendfile() has been replaced by a camel-cased version res.sendFile() in Express 5.



The app.router object, which was removed in Express 4, has made a comeback in Express 5. In the new version, it is a just a reference to the base Express router, unlike in Express 3, where an app had to explicitly load it.

In Express 4, incorrectly stripped off the port number if it was present. In Express 5 the port number is maintained.


In Express 4.7 and Express 5 onwards, the query parser option can accept false to disable query string parsing, and instead use your own function for query string parsing logic.



This method now enforces asynchronous behavior for all view engines, avoiding bugs caused by view engines which had a synchronous implementation and violated the recommended interface.

Thursday, 1 October 2015

directive link prelink & compile & controller

var app = angular.module('app', []);
app.directive('dad', function () {
    return {
        restrict: 'EA',
        template: '<div class="dad">{{greeting}}{{name}}'+
        link: {
            pre: function(scope,elem,attr) {
       = 'Paul';
                scope.greeting = 'Hey, I am ';
app.directive('son', function () {
    return {
        restrict: 'EA',
        template: '<div class="son">{{sonSays}}</div>',
        link: function(scope,elem,attr){
            scope.sonSays = 'Hey, I am son, and my dad is '+;

      app.directive('compileExample', compileExample);

    function compileExample() {
      return {
        restrict: 'E',
   controller:function($scope) {
        compile: function(tElement, tAttrs) {
            if (tAttrs.type === "new") {
                 angular.element(tElement).append("My new name is {{name}}");
            } else {
                angular.element(tElement).append("My name is {{name}}");
          return function postLink(scope, element, attrs) {
              alert("compile postLink");
   = 'David'