<% require("/var/www/webhosts-script/www.tartanowners.org/private/phpheaders/main.phtml"); include("/var/www/webhosts-script/www.tartanowners.org/private/zip2latlon.php"); $kTONESubmitOwner = 1; $kTONESubmitOwnerAdd = 2; $kTONESubmitOwnerPreview = 3; $kTONESubmitOwnerPreviewAdd = 4; $kTONESubmitOwnerPreviewUpdate = 5; $error[code][blank_id] = TONEErrorValue($error[code]); $error[code][blank_type] = TONEErrorValue($error[code]); $error[code][blank_model] = TONEErrorValue($error[code]); $error[code][blank_year] = TONEErrorValue($error[code]); $error[code][bad_year] = TONEErrorValue($error[code]); $error[code][blank_hullnumber] = TONEErrorValue($error[code]); $error[code][blank_boatname] = TONEErrorValue($error[code]); $error[code][blank_homeport] = TONEErrorValue($error[code]); $error[code][blank_ownername] = TONEErrorValue($error[code]); $error[code][blank_phonehome] = TONEErrorValue($error[code]); $error[code][blank_phonework] = TONEErrorValue($error[code]); $error[code][blank_phone] = TONEErrorValue($error[code]); $error[code][blank_email] = TONEErrorValue($error[code]); $error[code][bad_email] = TONEErrorValue($error[code]); $error[code][blank_comments] = TONEErrorValue($error[code]); $error[code][blank_description] = TONEErrorValue($error[code]); $error[code][blank_text] = TONEErrorValue($error[code]); $error[code][blank_photo] = TONEErrorValue($error[code]); $error[code][file_copy] = TONEErrorValue($error[code]); $error[code][file_size_lrg] = TONEErrorValue($error[code]); $error[code][file_size_sml] = TONEErrorValue($error[code]); $error[code][bad_zipcode] = TONEErrorValue($error[code]); $error[code][noll_zipcode] = TONEErrorValue($error[code]); $error[val]=0; $max_file_size = 2*1024*1024; $min_file_size = 1024; # $email_t34_update = 'chashenderson@mindspring.com'; $email_t34_update = 'admin@tartanowners.org'; $show_owner = true; $show_good = false; if(!isset($tone)) { $new_owner = true; } else { $new_owner = false; unset($data); $where[]['owner.hash'] = array( 'op' => '=', 'val' => $tone ); $error_result = TONEOwnerGetResult('', $order, $where); if( !($error_result < 0) ) { if(mysql_num_rows($error_result) == 1) { $old_the_owner = mysql_fetch_object($error_result); $old_own_model = $old_the_owner->model_id; $old_own_image = $old_the_owner->image_id; $old_own_image_preview = $old_the_owner->imagepre_id; $old_own_isupdate = TONETextDisplay($old_the_owner->is_update, false, false); $old_own_type = $old_the_owner->ownertype; $old_own_boatyear = TONETextDisplay($old_the_owner->boatyear, false, false); $old_own_hullnumber = TONETextDisplay($old_the_owner->hullnumber, false, false); $old_own_boatname = TONETextDisplay($old_the_owner->boatname, false, false); $old_own_homeport = TONETextDisplay($old_the_owner->homeport, false, false); $old_own_ownername = TONETextDisplay($old_the_owner->ownername, false, false); $old_own_phone_home = TONETextDisplay($old_the_owner->phone_home, false, false); $old_own_phone_work = TONETextDisplay($old_the_owner->phone_work, false, false); $old_own_email = $old_the_owner->email; $old_own_comments = TONETextDisplay($old_the_owner->comments, false, false); $oid = $old_the_owner->id; $old_own_lat = $old_the_owner->lat; $old_own_lon = $old_the_owner->lon; $old_own_zipcode = TONETextDisplay($old_the_owner->zipcode, false, false); } } } if(!isset($submit)) { $own_model = $old_own_model; $own_image = $old_own_image; $own_image_preview = $old_own_image_preview; $own_isupdate = $old_own_isupdate; $own_type = $old_own_type; $own_boatyear = $old_own_boatyear; $own_hullnumber = $old_own_hullnumber; $own_boatname = $old_own_boatname; $own_homeport = $old_own_homeport; $own_ownername = $old_own_ownername; $own_phone_home = $old_own_phone_home; $own_phone_work = $old_own_phone_work; $own_email = TONETextDisplay($old_own_email, false, false); $own_comments = $old_own_comments; $own_lat = $old_own_lat; $own_lon = $old_own_lon; $own_zipcode = $old_own_zipcode; } else { $submit_type = key($submit); switch($submit_type) { ## case $kTONESubmitOwner: ## Set the display mode $show_owner = true; ## Preformat the data $own_model = TONETextPreformat($own_model); $own_isupdate = TONETextPreformat($own_isupdate); $own_boatyear = TONETextPreformat($own_boatyear); $own_hullnumer = TONETextPreformat($own_hullnumber); $own_boatname = TONETextPreformat($own_boatname); $own_homeport = TONETextPreformat($own_homeport); $own_ownername = TONETextPreformat($own_ownername); $own_phone_home = TONETextPreformat($own_phone_home); $own_phone_work = TONETextPreformat($own_phone_work); $own_email = TONETextPreformat($own_email); $own_comments = TONETextPreformat($own_comments); $own_lat = TONETextPreformat($own_lat); $own_lon = TONETextPreformat($own_lon); $own_zipcode = TONETextPreformat($own_zipcode); ## Validate the inputed data if($own_isupdate!='N' && $own_isupdate!='Y') { $own_isupdate='N'; } if(empty($own_model)) { $error[val] += $error[code][blank_model]; $error[txt][] = "You must select a Tartan Model."; } if(empty($own_boatyear)) { $error[val] += $error[code][blank_year]; $error[txt][] = "You must enter the year of your boat."; } else { if(!preg_match("/^(\d\d\d\d)$/", $own_boatyear)) { $error[val] += $error[code][bad_year]; $error[txt][] = "The Year must be 4 digits (YYYY)."; } } if(empty($own_boatname)) { $error[val] += $error[code][blank_boatname]; $error[txt][] = "You must enter a Boat Name."; } if(empty($own_homeport)) { $error[val] += $error[code][blank_homeport]; $error[txt][] = "You must enter a Home Port."; } # zipcode validate if(!empty($own_zipcode) && $own_zipcode != "saved") { if(!preg_match("/^(\d\d\d\d\d)$/", $own_zipcode)) { $error[val] += $error[code][bad_zipcode]; $error[txt][] = "The Zipcode must be 5 digits (12345)."; } else { list($found,$lat,$lon) = zip2latlon($own_zipcode); if($found){ $own_lat = round($lat, 3); $own_lon = round($lon, 3); } else { $error[val] += $error[code][noll_zipcode]; $error[txt][] = "The Zipcode does not correspond to a known location."; } } } if(empty($own_ownername)) { $error[val] += $error[code][blank_ownername]; $error[txt][] = "You must enter an Owner's Name."; } if(is_array($type)) { foreach($type as $key => $val) { $own_type += $val; } } else { $own_type=0; } if( !empty($_FILES['own_photo']['name']) ) { if($_FILES['own_photo']['size'] > $max_file_size) { $error[val] += $error[code][file_size_lrg]; $error[txt][] = "Images cannot be larger than $max_file_size bytes."; } if($_FILES['own_photo']['size'] < $min_file_size) { $error[val] += $error[code][file_size_sml]; $error[txt][] = "Images cannot be smaller than $min_file_size bytes."; } if( !($error[val] & $error[code][file_size_sml]) && !($error[val] & $error[code][file_size_lrg]) ) { $image_orig = new TONEImage; $image_orig->dir = $_FILES['own_photo']['tmp_name']; if(!empty($debug)) $imig_orig->debug=true; $image_orig->GetInfo(); if($image_orig->dim_x > 600 || $image_orig->dim_y > 600) { $new = TONEImageConstrainDimensions($image_orig->dim_x, $image_orig->dim_y, 600); $image_orig->ConvertResized($new[dim_x], $new[dim_y], 75, 'JPEG'); clearstatcache(); $image_orig->GetInfo(); } TONEImageFileDelete($own_image); TONEImageDelete($own_image); unset($data); ## $data[id] = $own_image; $data[size] = $image_orig->size; $data[type] = $image_orig->type; $data[dim_x] = $image_orig->dim_x; $data[dim_y] = $image_orig->dim_y; $error_result = TONEImageUpdate($data, false); if($error_result < 0 && (TONEIsError($error_result, 'db_norows') || TONEIsError($error_result, 'db_badsql') ) ) { $error[val] += $error[code][db_norows]; $error[txt][] = "The image could not be added to the database."; } else { $own_image = $error_result; $error_result = TONEImageMove($_FILES['own_photo']['tmp_name'], $own_image, $image_orig->type); if(TONEIsError($error_result, 'img_nocpy')) { TONEImageDelete($id); $error[val] += $error[code][file_copy]; $error[txt][] = "Could not store the image."; } if(!$error[val] ) { $tmpimg=tempnam("/tmp", "img"); $image_preview = new TONEImage; $image_preview->dir = $tmpimg; if(!empty($debug)) $imig_preview->debug=true; $new = TONEImageConstrainDimensions($image_orig->dim_x, $image_orig->dim_y, 120); $image_orig->ConvertResized($new[dim_x], $new[dim_y], 75, 'JPEG', $image_preview->dir); $image_preview->GetInfo(); TONEImageFileDelete($own_image_preview); TONEImageDelete($own_image_preview); unset($data); ## $data[id] = $own_image_preview; $data[size] = $image_preview->size; $data[type] = $image_preview->type; $data[dim_x] = $image_preview->dim_x; $data[dim_y] = $image_preview->dim_y; $error_result = TONEImageUpdate($data, false); if($error_result < 0 && (TONEIsError($error_result, 'db_norows') || TONEIsError($error_result, 'db_badsql') ) ) { $error[val] += $error[code][db_norows]; $error[txt][] = "The preview image could not be added to the database."; } else { $own_image_preview = $error_result; $error_result = TONEImageMove($image_preview->dir, $own_image_preview, $image_preview->type); } } } } } if(!$error[val]) { unset($data); $data[id] = $oid; $data[is_update] = $own_isupdate; $data[type] = $own_type; $data[model_id] = $own_model; $data[image_id] = $own_image; $data[imagepre_id] = $own_image_preview; $data[boatyear] = $own_boatyear; $data[hullnumber] = $own_hullnumer; $data[boatname] = $own_boatname; $data[homeport] = $own_homeport; $data[ownername] = $own_ownername; $data[phone_home] = $own_phone_home; $data[phone_work] = $own_phone_work; $data[email] = $own_email; $data[comments] = $own_comments; $data[lat] = $own_lat; $data[lon] = $own_lon; $data[zipcode] = $own_zipcode; $data[active] = 'Y'; $error_result = TONEOwnerUpdate($data, false); if($error_result < 0 && ( TONEIsError($error_result, 'db_norows') || TONEIsError($error_result, 'db_badsql') ) ) { $error[val] += $error[code][db_norows]; $error[txt][] = "The information was not inserted into the database, please try again."; } else { $oid = $error_result; } if($error[val]) { $show_owner = true; $show_good = false; } else { $show_owner = false; $show_good = true; #if($gTONEDoUpdateOwnerEmail && $own_isupdate=='Y') { # $message="The owner with ID=$oid is requesting that their information be replaced with another similar record."; # TONEMailDoSend('mailer@tartanowners.org', 'tone@tartanowners.org', '[TONE Auto Mailer] Updated Owner Record: ' . $error_result, $message); #} $do_redirect = true; } if(!$error[val] && $oid && !empty($own_email) && ($new_owner || $own_email != $old_own_email) ) { $sql = " select id from owner_access where owner_id='$oid' and email='$own_email' "; $result_count = @mysql_query($sql, $gTONEDBConn); if($result_count) { if(!@mysql_num_rows($result_count)) { $sql = " insert into owner_access ( owner_id, email ) values ( '$oid', '$own_email' ) "; $result_insert = @mysql_query($sql, $gTONEDBConn); } } } if(!$error[val] && $oid && $new_owner) { unset($error_result); $error_result = TONEOwnerGetResult($oid); if( !($error_result < 0) ) { $the_owner=mysql_fetch_object($error_result); $secret = TONESecretMake(); $hash = TONEOwnerHashCreate($id, $the_owner->record_creation, $secret); unset($data); $data[id] = $oid; $data[secret] = $secret; $data[hash] = $hash; TONEOwnerUpdate($data, false); TONESetCookie($hash); } } if($show_good) { if($gTONEDoUpdateOwnerEmail && ($own_model==12) ) { $message="This t34c owner has added or updated their record:\n\nhttp://www.tartanowners.org/members/ownerpopup.phtml?id=$oid\n\n"; TONEMailDoSend('admin@tartanowners.org', $email_t34_update, '[Tartan Owners t34] Owner Record Added / Updated', $message); } exec("curl 'http://www.tartanowners.org/members/rss/news.php?owner=$oid' > /dev/null &"); TONERedirectBrowser("http://www.tartanowners.org/v6/profiles.phtml?action=new&ord=new&oid=$oid", false); exit; } } if($error[val]) { ## Format the data for display on the screen $own_model = TONETextDisplay($own_model, false, false); $own_isupdate = TONETextDisplay($own_isupdate, false, false); $own_boatyear = TONETextDisplay($own_boatyear, false, false); $own_hullnumer = TONETextDisplay($own_hullnumer, false, false); $own_boatname = TONETextDisplay($own_boatname, false, false); $own_homeport = TONETextDisplay($own_homeport, false, false); $own_ownername = TONETextDisplay($own_ownername, false, false); $own_phone_home = TONETextDisplay($own_phone_home, false, false); $own_phone_work = TONETextDisplay($own_phone_work, false, false); $own_email = TONETextDisplay($own_email, false, false); $own_comments = TONETextDisplay($own_comments, false, false); $own_lat = TONETextDisplay($own_lat, false, false); $own_lon = TONETextDisplay($own_lon, false, false); $own_zipcode = TONETextDisplay($own_zipcode, false, false); } break; } } $rnd = rand(100000, 999999); $url_forward[] ='rnd=' . $rnd; if($debug) $url_forward[] ='debug=' . $debug; if(count($url_forward)) $forward = TONETextMakeFromList($url_forward, '', '&', false, '', false); %> Tartan Owner Info Form
<% include("/var/www/webhosts-script/www.tartanowners.org/private/menu/menu.html"); %>

Owner Information Form

Use this form to <%= $new_owner ? "add your profile to the Owners List. Welcome aboard!" : "update your profile. Thanks for keeping it up to date!";%>

<%if($error[val]):%>

Errors:

<%endif;%>
* Tartan Model:  <%=TONEModelPopUp('own_model', $own_model);%> 
* Year: 
Hull Number: 
* Boat Name: 
* Home Port: 
Location/Zipcode:  (See note below)
* Owner's Name: 
Membership:  border="0"> TONE   border="0"> LETS   border="0"> CBTSC
border="0"> TCA 34   border="0"> Owner Group
Home Phone: 
Work Phone: 
Email: 
border="0"> Do not display email address
Comments: 
Photo:  <%if($own_image && $own_image_preview):%>Your current photo is shown below. To change it, use the "Browse" button to select another:

<%=TONEImageGetTagIMG($own_image_preview);%>

<%endif;%>
* Required