<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Fishing Resorts | Fishing Camps | Fishing Vacations: Link Exchange</title>
<meta http-equiv="description" content="Fishing destination site listing at Northeast Angling TV - Inshore and offshore saltwater fishing for Striped Bass, Fluke, Shark, Tuna, Striper, Flounder, Sea Bass and much more!: Link Exchange" />
<meta http-equiv="keywords" content="Fishing Resorts, Fishing Camps, Fishing Vacations" />
<meta http-equiv="author" content="Sound Strategies, Inc." />
<link href="?action=css" rel="stylesheet" type="text/css" />
<META name="Robots" content="INDEX,FOLLOW">
<meta http-equiv="revisit-after" content="7 days">
<meta http-equiv="abstract" content="media, tv, web, northeast angling">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta http-equiv="Content-Language" content="en-us">
</head>

<body background="Images/WebBack.jpg">
<div align="center">
  <center>
  <table border="0" cellpadding="0" cellspacing="0" style="border-left:2px solid #800000; border-right:2px solid #800000; border-collapse: collapse" width="650" bgcolor="#FFFFFF">
  <tr>
      <td align="center" height="54" style="border-left: 2px solid #800000; border-right: 2px solid #800000; border-top: 2px solid #800000; padding:">
      <img border="0" src="_borders/WebBanner.jpg" width="646" height="54"></td>
    </tr>
  <tr>
    <td valign="top" align="center">
    <div align="left">
      <table border="0" cellpadding="5" cellspacing="0" style="border-collapse: collapse">
      <tr>
        <td>
        <form method="POST" action="javascript:history. go(-1)">
          <p><input border="0" src="Images/BlueNavB.gif" name="I4" type="image" width="118" height="36"></p>
        </form>
        </td>
      </tr>
    </table>
    </div>
    </td>
  </tr>
  <tr>
    <td align="center"><div id="LinkMgrPath">
<a href="http://www.neangling.com/links.php" title="Saltwater Fishing | Striped Bass FIshing | Links">Links</a>:
<a href="?action=view&amp;CatID=498" title="Fishing Resorts | Fishing Camps | Fishing Vacations">Fishing Destination Links</a>:
Link Exchange
[<a href="#" onclick="javascript:window.history.go(-1); return false;" title="Back">Back</a>]
</div>
<div id="LinkMgrContainer">

<h2>LINK EXCHANGE STEP 1: PLACE OUR LINK TO YOUR WEBSITE </h2>
Please place a link to http://www.neangling.com on your website before submitting your link.
Once our link is on your website go to STEP 2 below.
Your link will be activated ONLY after you respond to the confirmation emails.
Here is the link information for this website:<br />
<table border="0" cellpadding="2">
	<tr>
		<th>URL</th>
		<td><a href="http://www.neangling.com">http://www.neangling.com</a></td>
	</tr>
	<tr>
		<th>Name</th>
		<td>Saltwater Fishing | Striped Bass FIshing</td>
	</tr>
	<tr>
		<th>Title (mouseover)</th>
		<td>Saltwater Fishing | Striped Bass FIshing</td>
	</tr>
	<tr>
		<th>Description</th>
		<td>Northeast Angling TV - Inshore and Offshore fishing for Striped Bass, Fluke, Shark, Tuna, Striper, Flounder, Sea Bass and much more!</td>
	</tr>
			</table>
<table class="LinkMgrCodeSample" align="center">
	<tr>
		        				<th>Text Link Only</th>
	</tr>
	<tr>
								<td>
						<textarea onclick="this.select()"><a href="http://www.neangling.com" title="Saltwater Fishing | Striped Bass FIshing">Saltwater Fishing | Striped Bass FIshing</a>: Northeast Angling TV - Inshore and Offshore fishing for Striped Bass, Fluke, Shark, Tuna, Striper, Flounder, Sea Bass and much more!</textarea>
					</td>
	</tr>
	<tr>
								<td>
						<a href="http://www.neangling.com" title="Saltwater Fishing | Striped Bass FIshing">Saltwater Fishing | Striped Bass FIshing</a>: Northeast Angling TV - Inshore and Offshore fishing for Striped Bass, Fluke, Shark, Tuna, Striper, Flounder, Sea Bass and much more!
					</td>
	</tr>
</table>
<p>
<strong>If you need to contact our webmaster with a special request or need a new category <a href="?action=contact">click here</a>.</strong>
</p>
<h2>LINK EXCHANGE STEP 2: SUBMIT YOUR LINK</h2>
<p><b>All links are posted on a reciprocal basis.</b> Please complete STEP 1 (above) before submitting this form.</p>

<p><b>PLEASE DO NOT:</b></p>
<ul>
	<li><b>submit websites with the following content:</b><ul>
		<li>adult, dating</li>
		<li>illegal, offensive, copyright infringing</li>
		<li>casinos, gambling, lottery</li>
		<li>replica products</li>
		<li>drugs</li>
		<li>Applications for Financial Services or Loans</li>
	</ul></li>
	<li><b>submit websites in other language than English</b></li>
	<li><b>submit websites with excessive advertising and no content</b></li>
	<li><b>submit the same website more than once</b></li>
	<li><b>remove the link to http://www.neangling.com after your site has been accepted</b><br>
	Our system automatically checks for the reciprocal link on a regular basis
	and if<br>the link to http://www.neangling.com cannot be found your link will be automatically removed.</li>
</ul>
<p>We reserve the right to delete any link that we, at our sole discretion, find inappropriate.</p>






<SCRIPT type="text/javascript" LANGUAGE="JavaScript">
<!--
function check_email(e){
	ok = "1234567890qwertyuiop[]asdfghjklzxcvbnm.@-_QWERTYUIOPASDFGHJKLZXCVBNM";
	for(i=0; i < e.length ;i++){
		if(ok.indexOf(e.charAt(i))<0){ 
			return false;
		}
	} 
	if (document.images) {
		re = /(@.*@)|(\.\.)|(^\.)|(^@)|(@$)|(\.$)|(@\.)/;
		re_two = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
		if (!e.match(re) && e.match(re_two)) {
			return (-1);
		} 
	}
}
function LNK_REQ_VALIDATE(oForm){
	if (oForm.U_Name.value == ""){
		alert("Please enter Webmaster name");
		oForm.U_Name.focus();
		return (false);
	}
	if (oForm.Email.value == ""){
		alert("Please enter Webmaster e-mail");
		oForm.Email.focus();
		return (false);
	}
	var email_check = check_email(oForm.Email.value);
	if(!email_check){
		alert("The email you entered is not a valid email address");
		oForm.Email.focus();
		return (false);
	}
	
	if (oForm.URL.value == ""){
		alert("Please enter Link URL");
		oForm.URL.focus();
		return (false);
	}
	if (oForm.Name.value == ""){
		alert("Please enter Link Name");
		oForm.Name.focus();
		return (false);
	}
	if (oForm.Title.value == ""){
		alert("Please enter Link Title (mouseover)");
		oForm.Title.focus();
		return (false);
	}
	if (oForm.Description.value == ""){
		alert("Please enter Link Description");
		oForm.Description.focus();
		return (false);
	}

	
	if (oForm.ReciprocalURL.value == ""){
		alert("Please enter Reciprocal URL");
		oForm.ReciprocalURL.focus();
		return (false);
	}

	
	if (!CheckCAPTCHA(oForm)){
		alert("Please enter the code value that appears");
		oForm.txtCaptcha.value='';
		oForm.txtCaptcha.focus();
		return (false);
	}
}
-->
</script>


<form name="CAT_REQ_FORM" method="post" action="#" onsubmit="return LNK_REQ_VALIDATE(this);">
<input type="hidden" name="PHPSESSID" value="9027c5b6388b8b13e8f651d6c25fd6e4">
<input type="hidden" name="action" value="save">
<input type="hidden" name="CatID" value="498">
<h3>Webmaster contact settings</h3>
<table border="0" cellpadding="2" align="center">
	<col width="120px" />
	<tr>
		<td align="right">
			<b>Name</b>
		</td>
		<td><input type="text" name="U_Name" maxlength="60" value="" class="LinkMgrWideInput"></td>
	</tr>
	<tr>
		<td align="right">
			<b>Email</b>
		</td>
		<td><input type="text" name="Email" maxlength="60" value="" class="LinkMgrWideInput"></td>
	</tr>
	<tr>
		<td align="right">
			Contact Phone
		</td>
		<td>
			<input type="text" name="Phone" maxlength="32" size="12" value="">
			Ext:
			<input type="text" name="PhoneExt" maxlength="5" size="5" value="">
		</td>
	</tr>
	<tr>
		<td align="right">
			Contact Details
		</td>
		<td><textarea rows="3" name="ContactDetails" wrap="off" class="LinkMgrWideInput"></textarea></td>
	</tr>
</table>
<h3>Link Settings</h3>
<table border="0" cellpadding="2" align="center">
	<col width="120px" />
	<tr>
		<td align="right">
			<b>URL</b>
		</td>
		<td><input type="text" name="URL" maxlength="255" value="" class="LinkMgrWideInput"></td>
	</tr>
	<tr>
		<td align="right">
			<b>Website Name</b>
		</td>
		<td><input type="text" name="Name" maxlength="255" value="" class="LinkMgrWideInput"></td>
	</tr>
	<tr>
		<td align="right">
			<b>Title (mouseover)</b>
		</td>
		<td><input type="text" name="Title" maxlength="255" value="" class="LinkMgrWideInput"></td>
	</tr>
	<tr>
		<td align="right">
			<b>Description</b>
		</td>
		<td><textarea rows="3" name="Description" wrap="off" class="LinkMgrWideInput"></textarea></td>
	</tr>
		<tr>
		<td align="right">
					<b>Reciprocal URL</b>
				</td>
		<td><input type="text" name="ReciprocalURL" maxlength="255" value="" class="LinkMgrWideInput"></td>
	</tr>
</table>
<center>
<noscript>JavaScript should be enabled in your browser to use this form.</noscript>
<script language="JavaScript" type="text/javascript" src="?action=ajax_captcha.js"></script><br />

<button type="submit" title="Submit" class="Btn">Submit</button>
<button type="button" onclick="window.location.href = '?action=cancel&amp;CatID=498';" class="Btn">Cancel</button>
</center>
</form>

	<a name="error"></a>
	<div class="LinkMgrErrorMsg"></div>

	<div id="LinkMgrFooBan">Powered by <a href="http://linkmgr.soundst.com/" title="Links Manager" target="_blank"><b>LinkMgr</b></a> of <a href="http://www.soundst.com" title="Web Design - Search Engine Optimization - SEO" target="_blank">Sound Strategies, Inc.</a></div>
</div>&nbsp;</td>
  </tr>
  <tr>
    <td>
    <div align="center">
      <center>
      <table border="0" cellpadding="5" cellspacing="0" style="border-collapse: collapse" id="AutoNumber6">
        <tr>
          <td align="center">
          <div align="left">
            <table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse" id="AutoNumber51" width="100%">
              <tr>
                <td width="20%" align="center">
          <font size="2" face="Arial">
                <a target="_blank" title="Fishing TV Shows - Saltwater Fishing TV Shows" href="http://www.saltwater-fishing-directory.com/links.php?action=view&CatID=199">
          <img src="http://www.saltwater-fishing-directory.com/images/SWFD_Logo108.gif" border="0" ALT="Fishing TV Shows - Saltwater Fishing TV Shows" align="right" width="108" height="36"></a></font></td>
                <td width="20%" align="center"><font face="Arial" size="1">
                <a title="Fishing DVD - Saltwater Fishing DVD" target="_blank" href="http://www.captainjackies.com">
                <img alt="Fishing DVD - Saltwater Fishing DVD" src="Images/Logos/CaptainJackiesLogo120.gif" border="0" width="120" height="45"></a></font></td>
                <td width="20%" align="center"><font face="Arial">
                <a title="Saltwater Fishing - Freshwater Fishing - Free Fishing TV" target="_blank" href="http://www.efishingtv.com/">
                <img border="0" src="Images/Logos/eFishingTV108.gif" width="108" height="41"></a></font></td>
                <td width="20%" align="center"><table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse" id="AutoNumber52">
                  <tr>
                    <td align="center"><font size="1" face="Arial">
                    <a href="Links.php?action=view&CatID=75">Resources</a></font></td>
                    <td align="center"><font size="1" face="Arial">
                    <a href="Links.php">Links</a>&nbsp;</font></td>
                    <td align="center"><font size="1" face="Arial">
          <a href="Sitemap.htm">Sitemap</a></font></td>
                  </tr>
                  <tr>
                    <td align="center"><font size="1" face="Arial">
                    <a href="http://www.neangling.com/Links.php?action=view&CatID=83">
                    Marine</a></font></td>
                    <td align="center"><font size="1" face="Arial">
                    <a href="http://www.neangling.com/Links.php?action=view&CatID=163">
                    Charters</a></font></td>
                    <td align="center"><font size="1" face="Arial">
          &nbsp;<a href="http://www.neangling.com/Links.php?action=view&CatID=240">Reports</a></font></td>
                  </tr>
                  <tr>
                    <td align="center"><font size="1" face="Arial">
                    <a href="http://www.neangling.com/Links.php?action=view&CatID=84">
                    Business</a></font></td>
                    <td align="center"><font size="1" face="Arial">
                    <a href="http://www.neangling.com/Links.php?action=view&CatID=307">
                    Services</a></font></td>
                    <td align="center">&nbsp;</td>
                  </tr>
                </table></td>
                <td width="20%" align="center"><span style="font-weight: 400">
                <font size="1" color="#000080" face="Arial">This site was built and is maintained by
          <a title="Web Design - SEO Optimization" target="_blank" href="http://www.soundst.com">Sound Strategies, Inc.</a> </font>
          </span></td>
              </tr>
            </table>
          </div>
          </td>
        </tr>
        <tr>
          <td align="center" style="border-bottom: 2px solid #800000; padding: 0">
          <p align="center"><b><font size="1" face="Arial">Fluke fishing - Tuna fishing - Shark fishing - Flounder fishing - 
          Cod fishing - Weakfish, Blackfish, Sea Bass, and much more!&nbsp; Striped Bass fishing - Saltwater 
          fishing - Striper Fishing using only Shimano reels and Shimano fishing 
          Rods!&nbsp; </font></b></td>
        </tr>
      </table>
      </center>
    </div>
    </td>
  </tr>
  </table></center>
</div>
    
<p>&nbsp;</p>

</body>
</html>