Tuesday, August 4, 2009

Port forwarding in Airtel Wireless Lan:

When you want computers outside your LAN to access your computer. Some examples can be when u set up a ftp server on my machine for other people to access, or you are running a bittorrent client or DC++.

Steps:
• Step 1 : Put an internal static IP on your machine.

o Open Network Connections.
o Right click on Local Area Connection and select Properties.
o Now select TCP-IP and click on Properties
o Put values as shown. The DNS Server values I have put are that opendns You can also put 192.168.1.1 to use the airtel dns






• Configuring the Airtel Modem.

o Open http://192.168.1.1/main.html in IE
o Go to Advanced Setup -> NAT -> Virtual Servers
o Server IP will be same as the IP Address as mentioned above, which is 192.168.1.10 i this case







o If you want to play Network Game, you can just select this from the dropdown. Click on Save/Apply and you are done.
o In case the service isn't pre-configured, such as Bittorrent. Click on Custom Service. Put the name bittorrent
o You would need to put which port to forward. bittorren typically runs on 19556, so put 19556 in all the four text fields i.e. External Port Start, External Port End, Internal Port Start and Internal Port End.
o Choose the protocol. In case of bittorrent, and in most other cases, it would be TCP. Click on Save/Apply.
o That’s it, enjoy playing games, using torrent and DC++
Please note that these steps are applicable only if you are not using any other routers (wireless or otherwise) with your modem.

Monday, August 3, 2009

exeute javascript expilictly in response

We were lucky enough to get this script, which is the most powerful script which can be used to execute the java script tags in the div tags in case of Ajax supersedes them. we used that for Cobol-CGI project

You can get response and execute script in that through this script

/*
Purpose : This function is used to execute the java script code which reside inside div tag because java script inside div tag doesn't executed.
*/
function executeTEmbeddedScripts(node,theResponse)
{
/// Damco //if(document.getElementById('contentdiv').document.getElementById("pageNavPosition")){
if(document.getElementById("pageNavPosition")){
/// Damco //node = document.getElementById('contentdiv').document.getElementById("pageNavPosition");
node = document.getElementById("pageNavPosition");
var bSaf = (myBindexOf(navigator.userAgent,'Safari',0) != -1);
var bOpera = (myBindexOf(navigator.userAgent,'Opera',0) != -1);
var bMoz = (navigator.appName == 'Netscape');
if (!node) return;
var myHead=document.getElementsByTagName('head');
if ((!bSaf)&&(!bOpera)&&(!bMoz)) node.innerHTML="  "+theResponse; // World's most retarded IE fix
var st = node.getElementsByTagName('script');
var strExec;
var scripts = st.length;
var i = 0;
for(j = 0; j < scripts; j++){
var scriptsAtStart = st.length;
if (bSaf) {strExec = st[i].innerHTML; st[i].innerHTML = "";}
else if (bOpera) {strExec = st[i].text; st[i].text = "";}
else if (bMoz) {strExec = st[i].textContent; st[i].textContent = "";}
else {strExec = st[i].text; st[i].text = "";}
try {
var myScript = document.createElement("script");
myHead.item(0).appendChild(myScript);
myScript.type = "text/javascript";
myScript.text=strExec;
var html = node.innerHTML;
// jscript would prematurely eject if it encountered the full closing tag, even encapsulated in a string object
var endScriptL = '<' + '/script>';
var endScriptU = '<' + '/script>';
var pos2 = myBindexOf(html,strExec,0);
var pos = myBindexOf(html,endScriptL,pos2) >= 0 ? myBindexOf(html,endScriptL,pos2) : myBindexOf(html,endScriptU,pos2);
pos += String(endScriptL).length;
html = html.substr(0,pos) + html.substr(pos);
node.innerHTML = html;
if(scriptsAtStart==st.length) i++;
} catch(e) {
alert("Script execution error: "+e);
}
}
}
}


Parameters :

node : Pass the id of the Div or Span in which script needs to be executed
theResponse : Pass the response that you are writing in the Div or Span



if anyone need help, pls contact me
and if it wrks for you do add you comments .

Client Side Paging

If anyone of you lukin out for a Client Side implemetation of paging using javascript , try out this.....


Add this in Script section of your page....


function Pager(tableName, itemsPerPage) {
this.tableName = tableName;
this.itemsPerPage = itemsPerPage;
this.currentPage = 1;
this.pages = 0;
this.inited = false;

this.showRecords = function(from, to) {
var rows = document.getElementById(tableName).rows;
// i starts from 1 to skip table header row
for (var i = 1; i < rows.length; i++) {
if (i < from || i > to)
rows[i].style.display = 'none';
else
rows[i].style.display = '';
}
}

this.showPage = function(pageNumber) {

if (! this.inited) {
alert("not inited");
return;
}

if (document.getElementById('next') && pageNumber ==1)
{
var oldPageAnchor = document.getElementById('next');
oldPageAnchor.className = 'pg-normal';
var oldPageAnchor = document.getElementById('prev');
oldPageAnchor.className = '';
}
else if (document.getElementById('prev') && pager.pages > pageNumber)
{
var oldPageAnchor = document.getElementById('prev');
oldPageAnchor.className = 'pg-normal';
var oldPageAnchor = document.getElementById('next');
oldPageAnchor.className = 'pg-normal';

}
if (document.getElementById('next') && pageNumber == pager.pages)
{
var oldPageAnchor = document.getElementById('prev');
oldPageAnchor.className = 'pg-normal';
var oldPageAnchor = document.getElementById('next');
oldPageAnchor.className = '';
}

var oldPageAnchor = document.getElementById('pg'+this.currentPage);
oldPageAnchor.className = 'pg-normal';

this.currentPage = pageNumber;

var newPageAnchor = document.getElementById('pg'+this.currentPage);
newPageAnchor.className = 'pg-selected';

var from = (pageNumber - 1) * itemsPerPage + 1;
var to = from + itemsPerPage - 1;
this.showRecords(from, to);
}

this.prev = function() {
if (this.currentPage > 1)
this.showPage(eval(this.currentPage) - 1);
}

this.next = function() {
if (this.currentPage < this.pages) {
this.showPage(eval(this.currentPage) + 1);
}
}

this.init = function() {
var rows = document.getElementById(tableName).rows;
var records = (rows.length - 1);
this.pages = Math.ceil(records / itemsPerPage);
this.inited = true;
}

this.showPageNav = function(pagerName, positionId) {
if (! this.inited) {
alert("not inited");
return;
}

var element = document.getElementById(positionId);
var pagerHtml;

if (pagerName == "none")
{
pagerHtml = '';
}
else
{
pagerHtml = ' « Prev | ';
for (var page = 1; page <= this.pages; page++)
pagerHtml += '' + page + ' | ';
pagerHtml += ' Next »';
}

element.innerHTML = pagerHtml;
}


}


var pager = new Pager('t1', 15);
pager.init();
if(pager.pages > 1)
{

pager.showPageNav('pager', 'pageNavPosition');
if (pager.pages != 0)
{
if(document.getElementById("pgnum") && document.getElementById("pgnum").value!="")
{
if(document.getElementById("pgnum").value > pager.pages)
{
pager.showPage(pager.pages);
}
else
{
pager.showPage(document.getElementById("pgnum").value);
}
}

else
{
pager.showPage(1);
}
}
}
else
{
pager.showPageNav('none', 'pageNavPosition');
}

and 2 use this in your page add the before div to the end of HTML section of you page, you should create a table for that so that its alignment is proper:






If you like this script, please post ...!