PageRenderTime 49ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

/apps/frontend/modules/users/templates/indexSuccess.php

https://github.com/fbriceno/test
PHP | 442 lines | 316 code | 62 blank | 64 comment | 16 complexity | 8975063921144eddc880a5e37292d047 MD5 | raw file
Possible License(s): ISC
  1. <?php
  2. require '/home/ubuntu/test/web/src/facebook.php';
  3. //ini_set('display_errors',1);
  4. $facebook = new Facebook(array(
  5. 'appId' => '163207260491691',
  6. 'secret' => '0d45ef52a848c029298c462209ee212c',
  7. ));
  8. $userf = $facebook->getUser();
  9. /******** MOSTRAR LOGIN *******/
  10. if ($userf) {
  11. /******* LOGEADO *************/
  12. $logoutUrl = $facebook->getLogoutUrl();
  13. } else {
  14. /******* SIN LOGEAR **********/
  15. //'scope' => 'user_about_me,user_activities,user_birthday,user_checkins,user_education_history,user_events,user_groups,user_hometown,user_interests,user_likes,user_location,user_notes,user_online_presence,user_photo_video_tags,user_photos,user_relationships,user_relationship_details,user_religion_politics,user_status,user_videos,user_website,user_work_history,email,read_friendlists,read_insights,read_mailbox,read_requests,read_stream,xmpp_login,ads_management,create_event,manage_friendlists,manage_notifications,offline_access,publish_checkins,publish_stream,rsvp_event,sms,publish_actions,manage_pages'
  16. $params = array(
  17. //"redirect_uri" => REDIRECT_URI,
  18. "scope" => "email,read_stream,publish_stream,user_birthday,user_checkins,user_groups,user_likes,user_interests,user_status,friends_birthday");
  19. //echo '<a href="' . $fb->getLoginUrl($params) . '">Login</a>';
  20. ?><div id="fb-root"></div>
  21. <script>(function(d, s, id) {
  22. var js, fjs = d.getElementsByTagName(s)[0];
  23. if (d.getElementById(id)) return;
  24. js = d.createElement(s); js.id = id;
  25. js.src = "//connect.facebook.net/es_LA/all.js#xfbml=1&appId=163207260491691";
  26. fjs.parentNode.insertBefore(js, fjs);
  27. }(document, 'script', 'facebook-jssdk'));</script>
  28. <div class="fb-login-button" scope="email,read_stream,publish_stream,user_birthday,user_checkins,user_groups,user_likes,user_interests,user_status,friends_birthday" data-show-faces="true" data-width="200" data-max-rows="1"></div>
  29. <div class="fb-login-button" data-show-faces="true" data-width="200" data-max-rows="1"> <?
  30. echo '<a href="' . $loginUrl = $facebook->getLoginUrl($params) . '">Login</a>';
  31. ?> </div>
  32. <?
  33. $fb_login = '<a href="' . $facebook->getLoginUrl() . '" class="fb-login-button"><img src="img/fb-login-button.png" border="0" /></a>';
  34. echo $fb_login;
  35. }
  36. // echo '<div>'
  37. if ($userf) {
  38. try {
  39. // Proceed knowing you have a logged in user who's authenticated.
  40. $user_profile = $facebook->api('/me');
  41. //echo "<h3> amigos</h3>";
  42. //$myFriends = $facebook->api('/me/friends');
  43. $myFriends = $facebook->api('/me/friends?fields=name,gender,birthday');
  44. //print_r($myFriends['data']);
  45. //echo "<h3> grupos</h3>";
  46. $myGroups = $facebook->api('/me/groups');
  47. //print_r($myGroups['data']);
  48. //echo "<h3> checkins</h3>";
  49. $myCheckins = $facebook->api('/me/checkins');
  50. //print_r($myCheckins['data']);
  51. //echo "<h3> likes</h3>";
  52. $myLikes = $facebook->api('/me/likes');
  53. //print_r($myLikes['data']);
  54. //echo "<h3> interest</h3>";
  55. $myInterests = $facebook->api('/me/interests');
  56. //print_r($myInterests['data']);
  57. //echo "<h3> pages</h3>";
  58. //$myPages = $facebook->api('/me/pages');
  59. $myPages = $facebook->api(array(
  60. 'method' => 'fql.query',
  61. 'query' => 'SELECT page_id,app_id,pic,name,page_url,website,fan_count,new_like_count,checkins,founded,products FROM page WHERE page_id IN (SELECT page_id FROM page_fan WHERE uid=me());'
  62. ));
  63. //print_r($myPages);
  64. //echo "<h3> status</h3>";
  65. $myStatuses = $facebook->api('/me/statuses');
  66. //print_r($myStatuses['data']);
  67. } catch (FacebookApiException $e) {
  68. //error_log($e);
  69. echo $e;
  70. $userf = null;
  71. }
  72. }
  73. $signed_request = $facebook->getSignedRequest();
  74. $page_id = $signed_request["page"]["id"];
  75. $page_admin = $signed_request["page"]["admin"];
  76. $like_status = $signed_request["page"]["liked"];
  77. $country = $signed_request["user"]["country"];
  78. $locale = $signed_request["user"]["locale"];
  79. //echo "variables";
  80. //echo $page_id;
  81. //echo $page_admin;
  82. //echo $like_status;
  83. //echo $country;
  84. //echo $locale;
  85. if($userf){
  86. try{
  87. $usuarioLogueado = true;
  88. $this->usuarioLogueado=true;
  89. $u = $facebook->api('/me');
  90. $this->u = $u;
  91. //$this->loginUrl = $facebook->getLoginUrl($params);
  92. $c1= new Criteria();
  93. $c1->add(UsersPeer::USE_ID,$u['id']);
  94. $user = UsersPeer::doSelectOne($c1);
  95. //$c2= new Criteria();
  96. //$c2->addJoin ( CallbackWsPeer::UUID, CallHistoryPeer::UUID,Criteria::LEFT_JOIN);
  97. //$c2->addJoin ( RequestWsPeer::UUID, CallHistoryPeer::UUID,Criteria::LEFT_JOIN);
  98. //$c2->addJoin ( CallHistoryPeer::ID, UserPeer::ID,Criteria::LEFT_JOIN);
  99. //$c2->add(UsersPeer::USE_ID,$u['id']);
  100. //$c2->add(CallbackWsPeer::HANGUP_CAUSE,'NORMAL_CLEARING');
  101. //$c2->addGroupByColumn(CallbackWsPeer::UUID);
  102. //$c2->addAscendingOrderByColumn(CallbackWsPeer::DATE);
  103. //$callbacks =CallbackWsPeer::doSelect($c2);
  104. //$countcb = count($callbacks);
  105. //echo $countcb;
  106. $ci= new Criteria();
  107. $ci->add(FriendsPeer::USE_ID,$u['id']);
  108. $ci->add(FriendsPeer::FRI_INVITE,'0',Criteria::GREATER_THAN);
  109. $myInvites = FriendsPeer::doSelect($ci);
  110. foreach ($myInvites as $if){
  111. $myif[]=array("id"=>$if->getFriId(),"name"=>$if->getFriName(),"invite"=>$if->getFriInvite());
  112. }
  113. } catch (Exception $e) {
  114. //$log->debug('error:'.$e);
  115. //$this->redirect('llamar/alert');
  116. echo $e;
  117. }
  118. if ($user == null){
  119. try{
  120. $user=new Users();
  121. $user->setConId(1);
  122. $user->setUseId($u['id']);
  123. $user->setUseName($u['name']);
  124. $user->setUseFirstName($u['first_name']);
  125. $user->setUseMiddleName($u['middle_name']);
  126. $user->setUseLastName($u['last_name']);
  127. $user->setUseGender($u['gender']);
  128. $user->setUseLocale($u['locale']);
  129. $user->setUseLink($u['link']);
  130. $user->setUseBirthday($u['birthday']);
  131. $user->setUseEmail($u['email']);
  132. $user->setUseLocation($u['location']);
  133. $user->setUseWebsite($_COOKIE['username']);
  134. $status=$user->save();
  135. //print_r($myFriends['data']);
  136. foreach ($myFriends['data'] as $f)
  137. {
  138. //echo '<img src="https://graph.facebook.com/'.$friend['id']. '/picture">';
  139. //echo '<li style="display:inline;"><fb:profile-pic uid="'.$friend['id'].'" width="32" height="32" linked="true" /></li>';
  140. $friend=new Friends();
  141. $friend->setConId(1);
  142. $friend->setUseId2($user->getUseId2());
  143. $friend->setUseId($u['id']);
  144. $friend->setFriId($f['id']);
  145. $friend->setFriName($f['name']);
  146. $friend->setFriFirstName($f['first_name']);
  147. $friend->setFriMiddleName($f['middle_name']);
  148. $friend->setFriLastName($f['last_name']);
  149. $friend->setFriGender($f['gender']);
  150. $friend->setFriLocale($f['locale']);
  151. $friend->setFriLink($f['link']);
  152. $friend->setFriBirthday($f['birthday']);
  153. $friend->setFriEmail($f['email']);
  154. $friend->setFriLocation($f['location']);
  155. $friend->setFriWebsite($_COOKIE['username']);
  156. $status=$friend->save();
  157. }
  158. //print_r($myGroups['data']);
  159. foreach ($myGroups['data'] as $g)
  160. {
  161. $group=new Groups();
  162. $group->setUseId2($user->getUseId2());
  163. $group->setUseId($u['id']);
  164. $group->setConId(1);
  165. $group->setGroId($g['id']);
  166. $group->setGroVersion($g['version']);
  167. $group->setGroName($g['name']);
  168. $group->setGroAdministrator($g['administrator']);
  169. $status=$group->save();
  170. }
  171. foreach ($myCheckins['data'] as $c)
  172. {
  173. $checkin=new Checkins();
  174. $checkin->setUseId2($user->getUseId2());
  175. $checkin->setUseId($u['id']);
  176. $checkin->setConId(1);
  177. $checkin->setCheId($c['id']);
  178. $checkin->setChePlace($c['place']);
  179. $checkin->setCheName($c['name']);
  180. $checkin->setCheMessage($c['message']);
  181. $checkin->setCheLatitude($c['latitude']);
  182. $checkin->setCheLongitude($c['longitude']);
  183. $checkin->setCheApplication($c['application']);
  184. $status=$checkin->save();
  185. }
  186. foreach ($myLikes['data'] as $l)
  187. {
  188. $like=new Likes();
  189. $like->setUseId2($user->getUseId2());
  190. $like->setUseId($u['id']);
  191. $like->setConId(1);
  192. $like->setPagId($l['id']);
  193. $like->setLikName($l['name']);
  194. $like->setLikCategory($l['category']);
  195. $like->setLikCreatedTime($l['created_time']);
  196. $status=$like->save();
  197. }
  198. foreach ($myInterests['data'] as $i)
  199. {
  200. $interest=new Interests();
  201. $interest->setUseId2($user->getUseId2());
  202. $interest->setUseId($u['id']);
  203. $interest->setConId(1);
  204. $interest->setIntName($i['name']);
  205. $interest->setIntCategory($i['category']);
  206. $interest->setIntCreatedTime($i['created_time']);
  207. $status=$interest->save();
  208. }
  209. foreach ($myPages as $p)
  210. {
  211. $page=new Pages();
  212. $page->setUseId2($user->getUseId2());
  213. $page->setUseId($u['id']);
  214. $page->setConId(1);
  215. $page->setPagId($p['id']);
  216. $page->setPagName($p['name']);
  217. $page->setPagPicture($p['picture']);
  218. $page->setPagLink($p['link']);
  219. $page->setPagCategory($p['category']);
  220. $page->setPagLikes($p['likes']);
  221. $page->setPagWebsite($p['website']);
  222. $page->setPagFounded($p['founded']);
  223. $page->setPagProducts($p['products']);
  224. $page->setPagCheckins($p['checkins']);
  225. //$page->setPagCreatedTime($p['created_time']);
  226. $status=$page->save();
  227. }
  228. foreach ($myStatuses['data'] as $s)
  229. {
  230. $statuse=new Statuses();
  231. $statuse->setUseId2($user->getUseId2());
  232. //$statuse->setUseId($u['id']);
  233. $statuse->setConId(1);
  234. $statuse->setStaId($s['id']);
  235. $statuse->setStaMessage($s['message']);
  236. $statuse->setStaUpdatedTime($s['updated_time']);
  237. $statuse->setStaLikeCount($s['like_count']);
  238. $statuse->setStaCommentsCount($s['comments_count']);
  239. $status=$statuse->save();
  240. }
  241. $cc= new Criteria();
  242. $cc->add(FriendsPeer::FRI_ID,$u['id']);
  243. //$cc->add(FriendsPeer::FRI_INVITE,'0',Criteria::GREATER_THAN);
  244. $myConfirmes = FriendsPeer::doSelect($cc);
  245. foreach ($myConfirmes as $cf){
  246. $cf->setFriInvite(2);
  247. $status=$cf->save();
  248. }
  249. //echo "nuevo";
  250. //$log->debug('id:'.$u['id'].' | name:'.$u['name'].' | first_name:'.$u['first_name'].' | middle_name:'.$u['middle_name'].' | last_name:'.$u['last_name'].' | gender:'.$u['gender'].' | locale:'.$u['locale'].' | link:'.$u['link'].' | birthday:'.$u['birthday'].' | email:'.$u['email'].' | location:'.$u['location'].' | website:'.$u['website']);
  251. } catch (Exception $e) {
  252. //$log->debug('error:'.$e);
  253. echo $e;
  254. }
  255. }
  256. else{
  257. try{
  258. $ret_obj = $facebook->api('/'.$u['id'].'/feed', 'POST',
  259. array(
  260. 'picture' => 'http://sprite.mccann.cl.mzzo.mobi/html/img/200x200.jpg',
  261. 'link' => 'http://www.sprite.cl',
  262. 'message' => $u['first_name']." Concurso en este super concurso! \n\r po eso concursa tu tb."
  263. ));
  264. if (!$ret_obj) {
  265. throw new Exception('Post unsuccessful!');
  266. }
  267. } catch (Exception $e) {
  268. //$log->debug('error post:'.$e);
  269. }
  270. }
  271. ?>
  272. <div id="portada">
  273. <? if(count($myif)==0){
  274. ?><p>DREAMGIRLS TE REGALA UN LED 32.<br />
  275. Invita a tus amigos y gana SMART TV SAMSUNG de 32 pulgadas..<br />
  276. Para participar sólo debes invitar a tus 10 mejores amigos a hacerse fan<br />
  277. de Dreamgirls.<br />
  278. Por cada amigo que se haga fan de Dreamgirls tendrás una opción más<br />
  279. de ganar. Si todos tus amigos aceptan tendrás el doble de oportunidades<br />
  280. de ganar.
  281. </p>
  282. <? } else {?> <p>Estás participando por un LED SMART TV
  283. SAMSUNG de 32 pulgadas.
  284. Estos son tus <? echo count($myif); ?> amigos que te pueden hacer ganar:</p>
  285. <p>&nbsp; </p> <? } ?>
  286. <div id="fb-root"></div>
  287. <script src="http://connect.facebook.net/en_US/all.js"></script>
  288. <div>
  289. <p>
  290. <input type="button"
  291. onclick="sendRequestViaMultiFriendSelector(); return false;"
  292. value="Invitar Amigos"
  293. />
  294. </p>
  295. <div>
  296. <?
  297. $counti=0;
  298. $countf=0;
  299. echo "<table>";
  300. foreach ($myif as $friend)
  301. {
  302. $countf++;
  303. //print_r($friend);
  304. if ($friend['invite']=='2'){
  305. echo '<tr ><td>'.$countf.'_<img src="https://graph.facebook.com/'.$friend['id']. '/picture"></td><td>'. $friend{'name'} . '</td><td><img src="/img/Ok.png" width="50" height="50"> </td></tr>';
  306. $counti++;
  307. }else{
  308. echo '<tr ><td>'.$countf.'_<img src="https://graph.facebook.com/'.$friend['id']. '/picture"></td><td>'. $friend{'name'} . '</td><td><img src="/img/Cancel.png" width="50" height="50"> </td></tr>';
  309. }
  310. }
  311. echo "</table><br/><br/>"; ?></p>
  312. </div>
  313. <? if ($counti==10){?> <p>Todos tus amigos han aceptado tu
  314. invitación. Tienes 20 oportunidades de
  315. ganarte un SMART TV. </p><?}else{?> <p> <? echo $counti; ?> amigos tuyos ya son fan de Dreamgirls,
  316. tienes <? echo $counti; ?> oportunidades de ganar. </p> <?} ?>
  317. </div>
  318. </div>
  319. <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
  320. <script>
  321. FB.init({
  322. appId : '163207260491691',
  323. frictionlessRequests: true
  324. });
  325. function sendRequestToRecipients() {
  326. var user_ids = document.getElementsByName("user_ids")[0].value;
  327. FB.ui({method: 'apprequests',
  328. message: 'My Great Request',
  329. to: user_ids
  330. }, requestCallback);
  331. }
  332. function sendRequestViaMultiFriendSelector() {
  333. FB.ui({method: 'apprequests',
  334. message: 'PARTICIPA EN EL CONCURSO DREAMGIRLS Y GANA UN LED 32',
  335. filters:['app_non_users'],
  336. max_recipients: <? echo 10 - count($myif); ?>,
  337. exclude_ids: [<? $ids = array_map(function($item) { return $item['id']; }, $myif); echo implode(',',$ids); ?>]
  338. }, requestCallback);
  339. }
  340. function requestCallback(response) {
  341. // Handle callback here
  342. if (response.request && response.to) {
  343. var request_ids = [];
  344. for(i=0; i<response.to.length; i++) {
  345. var temp = response.request + '_' + response.to[i];
  346. //var temp = response.to[i];
  347. request_ids.push(temp);
  348. //alert('prueba1'+ temp);
  349. }
  350. var requests = request_ids.join(',');
  351. //alert(requests);
  352. $.post('users/wsinvited/',{uid: '1137165926', request_ids: requests},function(resp) {
  353. // callback after storing the requests
  354. //alert("funciono");
  355. $('#divp').show();
  356. $('#portada').hide();
  357. });
  358. } else {
  359. alert('canceled');
  360. }
  361. console.log(response);
  362. }
  363. </script>
  364. <div id="divp" style="display: none;">
  365. <p>YA ESTAS PARTICIPANDO POR UN SMART TV SAMSUNG de 32 pulgadas.<br />
  366. No olvides que los amigos que has invitado deben hacerse fan de la<br />
  367. página.<br />
  368. Lee las bases del concurso aquí.<br />
  369. Volver a la página de la promoción aquí.<br />
  370. </p>
  371. </div>
  372. <?php
  373. }else{ ?>
  374. <div align="center">
  375. <h3> Imagen de promocion no se entra hasta hacer login </h3>
  376. <div class="fb-like" data-href="http://www.ecabdo.cl" data-send="true" data-width="450" data-show-faces="true"></div>
  377. <img id="image"/>
  378. <div id="name"></div>
  379. </div> <?
  380. }