comparison de/index.php @ 6:077b0a0a3e6d

remaining originals according to dependency walk
author Robert Boland <robert@markup.co.uk>
date Thu, 16 Feb 2017 22:29:02 +0000
parents
children 385ddd7c4b55 84a412b8122c
comparison
equal deleted inserted replaced
5:55445b456ad0 6:077b0a0a3e6d
1 <?PHP
2 session_start();
3
4 function uniqueRand($n, $min = 0, $max = null)
5 {
6 if($max === null)
7 $max = getrandmax();
8 $array = range($min, $max);
9 $return = array();
10 $keys = array_rand($array, $n);
11 foreach($keys as $key)
12 $return[] = $array[$key];
13 return $return;
14 }
15
16 include "../mdetect.php";
17 $uagent_obj = new uagent_info();
18 $iPhone = $uagent_obj->DetectSmartphone();
19 $iPad = $uagent_obj->DetectIpad();
20
21 $proceed = true;
22 $launchScript = "<script type=\"text/javascript\" language=\"javascript\" src=\"../books/books.nocache.js\"></script>";
23
24 //print_r($_SERVER);
25 if (isset($_SERVER['HTTP_REFERER']) || isset($_GET['facebook']))
26 {
27 $pos = strpos($_SERVER['HTTP_REFERER'], "apps.facebook.com");
28 if($pos !== false || isset($_GET['facebook']))
29 {
30 //we are in facebook canvas so react appropriately
31 include_once '../facebook.php';
32
33 $facebook = new Facebook(array(
34 'appId' => '128245333876633',
35 'secret' => 'f51afc7e04289db62448edd8b70d83bf',
36 'cookie' => true,
37 'domain' => 'yournextpresent.com'
38 ));
39
40 $session = $facebook->getSession();
41
42 if (!$session) {
43 $proceed = false;
44 $url = $facebook->getLoginUrl(array(
45 'canvas' => 1,
46 'fbconnect' => 0,
47 'req_perms' => 'email,user_birthday,publish_stream'
48 ));
49
50 echo "<script type='text/javascript'>top.location.href = '$url';</script>";
51 }
52 else
53 {
54 $launchScript = "<script type=\"text/javascript\" language=\"javascript\" src=\"../booksFB/books.nocache.js\"></script>";
55 }
56 }
57 }
58 echo "<!DOCTYPE html><html>";
59 if($proceed)
60 {
61 echo "<head>";
62 echo "<meta name=\"fragment\" content=\"!\">";
63 echo "<meta name=\"viewport\" content=\"width=device-width, user-scalable=no\" />";
64 echo "<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\">";
65 echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"../Books.css\">";
66
67 if(isset($_GET['_escaped_fragment_'])) {
68 $isbn = $_GET['_escaped_fragment_'];
69 if($isbn == ""){
70 echo "<META NAME=\"Description\" CONTENT=\"Discover and share your next book at YourNextRead. YourNextRead makes book discovery and recommendation simple. Great for both bookworms and casual readers!\">";
71
72 echo "<title>YourNextRead: Book Recommendations (Deutschland)</title>";
73 echo "<div id=\"script\"></div><noscript>
74 <p>You need to have Javascript enabled to use YourNextRead - Sorry!<p>
75 <p>Please see instructions on how to switch this on, depending on which browser you use:<p>
76 <ul>
77 <li><a href=\"http://www.ehow.com/how_2033406_enable-javascript-firefox.html\">Firefox</a></li>
78 <li><a href=\"http://www.chromefans.org/chrome-tutorial/how-to-enable-or-disable-javascript-in-google-chrome.htm\">Chrome</a></li>
79 <li><a href=\"http://support.microsoft.com/gp/howtoscript\">Internet Explorer</a></li>
80 </ul>
81 <p>Thank you for using YourNextRead<p>
82 <img src=\"http://www.yournextread.com/images/topleft.gif\" alt=\"YourNextRead\"/>
83 </noscript>";
84 if($iPhone && !$iPad)
85 {
86 echo "<meta name=\"viewport\" content=\"width=device-width, user-scalable=no\" />";
87 echo "<script type=\"text/javascript\" language=\"javascript\" src=\"../booksMob/books.nocache.js\"></script>";
88 }
89 else
90 {
91 echo "<script type=\"text/javascript\" language=\"javascript\" src=\"../raphael-min.js\"></script>";
92 echo $launchScript;//"<script type=\"text/javascript\" language=\"javascript\" src=\"../books/books.nocache.js\"></script>";
93 }
94 echo "</head>";
95 echo "<body>";
96 //we are at the launch page
97 echo "<p>Get started, search for a book you like... or choose from one of the lists below:</p><BR></BR>";
98
99 $ret = 1;
100
101 $bookLists = include "../php/read/getAllSavedBooks.php";
102 $xml = new SimpleXMLElement($bookLists);
103
104 $numOfLists = sizeof($xml->List) - 1; //-1 for zero indexing
105
106 $randomFourLists = uniqueRand(4,0,$numOfLists);
107
108 foreach ($randomFourLists as $id) {
109 $ListName = $xml->List[$id]->SavedListName;
110 echo "<p><b>$ListName</b></p><BR></BR>";
111 for($i=0;$i<sizeof($xml->List[$id]->ListDetails->Book);$i++){
112 $bookTitle = $xml->List[$id]->ListDetails->Book[$i]->BookTitle;
113 $isbn = $xml->List[$id]->ListDetails->Book[$i]->ISBN;
114 echo "<a href=http://www.YourNextRead.com/de/#!isbn=$isbn>$bookTitle</a> ";
115 }
116 }
117 }
118 else
119 {
120 try{
121 $isbn = substr($isbn, 5);
122 $chars = explode("/",$isbn);
123 $isbn = $chars[0];
124 $ret = 1;
125 $countryCode = 3;
126
127 include "../../private/db.php";
128 $query = "CALL b_getBookInfo('$isbn', $countryCode)";
129 //echo $query;
130 $res = mysqli_query($link, $query) or exit( mysqli_error( $link ));
131 include "../xml/aws_signed_request.php";
132 include "../xml/getAmazonInfo.php";
133 if ( mysqli_num_rows( $res ) > 0 )
134 {
135 $rows=mysqli_fetch_array($res, MYSQLI_ASSOC);
136 $title = $rows["Title"];
137 $author = $rows["Author"];
138 }
139 else
140 {
141 $bookDetails = getAmazonDet($isbn,1,'ca');
142 $bookXML = new SimpleXMLElement($bookDetails);
143 $title = $bookXML->Items->Item[0]->ItemAttributes->Title;
144 $author = $bookXML->Items->Item[0]->ItemAttributes->Author;
145 }
146
147 $linkedBooks = include "../php/read/getLinkedBooks.php";
148 $xml = new SimpleXMLElement($linkedBooks);
149
150 $recommended = "";
151 $linkedRecommended = "";
152 for($i=0;$i<sizeof($xml->isbn);$i++){
153 $linkedISBN = $xml->isbn[$i];
154 include "../../private/db.php";
155 $query = "CALL b_getBookInfo('$linkedISBN', $countryCode)";
156 //echo $query;
157 $res = mysqli_query($link, $query) or exit( mysqli_error( $link ));
158 if ( mysqli_num_rows( $res ) > 0 )
159 {
160 $rows=mysqli_fetch_array($res, MYSQLI_ASSOC);
161 $titleL = $rows["Title"];
162 $authorL = $rows["Author"];
163 mysqli_close($link);
164 }
165 else
166 {
167 $bookLDetails = getAmazonDet($linkedISBN,1,'de');
168 $bookLXML = new SimpleXMLElement($bookLDetails);
169 $titleL = $bookLXML->Items->Item[0]->ItemAttributes->Title;
170 $authorL = $bookLXML->Items->Item[0]->ItemAttributes->Author;
171 }
172 if($titleL != "")
173 {
174 $recommended .= " $titleL by $authorL,";
175 $underAuthor = str_replace(" ","_",$authorL);
176 $underTitle = str_replace(" ","_",$titleL);
177 $linkedRecommended .= "<a href=\"http://www.YourNextRead.com/de/#!isbn=$linkedISBN/$underTitle" . "_by_$authorL\">$titleL by $authorL</a>, ";
178 }
179 }
180
181 $vote = "Vote on these recommendations!";
182
183 echo "<META NAME=\"Description\" CONTENT=\"YourNextRead recommended books for $title by $author:$recommended $vote\">";
184
185 echo "<title>YourNextRead (Deutschland) Recommended Books for $title by $author</title>";
186 echo "<div id=\"script\"></div><noscript>
187 <p>You need to have Javascript enabled to use YourNextRead - Sorry!<p>
188 <p>Please see instructions on how to switch this on, depending on which browser you use:<p>
189 <ul>
190 <li><a href=\"http://www.ehow.com/how_2033406_enable-javascript-firefox.html\">Firefox</a></li>
191 <li><a href=\"http://www.chromefans.org/chrome-tutorial/how-to-enable-or-disable-javascript-in-google-chrome.htm\">Chrome</a></li>
192 <li><a href=\"http://support.microsoft.com/gp/howtoscript\">Internet Explorer</a></li>
193 </ul>
194 <p>Thank you for using YourNextRead<p>
195 <img src=\"http://www.yournextread.com/images/topleft.gif\" alt=\"YourNextRead\"/>
196 </noscript>";
197 if($iPhone && !$iPad)
198 {
199 echo "<meta name=\"viewport\" content=\"width=device-width, user-scalable=no\" />";
200 echo "<script type=\"text/javascript\" language=\"javascript\" src=\"../booksMob/books.nocache.js\"></script>";
201 }
202 else
203 {
204 echo "<script type=\"text/javascript\" language=\"javascript\" src=\"../raphael-min.js\"></script>";
205 echo $launchScript;//"<script type=\"text/javascript\" language=\"javascript\" src=\"../books/books.nocache.js\"></script>";
206 }
207
208 echo "</head>";
209
210 echo "<body>";
211 echo "<p>Recommended Books for <b>$title</b> by <b>$author</b>:";
212 echo $linkedRecommended . "</p>";
213 echo "<p>" . $vote . "</p>";
214
215 echo "Change to <a href=\"http://www.YourNextRead.com/fr/#!isbn=$isbn/$title" . "_by_$author\">YourNextRead France</a>, ";
216 echo "Change to <a href=\"http://www.YourNextRead.com/ca/#!isbn=$isbn/$title" . "_by_$author\">YourNextRead Canada</a>, ";
217 echo "Change to <a href=\"http://www.YourNextRead.com/uk/#!isbn=$isbn/$title" . "_by_$author\">YourNextRead UK</a>, ";
218 echo "Change to <a href=\"http://www.YourNextRead.com/us/#!isbn=$isbn/$title" . "_by_$author\">YourNextRead USA</a>";
219 echo ", See this on <a href=\"http://www.YourNextPresent.com/de/#!isbn=$isbn\">YourNextPresent</a>, ";
220 echo "Switch to <a href=\"http://www.YourNextFilm.com/de/\">YourNextFilm</a>, ";
221 echo "Switch to <a href=\"http://www.YourNextGame.com/de/\">YourNextGame</a>";
222 }
223 catch(Exception $e)
224 {
225 echo 'Message: ' .$e->getMessage();
226 }
227 }
228 }
229 else
230 {
231 echo "<META NAME=\"Description\" CONTENT=\"YourNextRead recommends your next book. YourNextRead provides a book recommendation system showing aggregated book reviews, updated by real peoples opinions, in a simple visual map, helping you to decide 'What Should I Read Next?'. Perfect for both bookworms and casual readers!\">";
232
233 echo "<title>YourNextRead: Book Recommendations (Deutschland)</title>";
234 //the title will get changed dynamically in the GWT code
235 echo "<div id=\"script\"></div><noscript>
236 <p>You need to have Javascript enabled to use YourNextRead - Sorry!<p>
237 <p>Please see instructions on how to switch this on, depending on which browser you use:<p>
238 <ul>
239 <li><a href=\"http://www.ehow.com/how_2033406_enable-javascript-firefox.html\">Firefox</a></li>
240 <li><a href=\"http://www.chromefans.org/chrome-tutorial/how-to-enable-or-disable-javascript-in-google-chrome.htm\">Chrome</a></li>
241 <li><a href=\"http://support.microsoft.com/gp/howtoscript\">Internet Explorer</a></li>
242 </ul>
243 <p>Thank you for using YourNextRead<p>
244 <img src=\"http://www.yournextread.com/images/topleft.gif\" alt=\"YourNextRead\"/>
245 </noscript>";
246 if($iPhone && !$iPad)
247 {
248 echo "<meta name=\"viewport\" content=\"width=device-width, user-scalable=no\" />";
249 echo "<script type=\"text/javascript\" language=\"javascript\" src=\"../booksMob/books.nocache.js\"></script>";
250 }
251 else
252 {
253 echo "<script type=\"text/javascript\" language=\"javascript\" src=\"../raphael-min.js\"></script>";
254 echo $launchScript;//"<script type=\"text/javascript\" language=\"javascript\" src=\"../books/books.nocache.js\"></script>";
255 }
256
257 echo "</head>";
258
259 echo "<body>";
260 echo "<div id=\"fb-root\"></div>
261 <script type=\"text/javascript\" src=\"http://connect.facebook.net/en_US/all.js\"></script>
262 <script type=\"text/javascript\">
263 FB.init({
264 appId : '128245333876633',
265 status : true, // check login status
266 cookie : true, // enable cookies to allow the server to access the session
267 xfbml : true // parse XFBML
268 });
269 </script>";
270 echo "<script type=\"text/javascript\">
271 var obj = new Object;
272 obj.height=960;
273 FB.Canvas.setSize(obj);
274 </script>";
275 }
276 }
277 ?>
278
279 <iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>
280
281 <script type="text/javascript">
282 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
283 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
284 </script>
285 <script type="text/javascript">
286 try {
287 var pageTracker = _gat._getTracker("UA-15026249-1");
288 pageTracker._setDomainName("none");
289 pageTracker._setAllowLinker(true);
290 pageTracker._trackPageview();
291 } catch(err) {}</script>
292 </body>
293 </html>