$_SGV) { $$_SGK = $_SGV; } } session_start(); include "quads.php"; $ip=$_SERVER["REMOTE_ADDR"]; $changeDate=date('YmdHis',time()); $att= new quad; switch (true) { case (!isset($_POST["submit"])): break; case ( $_POST["submit"] == "return to selection") : $do="selection"; break; case ($_POST["submit"]=="submit"): $do="definitionForm"; break; case ($_POST["submit"] == "submit changes to this report"): $do="generateReport"; break; case ( $_POST["submit"] == "return to modifiy definition") : $do="definitionForm"; break; case ($_POST["submit"] == "clone this report as"): $do="makeClone"; break; case ($_POST["submit"] == "write report") : $do="write report"; break; default: $do="unknown"; $report=sprintf('

Unknown submit: %s

',$_POST['submit']); break; } $htmlHeader=''; switch ($do) { case "": $do="selection"; case "selection": $report=""; $sql='select * from quads where (context="newsletters" or context="reports") and verb="title" order by subject'; $result=mysql_query($sql,$conn) or die(mysql_error()); $report = '

'; $template=$do; break; case "definitionForm": switch (true) { case (!empty($_POST['selection'])): session_unset(); $_SESSION = array(); $seek=mysql_real_escape_string($_POST['selection']); $_SESSION['whichReport']=$_POST['selection']; break; case (!empty($_SESSION['whichReport'])): $seek=mysql_real_escape_string($_SESSION['whichReport']); session_unset(); $_SESSION = array(); $_SESSION['whichReport']=$seek; break; default: $seek="none"; $report .= "

This should be where you define the report


You probably shouldn't be comming here!"; } $sql=sprintf('select * from quads where (context="newsletters" or context="reports") and subject="%s" order by verbseq, verb, objectseq',$seek); $result=mysql_query($sql,$conn) or die(mysql_error()); $report = '
'; $report .= sprintf('',$seek); while ($r = mysql_fetch_array($result)) { switch (true) { case ($r['context']=="reports"): switch ($r['verb']) { case "redirect": $redirect=sprintf('Location: %s',$r['object']); header($redirect); exit; break; default: break; } $report .= '
'; $report .= 'Things in the context of "reports" must have a verb "redirect" or you get this error message: '; $report .= sprintf('What does "%s %s %s" mean in the context of "%s" ?
',$r['subject'],$r['verb'],$r['object'],$r['context']); break; case ($r['objecttype']=="text" or $r['objecttype']=="date"): $report .= sprintf('

' ,$r['verb'],$r['verbseq'],$r['verb'],$r['verb'],$r['id'],$r['object']); break; case ($r['objecttype']=="template"): $report .= sprintf('

' ,$r['verb'],$r['verb'],$r['verb'],$r['id'],$r['object']); break; case ($r['objecttype']=="html"): if ($r['verb']=="htmlHeader") break; $report .= sprintf('

' ,$r['verb'],$r['verbseq'],$r['verb'],$r['verb'],$r['id'],$r['object']); break; case ($r['objecttype']=="csv"): $report .= sprintf('

' ,$r['verb'],$r['verbseq'],$r['verb'],$r['verb'],$r['id'],$r['object']); break; case ($r['objecttype']=="hyperlink"): $parts=explode("|",$r['object'],2); $report .= sprintf('

%s   verb:%s



' ,$r['verbseq'],$r['verb'],$r['verb'],$r['verb'],$r['id'],$parts[0]); $report .= sprintf('

' ,$r['verb'],$r['verb'],$r['id'],$parts[1]); break; default: $report .= sprintf('
%s
%s not programmed yet: verb=%s object=%s

',$r['verb'],$r['objecttype'],$r['verb'],$r['object']); } } $report .= '
'; $report .= '
'; $report .= '
or '; $report .= ''; $report .= '
'; $report .= '

or '; $report .= '
'; $report .= '
'; $template=$do; break; case "generateReport": switch (true) { case (!empty($_POST['postReport'])): $seek=mysql_real_escape_string($_POST['postReport']); $_SESSION['whichReport']=$_POST['postReport']; break; case (!empty($_SESSION['whichReport'])): $seek=mysql_real_escape_string($_SESSION['whichReport']); break; default: $seek="none"; $report .= "

This should be where you generate the report


You probably shouldn't be comming here!"; } $reportControl = '
'; $reportControl .= sprintf('',$seek); $sql=sprintf('select * from quads where context="newsletters" and subject="%s" order by verbseq, verb, objectseq',$seek); $result=mysql_query($sql,$conn) or die(mysql_error()); while ($r = mysql_fetch_array($result)) { if ($_POST["submit"] == "submit changes to this report") { # Change the database and the SESSION only if we actuall submitted # NOTE THE OBJECT OF THE QUAD IS NAMED BY THE RECORD ID OF THE QUAD RECORD switch (true) { case ($r['objecttype']=="hyperlink"): $href=trim($_POST['href_'.$r['id']]); $anchor=trim($_POST['anchor_'.$r['id']]); $object=$href."|".$anchor; break; default: # Object to post is named by the id $object=trim($_POST[$r['id']]); break; } $sql=sprintf('UPDATE quads SET object="%s" WHERE `id`="%s" ',mysql_real_escape_string($object),$r['id']); $replaceResult=mysql_query($sql,$conn) or die(mysql_error()); # Put the value into a global variable $data[$r['verb']]=$object; # ( $data could probably use the _SESSION variable instead ) # Always file the data in the session variable for future reference $_SESSION[$r['verb']]=$object; } else { $object=$r['object']; } switch (true) { case ($r['objecttype']=="csv"): $showArray = explode(",",$object); foreach ($showArray as $key => $value) { $showArray[$key]=trim($value); } $report .= sprintf('
%s
',print_r($showArray,true)); break; case ($r['objecttype']=="template"): $report .= fillTemplate ($object); break; case ($r['verb']=="title"): $s = sprintf(' %s ', $object); $report .= $s; break; case ($r['objecttype']=="html"): if ($r['verb']=="htmlHeader") break; $report .= $object; break; case ($r['verb']=="catagoryLink"): $parts=explode("|",$object,2); $report .= sprintf('
%s
',"150%",$parts[0],$parts[1]); break; case ($r['verb']=="promotion"): if (!empty($object)) { $promInUrl=sprintf('&promotion=%s',trim($object)); } else { $promInUrl="";} break; case ($r['verb']=="productList"): if (empty($object)) break; $codes=explode(",",$object); $report .= '
'; foreach ($codes as $code) { $code=strtoupper(trim($code)); $sql=sprintf('select * from product where item="%s" ',$code); $productResult=mysql_query($sql,$conn) or die(mysql_error()); if (mysql_num_rows($productResult)>0) { $demofile1="../mp3/".$code.".mp3"; $demofile2="../mp3/".strtolower($code).".mp3"; $demofile=''; switch (true) { case (file_exists($demofile1)): $demofile=$demofile1; $demoUrl=sprintf('http://speaktomecatalog.com/mp3/%s.mp3',$code); break; case (file_exists($demofile2)): $demofile=$demofile2; $demoUrl=sprintf('http://speaktomecatalog.com/mp3/%s.mp3',strtolower($code)); break; default: $demoButton=''; } if (!empty($demofile)) { $demoButton=sprintf("

listen",$demoUrl); } else { $demoButton='';} $thumb="../thumb/".$code.".jpg"; $thumbUrl='http://speaktomecatalog.com/thumb/'.$code.'.jpg'; if (file_exists($thumb)) { $image=sprintf('',$thumbUrl);} else { $image='

Too new for picture.
';} $r = mysql_fetch_array($productResult); $report .= sprintf('
%s

%s
%s Price $%s

', $code, $promInUrl, $image, $code, $promInUrl, $r['descrip'], $r['pagetext'], $demoButton, $r['price'] ); } else { $report .= sprintf('
No such product code %s



',$code); } } $report .= '
'; break; default: break; } } $_SESSION['reportOutput']=$report; # Wrap the $report in a form to show it now $report = $reportControl.$_SESSION['reportOutput']; $report .= '

Or
'; $report .= '
'; $template=$do; break; case "write report": $report='retun to generate report'; switch (true) { case (!empty($_POST['postReport']) and $_SESSION['whichReport']==$_POST['postReport']): # This is the case where we can acutally do something $seek=mysql_real_escape_string($_POST['postReport']); $clearedToWrite="yes"; break; default: $seek="none"; $report .= "

There seems to be some confusion here

"; $report .= sprintf('
The session says: %s but the post says %s',$_SESSION['whichReport'],$_POST['postReport']); $clearedToWrite="no"; $template="none"; break 2; } switch (true) { case ($clearedToWrite != "yes"): # This is the case where we certainly do not want to write anything $template="none"; break 2; case ($_SESSION['type']=="coupon"): $sql=sprintf("REPLACE INTO `promotions` set db_promo='%s', description='%s', expire='%s', on_page='%s', on_item='%s', percentage='%s', amount='%s', method='%s', html1='%s', html2='%s' ", $_SESSION['whichReport'], $_SESSION['title'], $_SESSION['expireDate'], $_SESSION['on_page'], $_SESSION['on_item'], $_SESSION['percentage'], $_SESSION['qualifyAmount'], $_SESSION['method'], $_SESSION['webCoupon'], $_SESSION['html2']); $result=mysql_query($sql,$conn) or die(mysql_error()); # echo "
sql=$sql"; echo "
kewl we finally are writing the following coupon:"; echo '
'.$_SESSION['webCoupon'].'
'; $report=sprintf("%s coupon has been successfully written
",$_SESSION['whichReport']); break; case ($_SESSION['type']=="emailbulk"): echo "
Writing newsletter: $title"; $fp = fopen("/home/speakt5/mailing/subject.txt", "w+"); $written = fwrite($fp, $title); fclose($fp); $fp = fopen("/home/speakt5/mailing/newsletter.html", "w+"); $written = fwrite($fp, $_SESSION['reportOutput']); fclose($fp); $saveFileName=sprintf('/home/speakt5/public_html/newsletters/%s.html',$_SESSION['whichReport']); $fp = fopen($saveFileName, "w+"); $written = fwrite($fp, $_SESSION['reportOutput']); fclose($fp); $currentFileName='/home/speakt5/public_html/newsletters/current.html'; $fp = fopen($currentFileName, "w+"); $written = fwrite($fp, $_SESSION['reportOutput']); fclose($fp); $report=sprintf('%s newsletter and current has been successfully written
',$_SESSION['whichReport'],$_SESSION['whichReport']); # echo "
";
		# echo print_r ($_SESSION);
		# echo "
"; break; default: $report .= sprintf('
What kind of thingey is %s',$_SESSION['type']); $report .= sprintf('
postReport=%s session whichReport=%s',$_POST['postReport'],$_SESSION['whichReport']); break; } $report .= '

Return to do something else
'; $template=$do; break; case "makeClone": if ($_POST["submit"] != "clone this report as" AND !empty($_POST['newsubject']) ) { $template="unknown"; $report=sprintf('You should not come to makeClone if your are trying to %s',$_POST["submit"]); break; } $seek=mysql_real_escape_string($_SESSION['whichReport']); $sql=sprintf('select * from quads where context="newsletters" and subject="%s" order by verbseq, verb, objectseq',$seek); $result=mysql_query($sql,$conn) or die(mysql_error()); while ($r = mysql_fetch_array($result)) { switch (true) { case ($r['verb']=='title'): $title=$_POST['newtitle']; $object=mysql_real_escape_string($title); break; default: $object=mysql_real_escape_string($r['object']); } $sql=sprintf('INSERT into quads (context,subject,verbseq,verb,object,objectseq,objecttype) VALUES ("%s","%s","%s","%s","%s","%s","%s")', "newsletters",$_POST['newsubject'],$r['verbseq'],$r['verb'],$object,$r['objectseq'],$r['objecttype']); echo "
$sql
"; $cloneResult=mysql_query($sql,$conn) or die(mysql_error()); } $template=$do; $report .= sprintf('

Report %s Code %s is Cloned

',$title,$_POST['newsubject']); $_SESSION['whichReport']=$_POST['newsubject']; $report .= '

Go to new definition'; break; default: $template="unknown"; break; } function fillTemplate ($x) { global $data; $out=""; $p=explode("{",$x); foreach ($p as $s) { $t=explode("}",$s,2); if (count($t)==2) { if (isset($data[$t[0]])) { $v=$data[$t[0]]; } else { $v=sprintf('{%s undefined}',$t[0]); } $out .= $v.$t[1]; } else { $out .= $t[0]; } } return ($out); } # _______________________________________________________________________ # SHOW THE REPORT OR OUTPUT THE NEXT PAGE # ----------------------------------------------------------------------- if (empty($htmlHeader)) { $htmlHeader=' '; } switch ($template) { case "selection" : echo $htmlHeader; ?> Select which Report

Select which Report

Define Code: %s',$_SESSION['whichReport']); echo ""; printf('

Modify Report Code: %s

',$_SESSION['whichReport']); echo $report; break; case "generateReport" : echo $htmlHeader; printf('Report for: %s',$_POST['postReport']); echo ""; printf('

Report for: %s

',$_POST['postReport']); echo $report; break; case "info" : echo $htmlHeader; ?> Information go back