Javascript error on One Way satellite but Works fine with normal dialup what could cause this?

Posted on 2005-04-23
Last Modified: 2008-01-09
Hi Experts,

I have a really annoying problem and I cant seem to find anything much about it at all. I have One Way satellite connection as I live in the styx, I use a standard dialup for the up part.

I have slowly managed to get this arrangment going well and I am pretty happy with it. Browsing and downloads are fast (some secure sites can be a bit of a pig) but if I encounter one of these sites I fallback on onspeed just right click and I am using my dialup.. but accelerated. I also have most of my apps runnning socksified. I have a 3 PC LAN running here and have just added mcaffee firewall ( the problem preceeded the firewall)

My problem is that the back end of my web based e-commerce program uses java script. For some reason the java script there wont work when I am using the satellite connection. If  I right click Onspeed it goes straight away. The error I get when double click the exclamation mark in the bottom left reads:

'obj1' is null or not an object
Code: 0

I would be very grateful for any ideas I can try to get rid of this problem!


Alex Alden
Question by:alexealden
    LVL 7

    Expert Comment

    Hi Alex, please give more info:

    It is interesting that you say the "back end" uses javascript.  Back end sounds like the server end.  Javascript is typically used on the front-end (in other words at the customer browser end), and Java or JSP is used at the server end.  Can you explain how the javascript is used at the back end?


    Author Comment

    Hi Bill,

    Thanks for your interest, it is only the back end in so much as that I control page layout ... settings .. etc...Things that the customer would not see. I guess java helps facilitate this interface better.  but it is web based ecommerce software product basically...

    LVL 7

    Expert Comment

    Um... careful with the terms, please: java != javascript.  They are very different!  Java is a programming language - it can be used for any coding task.  Javascript is a limited, scripting language, imbeded into the web browser.  Hence Bill's ccomment...

    Back to the show...

    It sounds like the web browser isn't properly handling the split routing for the sat connection.  That is it's not recognizing the returning information on the other channel as the response.  Via view source, you should be able to look at the page source - can you post it?

    LVL 7

    Assisted Solution

    Thankx for the support, Bstrauss3, you are exactly right about my comment.

    Alex, bstrauss3 has pointed out the real problem: "It sounds like the web browser isn't properly handling the split routing for the sat connection".  Please supply the information he requested.

    I also wonder if you are using some special version of the browser, probably a version supplied by your satelliete provider - or, have you re-installed some software like the browser or the operating system?  Also, what network box are you using to communicate with your ISP - does it talk to the uplink as well as to the sat, or is the uplink a separate box?


    LVL 7

    Expert Comment

    Good point ... there are two ways to implement split routing, software and hardware.  The hardware solution is nice because it makes everything disappear - there's just an Ethernet port and one IP address.  To do things in software requires setting routing up on both sides of the link so that the 'right' link gets favored in each direction.  That's a lot more complex and fragile - so as Bill asks, what changed?


    Author Comment

    Hi and thanks for the help.

    My ISP Centre Point does not offer any special software or browsers.

    The setup is basically just using my normal dialup connection, they gave me proxy servers which I have entered into internet options - connections..

    And thats its basically! Is there some kind of softwatre or hardware that could split this better for me? Here is the source requested it is basically a javascript (did I use it right this time) web  program that display a list of  .html pages that I can select and edit. One out of 10 times I can click the edit button and it will open up the window with a java-script html editor. But mostly it doesnt respons and it always comes up with a java script error.



    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <!-- saved from url=(0070) -->
    <META http-equiv=Content-Type content="text/html; charset=windows-1252"><LINK
    href="sitepages_files/master.css" type=text/css rel=stylesheet>
    <SCRIPT language=javascript src="sitepages_files/mouseover.js"></SCRIPT>

    <SCRIPT language=JavaScript src="sitepages_files/yusasp_ace.js"></SCRIPT>

    <SCRIPT language=JavaScript src="sitepages_files/yusasp_color.js"></SCRIPT>

    <META content="MSHTML 6.00.2900.2627" name=GENERATOR></HEAD>
    <BODY class=bgfixer bgColor=#ffffff leftMargin=0 topMargin=0
    onload=loadsitepages() marginheight="0" marginwidth="0">
    <DIV id=manager>
    <DIV class=bodytext id=intro
    style="LEFT: 10px; WIDTH: 589px; POSITION: absolute; TOP: 47px; HEIGHT: 48px">Change
    the design of key site pages and create as many additional pages as you need for
    your website. <BR><BR>These pages can be used for any purpose. For example
    include free text search boxes, links to other pages or sites, special offers
    using HTML and "floating buy-now" buttons, links to category, sub-category and
    product pages. You can also create a form which can capture customer
    information, and have an email sent back to you (edit a site page to see more
    help on this). </DIV>
    <DIV class=bodytextheader id=title
    style="LEFT: 15px; WIDTH: 268px; POSITION: absolute; TOP: 8px; HEIGHT: 23px">Site
    Pages Manager </DIV><BUTTON class=buttonstylesave id=button1
    style="LEFT: 483px; WIDTH: 70px; POSITION: absolute; TOP: 5px"
    onclick=cmdCancel(); name=button1>Cancel</BUTTON>
    <DIV id=rulermain
    style="LEFT: 5px; WIDTH: 605px; POSITION: absolute; TOP: 25px">
    <HR color=#006699 SIZE=1>
    style="LEFT: 130px; WIDTH: 180px; FONT-FAMILY: Courier; POSITION: absolute; TOP: 192px"
    onchange=newdisplay() size=10 name=sellist></SELECT><BUTTON class=buttonstyle
    id=new style="LEFT: 340px; WIDTH: 60px; POSITION: absolute; TOP: 220px"
    onclick="cmdNew_click('')">New</BUTTON><BUTTON class=buttonstyle id=edit
    style="LEFT: 340px; WIDTH: 60px; POSITION: absolute; TOP: 250px"
    onclick=cmdEdit_click()>Edit</BUTTON><BUTTON class=buttonstyle id=butdelete
    style="LEFT: 340px; WIDTH: 60px; POSITION: absolute; TOP: 280px"
    <DIV class=helpcard id=mainbotlink
    style="DISPLAY: none; LEFT: 42px; WIDTH: 520px; POSITION: absolute; TOP: 350px"></DIV></DIV>
    <OBJECT id=SITELIST height=1 width=1
    <OBJECT id=SITENOTES height=1 width=1
    <OBJECT id=CURR height=1 width=1
    <DIV id=sitepageswindow
    style="Z-INDEX: 25; LEFT: 0px; VISIBILITY: hidden; WIDTH: 600px; POSITION: absolute; TOP: 0px; HEIGHT: 380px"><BUTTON
    class=buttonstylesave id=save
    style="LEFT: 403px; WIDTH: 70px; POSITION: absolute; TOP: 7px"
    onclick=cmdOK_onclick()>Save</BUTTON><BUTTON class=buttonstylesave id=cancel
    style="LEFT: 483px; WIDTH: 70px; POSITION: absolute; TOP: 7px"
    onclick="if (obj1.displayMode == 'HTML') { obj1.setDisplayMode(); window.document.all.displayModeButton.innerText='View HTML Source'; } toggle('showmain');">Cancel</BUTTON>

    <DIV id=maintellmemore
    style="LEFT: 590px; WIDTH: 18px; CURSOR: help; POSITION: absolute; TOP: 7px; HEIGHT: 18px"><IMG
    style="CURSOR: help" onclick="dohelp('catalog_sitepages.htm')" height=18
    src="sitepages_files/redhint2.gif" width=18></DIV>
    <DIV style="Z-INDEX: 5; LEFT: 5px; WIDTH: 605px; POSITION: absolute; TOP: 25px">
    <HR color=#006699 SIZE=1>
    <DIV class=bodytextheader id=title
    style="Z-INDEX: 17; LEFT: 15px; WIDTH: 268px; POSITION: absolute; TOP: 8px; HEIGHT: 23px">Site
    Page Content</DIV>
    <DIV class=blacktext style="LEFT: 15px; POSITION: absolute; TOP: 54px">Name of
    Site Page:</DIV><INPUT id=sitename
    style="LEFT: 140px; WIDTH: 200px; POSITION: absolute; TOP: 50px" maxLength=30>
    <DIV class=blacktext id=hr
    style="LEFT: 15px; POSITION: absolute; TOP: 84px">Page Content (insert HTML or
    plain text)</DIV><!--FDR iframe id="sitepreviewnew" style = "position:absolute; top:105; left:15; height:200; width:491;">
    <form name = "editor" method = "post" action = "">
        <TEXTAREA NAME = "notes" COLS = "40" ROWS = "15" STYLE="position:absolute; top:105px;  left:15px; width: 491px; height: 200px"></textarea>

      <div id= "views" style="z-index:10; visibility:invisible"> <fieldset class="FIELDSET" id="viewbuttons" style="position:absolute; top:107; left:514; width:100; height:75">
        <legend class="fieldtext"><span class="blacktext">Views</span></legend> <button class="buttonstyle" style="position:absolute;top:20px;width:90px;left:3px" onclick="dopreview()">Preview</button>
        <button class="buttonstyle" style="position:absolute;top:50px;width:90px;left:3px" onclick="doviewhtml()">Edit</button>
        </fieldset> </div>
        <button class="buttonstyle" style="position:absolute;top:207px;width:90px;left:517px" onclick="myshoweditor()">Edit Page</button>
        <button class="buttonstyle" style="position:absolute;top:237px;width:90px;left:517px" onclick="ImageUpload_click()">Media Library</button>
      </form--><BUTTON class=buttonstyle id=displayModeButton
    style="LEFT: 470px; WIDTH: 120px; POSITION: absolute; TOP: 80px"
    onclick="obj1.setDisplayMode(); if(obj1.displayMode=='RICH'){this.innerText='View HTML Source';}else{this.innerText='Goto Preview Mode';}">View
    HTML Source</BUTTON>
    var obj1 = new ACEditor("obj1")
    obj1.width = 580
    obj1.height = 350
    obj1.positioning = "absolute"
    obj1.display = "block" = 105
    obj1.left = 15
    obj1.isFullHTML = false
    obj1.usePrint = false
    obj1.useSubscript = false
    obj1.useStrikethrough = false
    obj1.useSuperscript = false
    obj1.useIndent = false
    obj1.useInternalLink = true
    obj1.useOutdent = false
    obj1.useAbsolute = false
    obj1.useAsset = false
    obj1.usePageProperties = false
    obj1.ImagePageWidth = 440;
    obj1.ImagePageHeight = 390;
    obj1.ImagePageURL = "../htmleditor/include/default_image.asp";
    obj1.StyleSelection = "customcss.css";
    obj1.StyleSelectionPath_RelativeTo_EditorPath = "../../stylesandscripts/";
    obj1.InternalLinkPageURL = "../htmleditor/include/default_InternalLink.asp";
    obj1.InternalLinkPageWidth = 300;
    obj1.InternalLinkPageHeight = 400;

    obj1.EvolveTagStart = new Array(50);
    obj1.EvolveTagEnd = new Array(50);
    obj1.EvolveTagInfo = new Array(50);

    obj1.EvolveTagStart[0] = "{searchboxN}";
    obj1.EvolveTagEnd[0] = "";
    obj1.EvolveTagInfo[0] = "Drop down box containing values for product value N\nChange N to 1-7 (searchbox2 through to searchbox7)";
    obj1.EvolveTagStart[1] = "{category}";
    obj1.EvolveTagEnd[1] = "";
    obj1.EvolveTagInfo[1] = "For a pull down list of categories";
    obj1.EvolveTagStart[2] = "{pricemin}";
    obj1.EvolveTagEnd[2] = "";
    obj1.EvolveTagInfo[2] = "Minimum price search field";
    obj1.EvolveTagStart[3] = "{pricemax}";
    obj1.EvolveTagEnd[3] = "";
    obj1.EvolveTagInfo[3] = "Maximum price search field";
    obj1.EvolveTagStart[4] = "{searchbut}";
    obj1.EvolveTagEnd[4] = "{/searchbut}";
    obj1.EvolveTagInfo[4] = "Enclosed text or image will initiate search";
    obj1.EvolveTagStart[5] = "{searchboxNaslist,amount,width,height}";
    obj1.EvolveTagEnd[5] = "";
    obj1.EvolveTagInfo[5] = "Displays product values N  as a table of hyperlinks to find products matching product value selected\n           - N: searchbox this list relates to (1-7)\n           - amount: number of product values to display across the screen\n           - width: width (in pixels) that each product value will take\n           - height: height (in pixels) that each product value will take";
    obj1.EvolveTagStart[6] = "{categorytextlist,amount,width,height}";
    obj1.EvolveTagEnd[6] = "";
    obj1.EvolveTagInfo[6] = "Displays categories as a table of hyperlinks to each category.\n           - amount: number of categories to display across the screen\n           - width: width (in pixels) that each category will take\n           - height: height (in pixels) that each category will take";
    obj1.EvolveTagStart[7] = "{categorytextlist,useimage,amount,width,height}";
    obj1.EvolveTagEnd[7] = "";
    obj1.EvolveTagInfo[7] = "Displays categories as a table of hyperlinks to each category with each category image displayed\n           - useimage: indicates to display the categories as images\n           - amount: number of categories to display across the screen\n           - width: width (in pixels) that each category will take\n           - height: height (in pixels) that each category will take";
    obj1.EvolveTagStart[8] = "{cartlist}";
    obj1.EvolveTagEnd[8] = "";
    obj1.EvolveTagInfo[8] = "Display the contents of the shopping basket as a list";
    obj1.EvolveTagStart[9] = "{ifloggedon}";
    obj1.EvolveTagEnd[9] = "{/ifloggedon}";
    obj1.EvolveTagInfo[9] = "Displays enclosed text only for customers who have logged on";
    obj1.EvolveTagStart[10] = "{ifnotloggedon}";
    obj1.EvolveTagEnd[10] = "{/ifnotloggedon}";
    obj1.EvolveTagInfo[10] = "Displays enclosed text only for customers who are not logged on";
    obj1.EvolveTagStart[11] = "{currencycode}";
    obj1.EvolveTagEnd[11] = "";
    obj1.EvolveTagInfo[11] = "Drop down box on your site listing the currencies to choose from";
    obj1.EvolveTagStart[12] = "{buttcurrency}";
    obj1.EvolveTagEnd[12] = "{/buttcurrency}";
    obj1.EvolveTagInfo[12] = "Button to action the currency change";
    obj1.EvolveTags = 13;
    <DIV class=helpcard id=bottext
    style="LEFT: 14px; WIDTH: 585px; POSITION: absolute; TOP: 515px; HEIGHT: 32px">
    <P>This is where you can layout your Site Pages. You can type in HTML or plain
    text into the panel above (click on <B>Edit</B>), paste it in from an external
    HTML editor (such as Frontpage or Dreamweaver), or use our built-in <B>HTML
    editor</B> to layout your page. You can also insert images from your <B>Media
    Library</B> by using HTML &lt;img&gt; tags in the panel above.</P>
    <P>There are special things you can do with Site Pages:<BR><BR><A
    search boxes and categories on your site page</A><BR><A
    customer information in a form and send out an email</A><BR><A
    information to your site page and display it</A><BR><A
    the contents of the cart and ask for a quote or email a friend</A><BR><A
    your site pages for logged on customers</A><BR><A
    a sitemap on your site page</A>
    <P><A name=dropdown><B>Place search boxes and categories on your site
    <P>Place dynamic search boxes on your site page using the {} tags listed below.
    These tags will be replaced on your website by drop-down and input boxes
    allowing customers to select search criteria for finding your products. The
    search boxes list product values for each product in the catalogue, and these
    are set up in <B>Catalog -&gt; Search Boxes &amp; Product Values.</B> <BR><BR>So
    for example, searchbox1 will display product values from Product Value 1 for all
    products.<BR><BR>The tags available are:<BR><BR>Search Box 1:
    <B>{searchbox1}</B> - (relates to product value 1)<BR>Search Box 2:
    <B>{searchbox2}</B> - (relates to product value 2)<BR>Search Box 3:
    <B>{searchbox3}</B> - (relates to product value 3)<BR>... and through to Search
    Box 15: <B>{searchbox15}</B> - (relates to product value 15)<BR><BR>A class name
    called <B>paramstyle</B> is associated with each searchbox, so you can amend the
    style by setting up stylesheets in the Layout -&gt; Scripting area. For more
    help on setting up these search boxes see <B>Catalog -&gt; Search Boxes &amp;
    Product Values</B><BR><BR>There are other search tags also available:<BR><BR>For
    a pull down list of categories: <B>{category}</B>,<BR><BR>To Allow customers to
    enter a price range use: <BR>Minimum Price <B>{pricemin}</B>,Maximum Price:
    <B>{pricemax}</B><BR><BR>Don't forget to place a search button or text, by
    using: <B>{searchbut}</B><I>&nbsp;image or
    text&nbsp;</I><B>{/searchbut}</B>.<BR><BR>You can also place the product values
    as a list of hyperlinks on the site page as opposed to as a drop down search
    box. To do this use the tag: <B>{searchbox1aslist,n1,n2,n3}</B> (also applies to
    searchbox2 through to searchbox15) where :
      <LI>n1 is the number of product values to display across the screen
      <LI>n2 is the width (in pixels) that each product value will take
      <LI>n3 is the height (in pixels) that each product value will take </LI></UL>For
    example {searchbox1aslist,3,150,50} will create an HTML table which is 3 cells
    wide, each cell being 150 pixels wide and 50 pixels high.<BR><BR>A class has
    been associated called <B>sbclistclass</B> with the table, each &lt;td&gt; cell
    and the &lt;A HREF...&gt; hyperlinks within which the product values appear. To
    change the fonts, colors and borders of the product values and the table they
    lie within then create styles for this class in the Scripting area (goto
    <B>Layout -&gt; Scripting</B>)<BR><BR>Similarly, you can place the categories as
    a list on the site page (instead of as a drop down box. Use the following tag
    <B>{categorytextlist,n1,n2,n3}</B> where n1, n2 and n3 have the same meaning as
    above. The associated class is <B>cclistclass</B>. You can also display the
    categories as images with <B>{categorytextlist,useimage, n1,n2,n3}</B>
    <P><BR><A name=capture><B>Capture customer information in a form and send out an
    <P>You can capture any customer information in a form, and have the completed
    details sent back to you in an email. To do this all you need to do is design an
    HTML form. The HTML form must contain the following hidden input fields
    explained below:
      <LI>name:<B>mailtoemail</B> - The value you specify will be the email address
      where the mail will be sent to
      <LI>name:<B>mailtoemail2</B> - The value you specify will be a second email
      address where the mail will be sent to (optional)
      <LI>name:<B>mailsubject</B> - The value you specify will be thesubject of the
      <LI>name:<B>mailheading</B> - The value you specify will be the heading on the
      body of the email sent to you
      <LI>name:<B>mailfromname</B> - The value you specify will be the from name of
      the email
      <LI>name:<B>mailfromemail</B> - The value you specify will be the from email
      <LI>name:<B>mailredirectto</B> - The value you specify will be the URL to go
      to after the form has been submitted </LI></UL>You must also make the action of
    the form "code/mailprocess.asp". You can include any form tags you wish to
    capture any customer information (for example suggestions, ideas, marketing
    <P>An example of a form is included below - this form prompts the customer for
    their phone, email, name and suggestion - an email with their response is sent
    to "" - after submitting the form they are redirected to your
    home page:
    <P><I>&lt;form name="PhoneMe" action="code/mailprocess.asp"
    method="post"&gt;<BR>Name &lt;input type="text" name="name"
    size="30"&gt;&lt;BR&gt;<BR>Phone Number &lt;input type="text" name="phonenumber"
    size="30"&gt;&lt;BR&gt;<BR>Email Address &lt;input type="text"
    name="emailaddress" size="30"&gt;&lt;BR&gt;<BR>Suggestion: &lt;textarea rows=3
    cols=40 name="suggestion" size="30"&gt;&lt;/textarea&gt;<BR>&lt;input
    type="submit"&gt;<BR>&lt;input type="hidden" name="mailtoemail"
    value=""&gt;<BR>&lt;input type="hidden" name="mailsubject"
    value="Suggestion From Customer"&gt;<BR>&lt;input type="hidden"
    name="mailheading" value="A suggestion from a customer below:"&gt;<BR>&lt;input
    type="hidden" name="mailfromname" value="Your Site"&gt;<BR>&lt;input
    type="hidden" name="mailfromemail" value=""&gt;<BR>&lt;input
    type="hidden" name="mailredirectto"
    <P><A name=#outside><B>Pass information to your site page and display it</B></A>

    <P>This is very easy to do. When you call this sitepage, you can pass a
    variable, either in a form element or as part of the querystring, and then
    display it by placing the tag {name}, where name is the name of the form
    element. This is very useful for example of you want to display a product name
    of the page, which will be part of a form the customer will send to the store
    owner for a quote.</P>
    <P><A name=#cartlist><B>Display the contents of the shopping basket on the
    <P>Place the tag <B>{cartlist}</B> anywhere on the page and it will display the
    contents of the current shopping basket. You can alter the layout of the
    displayed items by setting up a class called classliststyle in the scripting
    area. If the tag is included within the mailprocess form then any email sent
    from the form will also display the contents of the basket. This could be used
    to either invite the customer to request a quote or email their friend.</P>
    <P><A name=#logon><B>Tailoring your site pages for logged on customers</B></P>
    <P>You may want to display special messages purely for customers who have logged
    on (for example, links to certain products or offers that you only want logged
    on customers to see). You can do this by enclosing any HTML within the following
    tags: <B>{ifloggedon} &amp; {/ifloggedon}</B> - if you place the tag
    <B>{username}</B> between these tags, then this will display the customer's
    login name.
    <P>Equally, you may want ordinary visitors to your site to see certain messages
    that are not applicable to logged on customers. Use the following tags to
    enclose such HTML: <B>{ifnotloggedon} &amp; {/ifnotloggedon}</B>
    <P><A name=sitemap><B>Place a sitemap on your site page</B></A>
    <P>Sitemaps are very useful for two reasons. Firstly they act us a quick
    reference to site visitors who want to see the overall structure of your site
    and navigate quickly through to your categories, subcategories and products.
    Secondly they ensure search engine spiders will be able to find all categories,
    subcategories and products on your site.
    <P>Place the tag <B>{sitemap}</B> on your sitepage to display a hierarchical
    list of categories and subcategories with links through to all the category and
    subcategory pages and a full list of all the products. You can tailor the look
    of the list by creating and editing the following classes in the scripting area:

      <LI>smcatlist - The class for the &lt;ul&gt; tag which holds the list of
      <LI>catlink - The class for the &lt;a&gt; tag which holds the hyperlink for
      each category
      <LI>smsubcatlist - The class for the &lt;ul&gt; tag which holds the list of
      <LI>subcatlink - The class for the &lt;a&gt; tag which holds the hyperlink for
      each subcategory </LI></UL></DIV></DIV>
    <SCRIPT language=JavaScript>

    var svrName=""
    var connName="DRIVER={SQL Server};SERVER=;UID=aealden;APP=Microsoft (R) Developer Studio;WSID=lynxdev;LANGUAGE=us_english;DATABASE=aealden;UID=aealden;PWD=bilbo;"

    SITELIST.Server = svrName;
    SITELIST.Connect = connName;
    SITELIST.ExecuteOptions = 1;
    SITELIST.FetchOptions = 1;
    SITENOTES.Server = svrName;
    SITENOTES.Connect = connName;
    SITENOTES.ExecuteOptions = 1;
    SITENOTES.FetchOptions = 1;
    CURR.Server = svrName;
    CURR.Connect = connName;
    CURR.ExecuteOptions = 1;
    CURR.FetchOptions = 1;
    var sitenewyes = false

    //stores list of permanent pages
    mpermlist = new Array(5)
    mpermlist[0] = new Array("HomePage",0)
    mpermlist[1] = new Array("ContactPage",0)
    mpermlist[2] = new Array("HelpPage",0)
    mpermlist[3] = new Array("AboutPage",0)
    mpermlist[4] = new Array("TermsPage",0)

    //**Start Encode**

    function cmdCancel()

    function ImageUpload_click()
            var strfeatures
            strfeatures='titlebar=no,toolbar=no, resizable=no,location=no,menubar=no,Height=553px,Width=562px';
    "","newwindow",strfeatures );
    function cmdEdit_click()

        mX = sellist.selectedIndex
        if ( mX == -1)
           alert("Select a site page first")

        //cannot change the name if it is one of the reserved pages
        if (mX < mpermlist.length)
           document.all.sitename.disabled = true
           document.all.sitename.disabled = false

     sitenewyes = false
        selsitename = sellist(sellist.selectedIndex).text

        HTMLstring = "<table width='100%'><tr><td align=middle valign=center height='160'><b>Loading Page...</b></td></tr></table>"

    //FDR    sitepreviewnew.document.write(HTMLstring)
    //FDR    sitepreviewnew.document.close()

     SITENOTES.SQL = "SELECT description, notes from sitepages2 where description = '"  + selsitename + "'"

        document.all.sitename.value = selsitename  

     //FDR document.editor.notes.value = SITENOTES.recordset.fields("notes")
      obj1.putContent("<body>" + SITENOTES.recordset.fields("notes") + "</body>")

    //    xxxx = window.setInterval("doreadyforpreview()",500)


    function doreadyforpreview()
        if ((document.editor.notes.readyState == "complete"))
           if (!(ismain))

    function cmdNew_click()

        sitenewyes = true

    //FDR    document.editor.notes.value = ""
        document.all.sitename.value = ""
        document.all.sitename.disabled = false

    //FDR    dopreview()

    function cmdOK_onclick()
        if (obj1.displayMode == "HTML") {
            window.document.all.displayModeButton.innerText='View HTML Source';
        if (sitenewyes)
           SITENOTES.SQL = "select * from sitepages2 where 1 = 2"
    //FDR    thepage = document.editor.notes.value
        thepage = obj1.getContent();
        if (thepage.indexOf("<BODY") != -1){
            thepage = thepage.substring(thepage.indexOf(">",thepage.indexOf("<BODY"))+1,thepage.lastIndexOf("</BODY>"));

     if (thepage.length > 0 )
      SITENOTES.recordset.fields("notes") = thepage
      SITENOTES.recordset.fields("notes") = " "

        xes = dotrim(document.all.sitename.value)

        if ( /) >= 0)
            alert("You cannot use spaces in the name")

        if ('|"/) >= 0)
            alert("You cannot use speechmarks in the name")
        if (xes.length == 0)
           alert("You cannot enter a blank name")

        if (sitenewyes)
           objTemp = document.createElement("OPTION");
           objTemp.value = xes
        objTemp.text =  xes
           objTemp = null;
           sellist.selectedIndex = sellist.length - 1
           sellist(sellist.selectedIndex).value = xes
        sellist(sellist.selectedIndex).text =  xes

        SITENOTES.recordset.fields("description") = xes

    function dopreview()
        HTMLstring = document.all.notes.value"hidden" = "visible"

    function doviewhtml()
    { = "hidden" = "visible"

    function myshoweditor()

        if ( "" == "orderformtop" ||  "" == "orderformbottom" ||  "" == "OrderFormMiddle" ||"" == "confirmtop" ||"" == "confirmbottom")
            mystrDummy ="", "htmleditor",menubar="no", fullscreen = "yes")

            mystrDummy ="", "htmleditor",menubar="no", fullscreen = "yes")

    function loadsitepages()
        // add permanent pages to SELECT
        for (i=0 ; i <= mpermlist.length - 1; i++)
            objTemp = document.createElement("OPTION");
            objTemp.value = mpermlist[i][0]
      objTemp.text =  mpermlist[i][0]
            objTemp = null;

        SITELIST.SQL = "select description from sitepages2 order by description"
        // add all other pages to SELECT
        while (!(SITELIST.recordset.eof))
            sitedesc = dotrim(SITELIST.recordset.fields("description"))
            skipflag = false
            //test to see whether sitepage is one of permanent sitepages.  If so then ignore.
            for (i=0 ; i <= mpermlist.length - 1 ; i++)
                if (sitedesc == mpermlist[i][0])
                   mpermlist[i][1] = 1;
                   skipflag =true

            if (!(skipflag))


               objTemp = document.createElement("OPTION");
               objTemp.value = sitedesc
         objTemp.text =  sitedesc
               objTemp = null;

        // if for some reason the permanent page does not exist then create it
        for (i=0 ; i<= mpermlist.length - 1; i++)
            if (mpermlist[i][1] == 0)
                SITELIST.recordset.fields("description") = mpermlist[i][0]


    function newdisplay()
        x = sellist.selectedIndex
        if (x <= mpermlist.length - 1)
  = "hidden"
  = "visible"

        linkstring = "To create a link to this site page insert the following HTML tag into your site (for example the sidebar or the header):<BR><BR>"
             linkstring = linkstring + "<b>&lt;A HREF='main.asp?sitepages=" + sellist(sellist.selectedIndex).value + "'&gt;" +  sellist(sellist.selectedIndex).value + "&lt;/a&gt;</b>"

        if (sellist.selectedIndex < mpermlist.length)
           linkstring = linkstring + "<BR><BR>This is a reserved page and cannot be deleted, or the name changed.  However you can still edit the page contents."

        if (sellist(sellist.selectedIndex).value == "HomePage")
           linkstring = linkstring + "<BR><BR>It is automatically loaded as the home page on first entering the site."
           linkstring = linkstring + "<BR><BR>Note you can also customise home pages for first-time visitors, returning visitors and known customers - see <b>Customers - Custom Home Pages</b>"
        } = "block"
        document.all.mainbotlink.innerHTML = linkstring


    function cmdDelete_click()
        mX = sellist.selectedIndex
        if ( mX == -1)
           alert("Select a site page first")

        if ( window.confirm("Are you sure you wish to delete this site page?" ))
           SITELIST.SQL = "delete from sitepages2 where description = '" + sellist(mX).text + "'"

    ismain = true

    function toggle(x)
        if (x == "shownotes")
           z1 = "visible"
           z2 = "hidden"
           ismain = false
           z1 = "hidden"
           z2 = "visible"
           ismain = true
     = z1
    // = z1
    // = z1 = z2


    <SCRIPT language=vbscript>
    function DoTrim(x)
        if isnull(x) then
           x = " "
        end if

     DoTrim = trim(x)
    end function


    LVL 7

    Expert Comment

    I wonder if they are proxying/caching too much.  Sat providers use caches to limit their upstream load.

    Typically each page has a setting indicating how long it can be cached for.  Oddly the page source you show doesn't have it...  if a page can't be cached, you are supposed to indicate that via:

    <META HTTP-EQUIV=Pragma CONTENT=no-cache>
    <META HTTP-EQUIV=Cache-Control CONTENT=no-cache>

    (One of those - I misremember which - is an older form)  There is also an expires header which can be used...

    Without instructions to the contrary, the sat provider's cache/proxy is within the RFC to be serving up older pages.  That could be what's breaking the per-session cookies etc.

    If you can, I would add the no-cache tags and see if that helps.


    LVL 7

    Expert Comment

    Hi, a few more questions:
    1. you say
    "The setup is basically just using my normal dialup connection, they gave me proxy servers which I have entered into internet options - connections.."
    But you do have a satellite dish at your home, correct?
    2. This ecommerce site, is it hosted at your home?
    In other words, if you turn off the computers at your home, will your customers still be able to access the site?

    3. How is the satellite hooked up, is this diagram correct in showing that the satellite and the phone connection go through the same box, a box supplied by your ISP?

    ISP box-------phone line
    your computers

    Author Comment

    Hi thanks for the continued help,

    I dont have access to the code on the website. Could I disable cache in my browser ? Do you think that might help? The upstream is using a standard dialup its not two way satellite.

    1. Its a one way setup using my wall mounted TV satellite dish . The cable comes straight out the LNB on the front of my satellite dish and into a PCI card that came from the satellite provider. The following link might be helpful as  they have a diagram. and a brief overall description.

    2.The ecommerce site is not hosted at my home, I just logon to their website where I can then edit html pages and setup etc.

    3. The satellite dish plugs into the PCI card on my computer (its a TechniSat Sky Star 2 TV card) and I had to run a couple of bits of software. 1 of them picks up the satellite signal and the other is a kind of proxy program that asks you what you ar eusing for an uplink etc and check on browser versions etc. a link to the pictoral step by step installtion giode is here: I then simply enter the proxy addresses into the relevant palces dial out and I have saterllite downstream.



    LVL 7

    Accepted Solution

    All of which is normal for that setup.

    I think you need to contact the site's owner and ask them to include the caching directives.  You really can't tell when a page is being served via cache (that's the whole point, obviously), so I don't know of anything you can do on your end.


    Author Comment

    Thanks guys fro all the help, I cant seem to get this one sorted. It seems that one-way satellite is quite problematic !

    Thanks again

    LVL 7

    Expert Comment

    One more question (well, maybe two more):

    1. Is there a dialup-only mode that you can try?  In other words, a way to NOT unse the satellite?
    If so, do you get the same error when you use that mode?

    2. If you go somewhere else (for example, a friend's house, or an internet cafe - someplace where you use a normal two way connection instead of your split connection)
    does the same error happen?

    If the same error happens when you use a normal connection (friend's or cafe) then the e-commerce site has a problem.  Even if it worked in the past, they make changes on their end and don't tell everyone.

    Author Comment

    Hi Bill,

    I reguarly switch to dialup mode (with onspeed) and it works fine .

    some sites dont seem to like the satellite setup ... secure sites can be a pig , although this one is not secure.

    LVL 7

    Expert Comment

    OK then, that sounds like your ISP has something a little bit wrong.
    Have you let your ISP know which web pages have the problem?
    Ask them to try the pages themselves.
    LVL 7

    Expert Comment

    Split routing has a smelly history.  As we've talked about, they can do it in a box so it's invisible to the end user or they can do it with routing tables which is much more fragile.

    Since we've eliminated a lot of the obvious problems, (and I'm still guessing), this site is trying to be clever, doing things like checking IP addresses for country of origin stuff, etc.  Certainly the logon page which I get redirected to has comments about ip sniffing and has applets and browser sniffing coding.

    Something is getting confused by your legal but unusual connection.

    I think you simply need to push back on the site provider.  "Hey, your site does not work for my connection..."

    If they won't investigate/fix then vote w/ your Bucks/Bob/Euros/Rubles/Marks/Lira/Quid and walk away - there is ALWAYS another vendor willing to sell to you.


    Author Comment

    I have checked with my service provider prior to opening the qeustion here. I have also checked with dozens of other Satellite provders trying to get to the cause of this..

    One final question. you mentioned something about a splitting box? Would I be able to buy on of these things and imporve my own connection or ist ISP specific?


    LVL 7

    Expert Comment

    Alex, what's the URL for your ISPs web site?  A couple of google searches did not find any satellite ISP named Centre Point,
    even though Burton seems to have found it.  Maybe both of you are in the UK??

    As for a splitting box, basically the PC that you are connecting the satellite to is playing that role.

    Oh, that brings up a question or two:

    1. Is the dial-up connection connected directly to the same PC that the satellite is directly connected to?

    2. What is the speed of the dialup connection when you are using it as the uplink?  (Maybe there is a timeout happening?)

    I don't know of any "splitter" box that you could buy for this.  I would expect the ISP to supply that, and in your case they get off cheaply by installing software in your PC to make it do that function.

    LVL 7

    Expert Comment

    Deep in the heart of Texas (sigh)...

    And if it's 'software', then they're using split routing.  That is the routing table on your computer has a prefered route (the landline return).  On the ISP's side the prefered route is set to the Sat link.  So the round-trip travels different paths.

    Any kind of splitting box is the hardware the ISP gives you - it's pretty specialized and I doubt you would be able to buy it anywhere except from the ISP, where it would come preloaded with their configuration.

    LVL 7

    Expert Comment

    Alex, are you by any chance using a VPN to communicate to the web site that you are editing?
    At least one satellite ISP I saw is explicit that VPN won't work for their setup.

    Author Comment

    The URL for my ISP is

    1. The dial up connection is directly connected to the PC I am using the site with.
    2. I am getting abt 40 - 45kbps
    3. Not using VPN

    Thanks guys for all your efforts... I will forward the information onto my eccomerce software provider, although I doubt they will be too keen to investigate as they are super busy and I am likely the only satellite customer they have. Anyhow it works okay with my dialup and ONSPEED. I have also applied once again for dsl.. there is a tiny chance I might get it as I am only 6km away (which shouldnt be too much problems nowadays)

    Thanks again


    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Join & Write a Comment

    Suggested Solutions

    This solves the problem of diagnosing why an internet connection is no longer working. It also helps identify the likely cause of the lost connection if the procedure fails to re-establish your internet connection. It helps to pinpoint the likely co…
    Cable Modem Provisioning from DPoE compliant server  This Article is to support CMTS administrators to provide an overview of DOCSIS compliance configuration file, and to provision a cable modem located at customer place from a Back office serve…
    Hi everyone! This is Experts Exchange customer support.  This quick video will show you how to change your primary email address.  If you have any questions, then please Write a Comment below!
    Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

    728 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    19 Experts available now in Live!

    Get 1:1 Help Now