Tuesday, 11 June 2013

Change the hash without calling actions inside Backbone.Router

var Router = Backbone.Router.extend({
    routes: {
        'Registration': 'Registration'    },

    Registration: function() {
        console.log('Registration() called')    }
})
var router = new Router()

Backbone.history.start()

// here the Registration() action is called
router.navigate('Registration', { trigger: true })// => "Registration() called"

// here the Registration() action is not called
router.navigate('Registration')
// => 
Backbone.js applications state is managed by hashes (eg: #resource or #Registration). Everytime the hash changes an action is called inside the Backbone.Router. This is usefull but in some case you may need to change the hash by calling the router. You can achieve it by passing true to navigate() method:

Wednesday, 5 June 2013

check current express framework version


  • check current node js express framework version

npm info express version to fetch the latest version
 it's preferred that you do this instead of "3.x" below to prevent any future surprises.

package.json
{
  "name": "hello-world",
  "description": "hello world test app",
  "version": "0.0.1",
  "private": true,
  "dependencies": {
    "express": "3.x"
  }
}

Monday, 27 May 2013

javascript web audio example


paste this code in chrome console  (start a sound)

var context = new webkitAudioContext();
var sinewave = context.createOscillator();
sinewave.connect(context.destination);
sinewave.noteOn(0);


off sound

sinewave.noteOff(0);



more example watch this vedio
http://ontwik.com/javascript/stuart-memo-javascript-is-the-new-punk-rock-jsconf-eu-2012/

Thursday, 23 May 2013

Non-contact measurement of heart rate




Experts from Fujitsu developed atechnology,that allows you to measure the frequency of the human heart by analyzing video in real-time person. Principle is to measure the amount of blood circulating in the superficial blood vessels. This is achieved by measuring the absorption of light skin face. To display the results enough five seconds

Saturday, 18 May 2013

My opinions for Computer programmer

Programmers who don’t code in their spare time for fun will never become as good as those that do.

  I think even the smartest and most talented people will never become truly good programmers unless they treat it as more than a job. Meaning that they do little projects on the side, or just mess with lots of different languages and ideas in their spare time.
                                                                                                                                    by Pranay  Soni


Not all programmers are created equal.


  Quite often managers think that DeveloperA == DeveloperB simply because they have same level of experience and so on. In actual fact, the performance of one developer can be 10x or even 100x that of another. It’s politically risky to talk about it, but sometimes I feel like pointing out that, even though several team members may appear to be of equal skill, it’s not always the case. I have even seen cases where lead developers were ‘beyond hope’ and junior devs did all the actual work – I made sure they got the credit, though.                      
                                                                                                                                    by Pranay  Soni


The only “best practice” you should be using all the time is “Use Your Brain”.

  Too many people jumping on too many bandwagons and trying to force methods, patterns, frameworks, etc. onto things that don’t warrant them. Just because something is new, or because someone respected has an opinion, doesn’t mean it fits all.
                                                                                                                                    by Pranay  Soni

Tuesday, 14 May 2013

Add .json file in asp.net web.config file



 How can I enable the download of *.json files from an old ASP.NET site (IIS6 I am led to believe)?
 I am getting a 404 page instead of the JSON file.
 Do I need to create a web.config file? What goes in it?

you can just add the following to your web.config in the system.webServer section:
<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>

Tuesday, 30 April 2013

Jquery selector Tips


$('<div/>') : This creates a new div element. However this is not added to DOM tree unless you don't append it to any DOM element.

$('div') : This selects all the div element present on the page.

So, the code $('<div/>').addClass('test') will create a new div element and adds css class called "test". And $('div').addClass('test') will select all the div element present on the page and adds css class "test" to them.

As mentioned earlier that while using $('<div/>'), only new element gets created but it is still not added to DOM. One have to append it to any other element. For example, to append this newly created div to body, use below jQuery code.
$('<div/>').addClass('test').appendTo('body')

Friday, 26 April 2013

pass array in ajax and get in asp.net webmethod

     $(".SaveDataArray").live("click", function () {


                var mydata = new Array();
                mydata.push({ "name": "tablename", "value": "pranay" });



                $.ajax({
                    type: "GET",
                    url: "Default.aspx/Arraysave",
                    data: mydata,
                    contentType: "application/json;charset=utf-8",
                    dataType: "json",
                    success: function (value) {
                    },
                    error: function () {
                    }
                });
            });


        });






using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Web.Script.Serialization;
using System.Web.Script.Services;
using System.Web.Services;


public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //FssSqlDB objdb = new FssSqlDB();
       // DataTable objdt = new DataTable();
      //  objdt = objdb.GetData("select * from user_mas");
     
        bindGrid();

     
    }


    public void bindGrid()
    {
        REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
        var listuser = (from p in objDB.REGISTRATIONs
                       select p).ToArray();
     
        if (listuser != null)
        {
            if (GridViewSortDirection == SortDirection.Ascending)
            {
                GridView1.DataSource = listuser.OrderBy(x => x.GetType().GetProperty(GridViewSortExpression).GetValue(x, null)).ToList();
            }
            else
            {
                GridView1.DataSource = listuser.OrderByDescending(x => x.GetType().GetProperty(GridViewSortExpression).GetValue(x, null)).ToList();
            };
        }
        else
        {
            GridView1.DataSource = null;
        }
        //GridView1.DataSource = listuser;
        GridView1.DataBind();
    }

    [System.Web.Script.Services.ScriptMethod(ResponseFormat=ResponseFormat.Json)]
    [WebMethod]
    public static string getdata()
    {
        return "pranay soni";
    }

 


        [System.Web.Script.Services.ScriptMethod(ResponseFormat = ResponseFormat.Json,UseHttpGet=true)]
    [WebMethod]
     public static string Arraysave()
     {
         REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
         REGISTRATION objreg = new REGISTRATION();

         string sd = HttpContext.Current.Request["tablename"].ToString();
       
         return "Save Data";
     }


    [System.Web.Script.Services.ScriptMethod(ResponseFormat = ResponseFormat.Json,UseHttpGet=true)]
    [WebMethod(EnableSession= true)]
    public static string my()
    {
        return "df";
    }



    [System.Web.Script.Services.ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    [WebMethod]
     public static string savedata(string txtName,string txtAddress,string txtAge)
     {
         REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
         REGISTRATION objreg = new REGISTRATION();
         objreg.NAME = txtName;
         objreg.ADDRESS = txtAddress;
         objreg.AGE = Convert.ToInt32(txtAge);
         objDB.REGISTRATIONs.InsertOnSubmit(objreg);
         objDB.SubmitChanges();
         return "Save Data";
     }

    [System.Web.Script.Services.ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    [WebMethod(EnableSession=true)]
 
    public static string Update(string txtName, string txtAddress, string txtAge,string ID)
    {
        REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
        //REGISTRATION objreg = new REGISTRATION();
        var updated = (from p in objDB.REGISTRATIONs
                       where p.ID == Convert.ToInt32(ID)
                       select p).SingleOrDefault();
   

        updated.NAME = txtName;
        updated.ADDRESS = txtAddress;
        updated.AGE = Convert.ToInt32(txtAge);
        objDB.SubmitChanges();
        return "update";
    }


    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        string id =  Convert.ToString(GridView1.DataKeys[e.RowIndex].Value);

        REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
        REGISTRATION objReg = new REGISTRATION();
        var Deletselected = (from p in objDB.REGISTRATIONs
                             where p.ID == Convert.ToInt64(id)
                             select p).SingleOrDefault();
        objDB.REGISTRATIONs.DeleteOnSubmit(Deletselected);
        objDB.SubmitChanges();
        bindGrid();
    }
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex = e.NewPageIndex;
        bindGrid();
    }

    public string GridViewSortExpression
    {
        get
        {
          return ViewState["GridViewSortExpression"] == null ? "NAME":ViewState["GridViewSortExpression"] as string;    
        }
        set
        {
            ViewState["GridViewSortExpression"] = value;
        }
    }

    public SortDirection GridViewSortDirection
    {
        get
        {
            if (ViewState["sortDirection"] == null)
                ViewState["sortDirection"] = SortDirection.Ascending;
            return (SortDirection)ViewState["sortDirection"];
        }
        set {
            ViewState["sortDirection"] = value;
        }
    }

 
    protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
    {

        GridViewSortExpression = e.SortExpression;
        if (GridViewSortDirection == SortDirection.Ascending)
        {
            GridViewSortDirection = SortDirection.Descending;
        }
        else
        {
            GridViewSortDirection = SortDirection.Ascending;
        };
        bindGrid();
    }
    protected void LinkBtnSelect_Click(object sender, EventArgs e)
    {

    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        Int32 SrNo = Convert.ToInt32(GridView1.DataKeys[e.NewEditIndex].Value);
        REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
        REGISTRATION objreg = new REGISTRATION();

        var selected = (from p in objDB.REGISTRATIONs
                        where p.ID == SrNo
                        select p).SingleOrDefault();
        txtAddress.Value = selected.ADDRESS;
        txtAge.Value = selected.AGE.ToString();
        txtName.Value = selected.NAME;
        id.Value = selected.ID.ToString();
        btnRegis.Value = "Update";
    }

 

    protected void Button2_Click1(object sender, EventArgs e)
    {
     
        GridViewRow gvrow = (GridViewRow)(sender as Control).Parent.Parent;
        int index = gvrow.RowIndex;
        string df = GridView1.DataKeys[index]["ID"].ToString();
    }
}


Sunday, 21 April 2013

Bookmark Page Using Jquery


 Note: If so, we set the rel attribute of all our bookmark anchor tags (class=”jqbookmark”) to      “sidebar” – this is a standard Opera technique for creating this type of link.


    // add a "rel" attrib if Opera 7+
    if(window.opera) {
        if ($("a.jqbookmark").attr("rel") != ""){ // don't overwrite the rel attrib if already set
            $("a.jqbookmark").attr("rel","sidebar");
        }
    }

    $("a.jqbookmark").click(function(event){
        event.preventDefault(); // prevent the anchor tag from sending the user off to the link
        var url = this.href;
        var title = this.title;

        if (window.sidebar) { // Mozilla Firefox Bookmark
            window.sidebar.addPanel(title, url,"");
        } else if( window.external ) { // IE Favorite
            window.external.AddFavorite( url, title);
        } else if(window.opera) { // Opera 7+
            return false; // do nothing - the rel="sidebar" should do the trick
        } else { // for Safari, Konq etc - browsers who do not support bookmarking scripts (that i could find anyway)
             alert('Unfortunately, this browser does not support the requested action,'
             + ' please bookmark this page manually.');
        }

    });

Wednesday, 10 April 2013

Protecting Connection Strings

Protecting Connection Strings in Asp.net & C#


The .NET Framework ships with two protected configuration providers:


Before


<connectionStrings>
  <add name="NORTHWNDConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NORTHWND.MDF;Integrated Security=True;User Instance=True"
   providerName="System.Data.SqlClient" />
 </connectionStrings>


1 .go to run
2. open CMD
3. go to  C:\Windows\Microsoft.NET\Framework\v2.0.50727
step 4.
aspnet_regiis.exe -pef "connectionStrings" "C:\Websites\MyExample" -prov "DataProtectionConfigurationProvider"

after

<connectionStrings configProtectionProvider="DataProtectionConfigurationProvider" >
  <EncryptedData>
   <CipherData>
    <CipherValue>AQAAANCMnd8BFdERjHoAwE/Cl+sB6uV62iLDrdr17KLgYixwPjiIjt/brdfndYbp7OHUtrgzA==</CipherValue>
   </CipherData>
  </EncryptedData>
 </connectionStrings>




 SqlConnection con = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["NORTHWNDConnectionString"].ConnectionString);
        con.Open();
        SqlCommand cmd = new SqlCommand("select * from Employees", con);
        SqlDataAdapter objdataadapter = new SqlDataAdapter(cmd);
        DataTable objDt = new DataTable();
        objdataadapter.Fill(objDt);

In short, we do not need to add any extra code or logic to decrypt the encrypted <connectionString> section

Monday, 1 April 2013

Select table column name In SQL

SELECT  COLUMN_NAME FROM  INFORMATION_SCHEMA.COLUMNS WHERE  TABLE_NAME = 'TableNameGoesHere'ORDER   BY  ORDINAL_POSITION

Saturday, 30 March 2013

asp.net grid view sorting in linq to sql



  public void bindGrid()
    {
        REGISTRATIONDataContext objDB = new REGISTRATIONDataContext();
        var listuser = (from p in objDB.REGISTRATIONs
                       select p).ToArray();
       
        if (listuser != null)
        {
            if (GridViewSortDirection == SortDirection.Ascending)
            {
                GridView1.DataSource = listuser.OrderBy(x => x.GetType().GetProperty(GridViewSortExpression).GetValue(x, null)).ToList();
            }
            else
            {
                GridView1.DataSource = listuser.OrderByDescending(x => x.GetType().GetProperty(GridViewSortExpression).GetValue(x, null)).ToList();
            };
        }
        else
        {
            GridView1.DataSource = null;
        }
        //GridView1.DataSource = listuser;
        GridView1.DataBind();
    }



 public string GridViewSortExpression
    {
        get
        {
          return ViewState["GridViewSortExpression"] == null ? "NAME":ViewState["GridViewSortExpression"] as string;    
        }
        set
        {
            ViewState["GridViewSortExpression"] = value;
        }
    }

    public SortDirection GridViewSortDirection
    {
        get
        {
            if (ViewState["sortDirection"] == null)
                ViewState["sortDirection"] = SortDirection.Ascending;

            return (SortDirection)ViewState["sortDirection"];
        }
        set { ViewState["sortDirection"] = value; }
    }

    protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
    {

        GridViewSortExpression = e.SortExpression;
        if (GridViewSortDirection == SortDirection.Ascending)
        {
            GridViewSortDirection = SortDirection.Descending;
        }
        else
        {
            GridViewSortDirection = SortDirection.Ascending;
        };
        bindGrid();  
    }

Monday, 25 March 2013

html5 File Api & Read file in Javascript

 <style>
  .thumb {
    height: 75px;
    border: 1px solid #000;
    margin: 10px 5px 0 0;
  }
</style>

<input type="file" id="files" name="files[]" multiple />
<output id="list"></output>

<script>
  function handleFileSelect(evt) {
    var files = evt.target.files; // FileList object

    // Loop through the FileList and render image files as thumbnails.
    for (var i = 0, f; f = files[i]; i++) {

      // Only process image files.
      if (!f.type.match('image.*')) {
        continue;
      }

      var reader = new FileReader();

      // Closure to capture the file information.
      reader.onload = (function(theFile) {
        return function(e) {
          // Render thumbnail.
          var span = document.createElement('span');
          span.innerHTML = ['<img class="thumb" src="', e.target.result,
                            '" title="', escape(theFile.name), '"/>'].join('');
          document.getElementById('list').insertBefore(span, null);
        };
      })(f);

      // Read in the image file as a data URL.
      reader.readAsDataURL(f);
    }
  }

  document.getElementById('files').addEventListener('change', handleFileSelect, false);
</script>