1<!-- 2 3// ----------------------------------------------------------------------------- 4// Globals 5// Major version of Flash required 6var requiredMajorVersion = 7; 7// Minor version of Flash required 8var requiredMinorVersion = 0; 9// Revision of Flash required 10var requiredRevision = 0; 11// the version of javascript supported 12var jsVersion = 1.0; 13// ----------------------------------------------------------------------------- 14 15var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false; 16var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false; 17var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false; 18jsVersion = 1.1; 19// JavaScript helper required to detect Flash Player PlugIn version information 20function JSGetSwfVer(i){ 21 // NS/Opera version >= 3 check for Flash plugin in plugin array 22 if (navigator.plugins != null && navigator.plugins.length > 0) { 23 if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) { 24 var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : ""; 25 var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description; 26 descArray = flashDescription.split(" "); 27 tempArrayMajor = descArray[2].split("."); 28 versionMajor = tempArrayMajor[0]; 29 versionMinor = tempArrayMajor[1]; 30 if ( descArray[3] != "" ) { 31 tempArrayMinor = descArray[3].split("r"); 32 } else { 33 tempArrayMinor = descArray[4].split("r"); 34 } 35 versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0; 36 flashVer = versionMajor + "." + versionMinor + "." + versionRevision; 37 } else { 38 flashVer = -1; 39 } 40 } 41 // MSN/WebTV 2.6 supports Flash 4 42 else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4; 43 // WebTV 2.5 supports Flash 3 44 else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3; 45 // older WebTV supports Flash 2 46 else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2; 47 // Can't detect in all other cases 48 else { 49 50 flashVer = -1; 51 } 52 return flashVer; 53} 54// If called with no parameters this function returns a floating point value 55// which should be the version of the Flash Player or 0.0 56// ex: Flash Player 7r14 returns 7.14 57// If called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available 58function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) 59{ 60 reqVer = parseFloat(reqMajorVer + "." + reqRevision); 61 // loop backwards through the versions until we find the newest version 62 for (i=25;i>0;i--) { 63 if (isIE && isWin && !isOpera) { 64 versionStr = VBGetSwfVer(i); 65 } else { 66 versionStr = JSGetSwfVer(i); 67 } 68 if (versionStr == -1 ) { 69 return false; 70 } else if (versionStr != 0) { 71 if(isIE && isWin && !isOpera) { 72 tempArray = versionStr.split(" "); 73 tempString = tempArray[1]; 74 versionArray = tempString .split(","); 75 } else { 76 versionArray = versionStr.split("."); 77 } 78 versionMajor = versionArray[0]; 79 versionMinor = versionArray[1]; 80 versionRevision = versionArray[2]; 81 82 versionString = versionMajor + "." + versionRevision; // 7.0r24 == 7.24 83 versionNum = parseFloat(versionString); 84 // is the major.revision >= requested major.revision AND the minor version >= requested minor 85 if ( (versionMajor > reqMajorVer) && (versionNum >= reqVer) ) { 86 return true; 87 } else { 88 return ((versionNum >= reqVer && versionMinor >= reqMinorVer) ? true : false ); 89 } 90 } 91 } 92 return (reqVer ? false : 0.0); 93} 94 95if (document.images) 96{ 97 HomeImageOff=new Image(); 98 HomeImageOff.src="http://www.solitairecity.com/Graphics/iPhone/Cards/HomeText.gif"; 99 HomeImageOn=new Image(); 100 HomeImageOn.src="http://www.solitairecity.com/Graphics/iPhone/Cards/HomeTextLit.gif"; 101 102 BuyNowImageOff=new Image(); 103 BuyNowImageOff.src="http://www.solitairecity.com/Graphics/iPhone/Cards/BuyNowText.gif"; 104 BuyNowImageOn=new Image(); 105 BuyNowImageOn.src="http://www.solitairecity.com/Graphics/iPhone/Cards/BuyNowTextLit.gif";
106 107 WhatsNewImageOff=new Image(); 108 WhatsNewImageOff.src="http://www.solitairecity.com/Graphics/iPhone/Cards/WhatsNewText.gif"; 109 WhatsNewImageOn=new Image(); 110 WhatsNewImageOn.src="http://www.solitairecity.com/Graphics/iPhone/Cards/WhatsNewTextLit.gif"; 111 112 SupportImageOff=new Image(); 113 SupportImageOff.src="http://www.solitairecity.com/Graphics/iPhone/Cards/SupportText.gif"; 114 SupportImageOn=new Image(); 115 SupportImageOn.src="http://www.solitairecity.com/Graphics/iPhone/Cards/SupportTextLit.gif"; 116 117 HiScoresImageOff=new Image(); 118 HiScoresImageOff.src="http://www.solitairecity.com/Graphics/iPhone/Cards/HiScoresText.gif"; 119 HiScoresImageOn=new Image(); 120 HiScoresImageOn.src="http://www.solitairecity.com/Graphics/iPhone/Cards/HiScoresTextLit.gif"; 121 122 VersionsImageOff=new Image(); 123 VersionsImageOff.src="http://www.solitairecity.com/Graphics/iPhone/Cards/VersionsText.gif"; 124 VersionsImageOn=new Image(); 125 VersionsImageOn.src="http://www.solitairecity.com/Graphics/iPhone/Cards/VersionsTextLit.gif"; 126 127 BuyNowFeltImageOff=new Image() 128 BuyNowFeltImageOff.src="http://www.solitairecity.com/Graphics/iPhone/BuyNowButton.gif" 129 BuyNowFeltImageOn=new Image() 130 BuyNowFeltImageOn.src="http://www.solitairecity.com/Graphics/iPhone/BuyNowButtonLit.gif" 131 132 WhatsNewFeltImageOff=new Image() 133 WhatsNewFeltImageOff.src="http://www.solitairecity.com/Graphics/iPhone/WhatsNewButton.gif" 134 WhatsNewFeltImageOn=new Image() 135 WhatsNewFeltImageOn.src="http://www.solitairecity.com/Graphics/iPhone/WhatsNewButtonLit.gif" 136 137 HomeFeltImageOff=new Image() 138 HomeFeltImageOff.src="http://www.solitairecity.com/Graphics/iPhone/HomeButton.gif" 139 HomeFeltImageOn=new Image() 140 HomeFeltImageOn.src="http://www.solitairecity.com/Graphics/iPhone/HomeButtonLit.gif" 141 142 HiScoresFeltImageOff=new Image() 143 HiScoresFeltImageOff.src="http://www.solitairecity.com/Graphics/iPhone/HiScoresButton.gif" 144 HiScoresFeltImageOn=new Image() 145 HiScoresFeltImageOn.src="http://www.solitairecity.com/Graphics/iPhone/HiScoresButtonLit.gif" 146 147 SupportFeltImageOff=new Image() 148 SupportFeltImageOff.src="http://www.solitairecity.com/Graphics/iPhone/SupportButton.gif" 149 SupportFeltImageOn=new Image() 150 SupportFeltImageOn.src="http://www.solitairecity.com/Graphics/iPhone/SupportButtonLit.gif" 151 152 VersionsFeltImageOff=new Image() 153 VersionsFeltImageOff.src="http://www.solitairecity.com/Graphics/iPhone/VersionsButton.gif" 154 VersionsFeltImageOn=new Image() 155 VersionsFeltImageOn.src="http://www.solitairecity.com/Graphics/iPhone/VersionsButtonLit.gif" 156} 157 158function ImageOn(ImageName) 159{ 160 if (document.images) 161 { 162 document[ImageName].src=eval(ImageName+"On.src"); 163 } 164} 165 166function ImageOff(ImageName) 167{ 168 if (document.images) 169 { 170 document[ImageName].src=eval(ImageName+"Off.src"); 171 } 172} 173 174function DisplayFlash() 175{ 176 var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision); 177 if (hasRightVersion) 178 { // if we've detected an acceptable version 179 var oeTags = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' 180 + 'width="800" height="600"' 181 + 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab">' 182 + '<param name="movie" value="Solitaire City Loader.swf" /><param name="play" value="false" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#006600" />' 183 + '<embed src="Solitaire City Loader.swf" play="false" loop="false" menu="false" quality="best" bgcolor="#006600" ' 184 + 'width="800" height="600" name="Solitaire City Loader" align="middle"' 185 + 'play="true"' 186 + 'loop="false"' 187 + 'quality="high"' 188 + 'allowScriptAccess="sameDomain"' 189 + 'type="application/x-shockwave-flash"' 190 + 'pluginspage="http://www.macromedia.com/go/getflashplayer">' 191 + '<\/embed>' 192 + '<\/object>'; 193 document.write(oeTags); // embed the flash movie 194 } else { // flash is too old or we can't detect the plugin 195 var alternateContent = 'To play a demo of this game in your web browser<br>please install the Macromedia Flash Player.<br><br>' 196 + '<a href=http://www.macromedia.com/go/getflash/>Get Flash</a>'; 197 document.write(alternateContent); // insert non-flash content 198 } 199} 200
201function DisplayCopyright() 202{ 203 document.write("<em>URL: <a href=\"http://www.SolitaireCity.com/iPhone.shtml\">http://www.SolitaireCity.com/iPhone.shtml</A> Contact: <a href=\"Support.shtml#Suggestion\">pete<img src=\"http://www.solitairecity.com/Graphics/iPhone/AsymbolT.gif\" width=\"13\" height=\"12\" border=\"0\">solitairecity.com</a></em><br>"); 204 document.write("Web Design, Layout, Art and Text Copyright © 2008-2019, Digital Smoke LLC"); 205} 206 207function IsValidEmailAddress(str) 208{ 209 // are regular expressions supported? 210 var supported = 0; 211 if (window.RegExp) 212 { 213 var tempStr = "a"; 214 var tempReg = new RegExp(tempStr); 215 if (tempReg.test(tempStr)) 216 supported = 1; 217 } 218 if (!supported) 219 return (str.indexOf(".") > 2) && (str.indexOf("@") > 0); 220 var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)"); 221 var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"); 222 return (!r1.test(str) && r2.test(str)); 223} 224 225function ValidateFormEntries() 226{ 227 strEmail=document.getElementById("email").value; 228 if (!IsValidEmailAddress(strEmail)) 229 { 230 alert('Please enter a valid E-mail address so we can reply to you.'); 231 event.returnValue=false; 232 return; 233 } 234 235 if (!grecaptcha.getResponse()) 236 { 237 alert("Please click in the reCAPTCHA box to show that you're not a robot"); 238 event.returnValue=false; 239 return; 240 } 241} 242 243// --> 244
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.