/*
 * Ext JS Library 2.0 Alpha 1
 * Copyright(c) 2006-2007, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://extjs.com/license
 */
Ext.namespace ('subscription_form');

subscription_form.app = function() {
		var cdata = new Ext.data.SimpleStore({
		    fields: ['abbr', 'country'],
		    data : Ext.countrydata.countries
		});	
		Ext.QuickTips.init();
		Ext.form.Field.prototype.msgTarget = 'side';
    var panel = new Ext.FormPanel({
        frame: true,       
        method:'Post',
        labelAlign: 'right',
        labelWidth: 85,
        width:340,
        waitMsgTarget: true,
        url: 'http://www.graphicmail.com/rwcode/subscribe.asp?SiteID=18309', 
        standardSubmit: true,
        defaultType: 'hidden',
    							 
        items: [
            new Ext.form.FieldSet({
              title: 'Contact Information',
              autoHeight: true,
              defaultType: 'textfield',
              items: [
              				{
                      	fieldLabel: 'First Name',
                      	name: 'col1',
                      	allowBlank: false,
                      	anchor:'90%'
                  		}, {
                      	fieldLabel: 'Last Name',
                      	name: 'col2',
                      	allowBlank: false,
                      	anchor:'90%'
                  		}, {
                      	fieldLabel: 'Email',
                      	name: 'email',
                      	allowBlank: false,
                      	vtype:'email',
                      	anchor:'90%'
              				}, {
												xtype: 'hidden',
												name: 'SID',
												value: 0
											}, {
												xtype: 'hidden',
												name: 'ReturnURL',
												value: 'http://www.travel-newswire.com/'+currentPage
											}, {
												xtype: 'hidden',
												name: 'Resize',
												value: 1
											}, mode = {
												xtype: 'hidden',
												name: 'Mode',
												value: ''
											}
            				]
    				}),
    				
    				{
            xtype:'tabpanel',
            plain:true,
            activeTab: 0,
            height:235,
            defaults:{bodyStyle:'padding:10px'},
            items:[{
              title: 'Address',
    					autoHeight: true,
    					layout:'form',
    					defaultType: 'textfield',
    					items:[ {
    										fieldLabel: 'Country',
    										name: 'col3',
    										anchor:'90%',
    										xtype: 'combo',
    										displayField:'country',
    										store: cdata,
    										typeAhead: true,
    										mode: 'local',
    										triggerAction: 'all',
    										emptyText: 'Select a country...',
    										selectOnFocus: true
    									}, {
    										fieldLabel: 'Title',
    										name: 'col4',
    										anchor:'90%'
    									}, {
    										fieldLabel: 'Publication',
    										name: 'col5',
    										anchor:'90%'
    									}, {
    										xtype:'ux-radiogroup',
												fieldLabel:'Category',
												name:'col8',
												horizontal:true,
												radios:[{
													value:'magazine',
													boxLabel:'Magazine'
												}, {
													value:'guidebook',
													boxLabel:'GuideBook'	
												}]}, {
    										xtype:'ux-radiogroup',
												name:'col8',
												horizontal:true,
												labelSeparator: ' ',
												radios:[
												 {
													clearCls: 'x-form-clear-left',
													value: 'newspaper',
													boxLabel: 'Newspaper'
												},{
													value: 'tv',
													boxLabel: 'Tv'
												}, {
													value: 'radio',
													boxLabel: 'Radio'
												}]},{
    										xtype:'ux-radiogroup',
												name:'col8',
												horizontal:true,
												labelSeparator: ' ',
												radios:[
												 {
													value: 'website',
													boxLabel: 'Website'
												}, {
													value: 'freelance',
													boxLabel: 'Freelancer'
												}]}
    								]
            }, {
              title: "Extended",
              layout:'form',
    					autoHeight: true,
    					defaultType: 'textfield',
    					items:[ 
    									{
    										fieldLabel: 'Phone',
    										name: 'col9',
    										anchor:'90%'    										
    									},{
    										xtype:'ux-radiogroup',
												fieldLabel:'LeadTime',
												name:'col7',
												horizontal:true,
												radios:[{
													value:'short',
													boxLabel:'Short'
												}, {
													value:'long',
													boxLabel:'Long'	
												}]
    									}, {
    										xtype: 'textarea',
    										height: 90,
    										anchor:'90%',
    										fieldLabel: 'Comment',
    										name: 'col6'
    									}
    								]
            }]
        }
    ]});


    var sub = panel.addButton({
        text: 'Subscribe',
        disabled:false,
        handler: function(){ 
       	
  Ext.DomQuery.selectNode('input[name="Mode"]').value = 'update';
  panel.getForm().items.each(function(item) { 
  	if (!(item.el)){
  	} else {
    	if (item.el.getValue() == item.emptyText) { 
      	item.el.dom.value = '';
    	}
    	if (item.el.getValue() == '') {
    		item.el.remove();	
    	} 
    }
    }); 
        	panel.getForm().getEl().dom.action = 'http://www.graphicmail.com/rwcode/subscribe.asp?SiteID=18309';
            panel.getForm().submit({
            	method:'Post',
            	url: 'http://www.graphicmail.com/rwcode/subscribe.asp?SiteID=18309', 
            	waitMsg:'Sending Data...',
            	clientValidation: true,
            	 success:function(form, action){ 
                 window.hide();
                 Ext.get('data').insertHtml( 'afterBegin', "Thanks for sub.", false);
                 obj = Ext.util.JSON.decode(action.response.responseText);
                 Ext.get('data').insertHtml('beforeEnd', obj.person.first+' '+obj.person.last, false);
               },
								failure:function(form, action){ 
	                if(action.failureType == 'server'){ 
	                    obj = Ext.util.JSON.decode(action.response.responseText); 
	                    Ext.Msg.alert('Login Failed!', obj.errors.reason); 
	                }else{ 
	                    Ext.Msg.alert('Warning!', 'Authentication server is unreachable : ' + action.response.responseText + "abcd"); 
	                } 
	                //panel.getForm().reset(); 
	            	} 

            	});
        }
    });
    var unsub = panel.addButton({
    	text: 'Unsubscribe',
    	disabled: false,
    	handler: function(){
    		// document.inputForm.Mode.value='unsubscribe'
    		Ext.DomQuery.selectNode('input[name="Mode"]').value = 'unsubscribe';
    		panel.getForm().getEl().dom.action = 'http://www.graphicmail.com/rwcode/subscribe.asp?SiteID=18309';
    		panel.getForm().submit({
    			method: 'Post',
    			url: 'http://www.graphicmail.com/rwcode/subscribe.asp?SiteID=18309', 
    			waitMsg: 'Updating Data...',
    			clientValidation: true,
      	 success:function(){ 
           panel.hide();
           Ext.get('data').insertHtml( 'afterBegin', "Sorry to see you go.", false);
         },
					failure:function(form, action){ 
            if(action.failureType == 'server'){ 
                obj = Ext.util.JSON.decode(action.response.responseText); 
                Ext.Msg.alert('Login Failed!', obj.errors.reason); 
            }else{ 
                Ext.Msg.alert('Warning!', 'Authentication server is unreachable : ' + action.response.responseText + "abcd"); 
            } 
            panel.getForm().reset(); 
        	}     			
    		});
    	}
    });
    var window = new Ext.Window({
        title:'Subscription',
        width: 350,
        height:400,
        minWidth: 300,
        minHeight: 200,
        layout: 'fit',
        plain:true,
        bodyStyle:'padding:5px;',
        buttonAlign:'center',
        items: panel,
        closeAction: 'hide'

        
    });
Ext.form.Action.Submit.prototype.run = Ext.form.Action.Submit.prototype.run.createInterceptor(function() {
  panel.form.items.each(function(item) { alert('running');
    if (item.el.getValue() == item.emptyText) {
      item.el.dom.value = '';
    }
    });
 });
Ext.form.Action.Submit.prototype.run = Ext.form.Action.Submit.prototype.run.createSequence(function() {
  panel.form.items.each(function(item) { alert('running');
    if (item.el.getValue() == '' && item.emptyText) {
      item.el.dom.value = item.emptyText;
    }
    });
 });	    
    return {
    	init: function(){
//    		window.show();
//				Ext.DomHelper.insertBefore(  
//					Ext.DomQuery.selectNode('input[name="website"]'),   
//					 'http://',   
//					 false  
//				);  
    		//panel.hide();
  		},
  		hide: function(){
  			window.hide();
  		},
  		show: function(){
  			window.show();
  		}
	  };
}();

/*
<form method="post" name="inputForm" action="http://www.graphicmail.com/rwcode/subscribe.asp?SiteID=18309">
<input type="hidden" name="SID" value="0">
<input type="hidden" name="ReturnURL" value="">
<input type="hidden" name="Resize" value="1">
<input type="hidden" name="Mode" value="">
<table cellspacing="0" cellpadding="0" border="0" align="center">

	<tr><td><div><font face=verdana size=1><center><img src=http://www.graphicmail.com/members/18309/ftp/pictures/subscription_logoarea.gif><br><b>SUBSCRIPTION MANAGEMENT</b><br><br>Use this page to subscribe or unsubscribe to the available newsletter or newsletters.<br><br></div>
	<table cellpadding=0 cellspacing=0 border=0>
	<tr><td colspan="2" align="left"><table border=0 cellpadding=0 cellspacing=0>
	
			
			<tr>
			    <td width="10%" align="right" nowrap><font face=verdana size=1><b>Email   </td>
			    <td><input face="text" name="Email" size="40" value=""></td>
			</tr>
			
			<tr><td align=right nowrap><b><font face=verdana size=1>First Name    </td><td><font face=verdana size=1><input type="text" name="Col1" size="3" value=""></td></tr>
			<tr><td align=right nowrap><b><font face=verdana size=1>Last Name    </td><td><font face=verdana size=1><input type="text" name="Col2" size="3" value=""></td></tr>
			<tr><td align=right nowrap><b><font face=verdana size=1>Country    </td><td><font face=verdana size=1><select name="Col3">
							     <option value="">Select one</option><option value="Afghanistan" >Afghanistan</option><option value="Albania" >Albania</option><option value="Algeria" >Algeria</option><option value="American Samoa" >American Samoa</option><option value="Andorra" >Andorra</option><option value="Angola" >Angola</option><option value="Anguilla" >Anguilla</option><option value="Antarctica" >Antarctica</option><option value="Antigua and Barbuda" >Antigua and Barbuda</option><option value="Argentina" >Argentina</option><option value="Armenia" >Armenia</option><option value="Aruba" >Aruba</option><option value="Australia" >Australia</option><option value="Austria" >Austria</option><option value="Azerbaijan" >Azerbaijan</option><option value="Bahamas" >Bahamas</option><option value="Bahrain" >Bahrain</option><option value="Bangladesh" >Bangladesh</option><option value="Barbados" >Barbados</option><option value="Belarus" >Belarus</option><option value="Belgium" >Belgium</option><option value="Belize" >Belize</option><option value="Benin" >Benin</option><option value="Bermuda" >Bermuda</option><option value="Bhutan" >Bhutan</option><option value="Bolivia" >Bolivia</option><option value="Bosnia and Herzegowina" >Bosnia and Herzegowina</option><option value="Botswana" >Botswana</option><option value="Bouvet Island" >Bouvet Island</option><option value="Brazil" >Brazil</option><option value="British Indian Ocean Territory" >British Indian Ocean Territory</option><option value="Brunei Darussalam" >Brunei Darussalam</option><option value="Bulgaria" >Bulgaria</option><option value="Burkina Faso" >Burkina Faso</option><option value="Burundi" >Burundi</option><option value="Cambodia" >Cambodia</option><option value="Cameroon" >Cameroon</option><option value="Canada" >Canada</option><option value="Cape Verde" >Cape Verde</option><option value="Cayman Islands" >Cayman Islands</option><option value="Central African Republic" >Central African Republic</option><option value="Chad" >Chad</option><option value="Chile" >Chile</option><option value="China" >China</option><option value="Christmas Island" >Christmas Island</option><option value="Cocos (Keeling) Islands" >Cocos (Keeling) Islands</option><option value="Colombia" >Colombia</option><option value="Comoros" >Comoros</option><option value="Congo" >Congo</option><option value="Cook Islands" >Cook Islands</option><option value="Costa Rica" >Costa Rica</option><option value="Cote D'Ivoire" >Cote D'Ivoire</option><option value="Croatia (local name: Hrvatska)" >Croatia (local name: Hrvatska)</option><option value="Cuba" >Cuba</option><option value="Cyprus" >Cyprus</option><option value="Czech Republic" >Czech Republic</option><option value="Denmark" >Denmark</option><option value="Djibouti" >Djibouti</option><option value="Dominica" >Dominica</option><option value="Dominican Republic" >Dominican Republic</option><option value="East Timor" >East Timor</option><option value="Ecuador" >Ecuador</option><option value="Egypt" >Egypt</option><option value="El Salvador" >El Salvador</option><option value="Equatorial Guinea" >Equatorial Guinea</option><option value="Eritrea" >Eritrea</option><option value="Estonia" >Estonia</option><option value="Ethiopia" >Ethiopia</option><option value="Falkland Islands (Malvinas)" >Falkland Islands (Malvinas)</option><option value="Faroe Islands" >Faroe Islands</option><option value="Fiji" >Fiji</option><option value="Finland" >Finland</option><option value="France" >France</option><option value="France, Metropolitan" >France, Metropolitan</option><option value="French Guiana" >French Guiana</option><option value="French Polynesia" >French Polynesia</option><option value="French Southern Territories" >French Southern Territories</option><option value="Gabon" >Gabon</option><option value="Gambia" >Gambia</option><option value="Georgia" >Georgia</option><option value="Germany" >Germany</option><option value="Ghana" >Ghana</option><option value="Gibraltar" >Gibraltar</option><option value="Greece" >Greece</option><option value="Greenland" >Greenland</option><option value="Grenada" >Grenada</option><option value="Guadeloupe" >Guadeloupe</option><option value="Guam" >Guam</option><option value="Guatemala" >Guatemala</option><option value="Guinea" >Guinea</option><option value="Guinea-Bissau" >Guinea-Bissau</option><option value="Guyana" >Guyana</option><option value="Haiti" >Haiti</option><option value="Heard and Mc Donald Islands" >Heard and Mc Donald Islands</option><option value="Honduras" >Honduras</option><option value="Hong Kong" >Hong Kong</option><option value="Hungary" >Hungary</option><option value="Iceland" >Iceland</option><option value="India" >India</option><option value="Indonesia" >Indonesia</option><option value="Iran (Islamic Republic of)" >Iran (Islamic Republic of)</option><option value="Iraq" >Iraq</option><option value="Ireland" >Ireland</option><option value="Israel" >Israel</option><option value="Italy" >Italy</option><option value="Jamaica" >Jamaica</option><option value="Japan" >Japan</option><option value="Jordan" >Jordan</option><option value="Kazakhstan" >Kazakhstan</option><option value="Kenya" >Kenya</option><option value="Kiribati" >Kiribati</option><option value="Korea, Democratic People's Republic" >Korea, Democratic People's Republic</option><option value="Korea, Republic of" >Korea, Republic of</option><option value="Kuwait" >Kuwait</option><option value="Kyrgyzstan" >Kyrgyzstan</option><option value="Lao People's Democratic Republic" >Lao People's Democratic Republic</option><option value="Latvia" >Latvia</option><option value="Lebanon" >Lebanon</option><option value="Lesotho" >Lesotho</option><option value="Liberia" >Liberia</option><option value="Libyan Arab Jamahiriya" >Libyan Arab Jamahiriya</option><option value="Liechtenstein" >Liechtenstein</option><option value="Lithuania" >Lithuania</option><option value="Luxembourg" >Luxembourg</option><option value="Macau" >Macau</option><option value="Macedonia, the former Yugoslav Republic of" >Macedonia, the former Yugoslav Republic of</option><option value="Madagascar" >Madagascar</option><option value="Malawi" >Malawi</option><option value="Malaysia" >Malaysia</option><option value="Maldives" >Maldives</option><option value="Mali" >Mali</option><option value="Malta" >Malta</option><option value="Marshall Islands" >Marshall Islands</option><option value="Martinique" >Martinique</option><option value="Mauritania" >Mauritania</option><option value="Mauritius" >Mauritius</option><option value="Mayotte" >Mayotte</option><option value="Mexico" >Mexico</option><option value="Micronesia, Federated States of" >Micronesia, Federated States of</option><option value="Moldova, Republic of" >Moldova, Republic of</option><option value="Monaco" >Monaco</option><option value="Mongolia" >Mongolia</option><option value="Montserrat" >Montserrat</option><option value="Morocco" >Morocco</option><option value="Mozambique" >Mozambique</option><option value="Myanmar" >Myanmar</option><option value="Namibia" >Namibia</option><option value="Nauru" >Nauru</option><option value="Nepal" >Nepal</option><option value="Netherlands" >Netherlands</option><option value="Netherlands Antilles" >Netherlands Antilles</option><option value="New Caledonia" >New Caledonia</option><option value="New Zealand" >New Zealand</option><option value="Nicaragua" >Nicaragua</option><option value="Niger" >Niger</option><option value="Nigeria" >Nigeria</option><option value="Niue" >Niue</option><option value="Norfolk Island" >Norfolk Island</option><option value="Northern Mariana Islands" >Northern Mariana Islands</option><option value="Norway" >Norway</option><option value="Oman" >Oman</option><option value="Pakistan" >Pakistan</option><option value="Palau" >Palau</option><option value="Panama" >Panama</option><option value="Papua New Guinea" >Papua New Guinea</option><option value="Paraguay" >Paraguay</option><option value="Peru" >Peru</option><option value="Philippines" >Philippines</option><option value="Pitcairn" >Pitcairn</option><option value="Poland" >Poland</option><option value="Portugal" >Portugal</option><option value="Puerto Rico" >Puerto Rico</option><option value="Qatar" >Qatar</option><option value="Reunion" >Reunion</option><option value="Romania" >Romania</option><option value="Russian Federation" >Russian Federation</option><option value="Rwanda" >Rwanda</option><option value="Saint Kitts and Nevis" >Saint Kitts and Nevis</option><option value="Saint Lucia" >Saint Lucia</option><option value="Saint Vincent and the Grenadines" >Saint Vincent and the Grenadines</option><option value="Samoa" >Samoa</option><option value="San Marino" >San Marino</option><option value="Sao Tome and Principe" >Sao Tome and Principe</option><option value="Saudi Arabia" >Saudi Arabia</option><option value="Senegal" >Senegal</option><option value="Seychelles" >Seychelles</option><option value="Sierra Leone" >Sierra Leone</option><option value="Singapore" >Singapore</option><option value="Slovakia (Slovak Republic)" >Slovakia (Slovak Republic)</option><option value="Slovenia" >Slovenia</option><option value="Solomon Islands" >Solomon Islands</option><option value="Somalia" >Somalia</option><option value="South Africa" >South Africa</option><option value="Spain" >Spain</option><option value="Sri Lanka" >Sri Lanka</option><option value="St. Helena" >St. Helena</option><option value="St. Pierre and Miquelon" >St. Pierre and Miquelon</option><option value="Sudan" >Sudan</option><option value="Suriname" >Suriname</option><option value="Svalbard and Jan Mayen Islands" >Svalbard and Jan Mayen Islands</option><option value="Swaziland" >Swaziland</option><option value="Sweden" >Sweden</option><option value="Switzerland" >Switzerland</option><option value="Syrian Arab Republic" >Syrian Arab Republic</option><option value="Taiwan" >Taiwan</option><option value="Tajikistan" >Tajikistan</option><option value="Tanzania, United Republic of" >Tanzania, United Republic of</option><option value="Thailand" >Thailand</option><option value="Togo" >Togo</option><option value="Tokelau" >Tokelau</option><option value="Tonga" >Tonga</option><option value="Trinidad and Tobago" >Trinidad and Tobago</option><option value="Tunisia" >Tunisia</option><option value="Turkey" >Turkey</option><option value="Turkmenistan" >Turkmenistan</option><option value="Turks and Caicos Islands" >Turks and Caicos Islands</option><option value="Tuvalu" >Tuvalu</option><option value="Uganda" >Uganda</option><option value="Ukraine" >Ukraine</option><option value="United Arab Emirates" >United Arab Emirates</option><option value="United Kingdom" >United Kingdom</option><option value="United States" selected>United States</option><option value="United States Minor Outlying Islands" >United States Minor Outlying Islands</option><option value="Uruguay" >Uruguay</option><option value="Uzbekistan" >Uzbekistan</option><option value="Vanuatu" >Vanuatu</option><option value="Vatican City State (Holy See)" >Vatican City State (Holy See)</option><option value="Venezuela" >Venezuela</option><option value="Vietnam" >Vietnam</option><option value="Virgin Islands (British)" >Virgin Islands (British)</option><option value="Virgin Islands (U.S.)" >Virgin Islands (U.S.)</option><option value="Wallis And Futuna Islands" >Wallis And Futuna Islands</option><option value="Western Sahara" >Western Sahara</option><option value="Yemen" >Yemen</option><option value="Yugoslavia" >Yugoslavia</option><option value="Zaire" >Zaire</option><option value="Zambia" >Zambia</option><option value="Zimbabwe" >Zimbabwe</option></select></td></tr>
							     <tr><td align=right nowrap><b><font face=verdana size=1>Title    </td><td><font face=verdana size=1><input type="text" name="Col4" size="3" value=""></td></tr>
							     <tr><td align=right nowrap><b><font face=verdana size=1>Publication    </td><td><font face=verdana size=1><input type="text" name="Col5" size="3" value=""></td></tr>
							     <tr><td align=right nowrap><b><font face=verdana size=1>Comment    </td><td><font face=verdana size=1><input type="text" name="Col6" size="3" value=""></td></tr>
							     <tr><td align=right nowrap><b><font face=verdana size=1>Lead Time    </td><td><font face=verdana size=1><input type="radio" name="Col7" value="Short" >Short<input type="radio" name="Col7" value="Long" >Long</td></tr>
							     <tr><td align=right nowrap><b><font face=verdana size=1>Category    </td><td><font face=verdana size=1><input type="checkbox" name="Col8" value="Guidebook" >Guidebook<input type="checkbox" name="Col8" value="Magazine" >Magazine<input type="checkbox" name="Col8" value="Newspaper Journalist" >Newspaper Journalist<br><input type="checkbox" name="Col8" value="Tv/Radio" >Tv/Radio</td></tr>
							     <tr><td align=right nowrap><b><font face=verdana size=1>Phone    </td><td><font face=verdana size=1><input type="text" name="Col9" size="3" value=""></td></tr>
	
	<tr><td> </td></tr>
	<tr> 
	    <td colspan="2" align="center" nowrap> 
	      
		<a href="javascript: if(testInput()){document.inputForm.Mode.value='update'; document.inputForm.submit();}"><font face=verdana size=1><b>Subscribe</b></a>  
		<a href="javascript: if(testInput()){document.inputForm.Mode.value='unsubscribe'; document.inputForm.submit();}"><font face=verdana size=1><b>Unsubscribe</b></a>
		
	    </td>
	</tr>
	</table></td></tr></table><div><font face=verdana size=1><center><br>Please come back at any time to modify your profile.</div></td></tr>

	
</table>

</form><script language='javascript'> 
function testInput() {
var Email =  new String(document.inputForm.Email.value); 
var Correct = true; 
CharCount=1; 
strLength=Email.length; 
while ((CharCount < strLength) && (Email.charAt(CharCount) != '@')) 
{ 
	CharCount++ 
} 
if ((CharCount>= strLength) || (Email.charAt(CharCount) != '@'))  
{  
	alert ('Email address not valid.') 
	Correct = false; 
} 
else 
{ 
	CharCount += 2; 
} 
while ((CharCount < strLength) && (Email.charAt(CharCount) != '.')) 
{ 
	CharCount++ 
} 
if ((CharCount>= strLength - 1) || (Email.charAt(CharCount) != '.')) 
{ 
	alert ('Email address not valid.') 
	Correct = false; 
} 
return Correct 
} 
 </script> 
*/