function displayTranslatedTweet($src_lang, $src_lang_value = '', $tgt_lang, $tgt_lang_value = '', $message_id)
 {
     //configuration parameters:
     $config_params = Config::getConfigParams();
     $css = $config_params['css'];
     $tweet_size_max_google = $config_params['tweet_size_max_google'];
     $hostname = $config_params['hostname'];
     $doctype = $config_params['doctype'];
     $html_attribute = $config_params['html_attribute'];
     //$header = $config_params['header'];//
     //$banner = $config_params['banner'];//
     $banner = banner('', 'banner');
     //(user, banner_class)
     $footer = $config_params['footer'];
     //
     $docroot = $config_params['docroot'];
     $godaddy_analytics = $config_params['godaddy_analytics'];
     $show_maintenance_page = $config_params['show_maintenance_page'];
     if ($show_maintenance_page == 1) {
         maintenance_page();
     }
     $url = $hostname . "tweet_display.php?message_id={$message_id}&mthd=displayTweet";
     $url_rewrite = "{$hostname}/{$message_id}";
     $src_lang_value = $this->language_list[$src_lang];
     $tgt_lang_value = $this->language_list[$tgt_lang];
     //get src_tweet from model;
     $model = new TwextraModel();
     $result = $model->readTweet($message_id, false);
     $src_tweet = $result['tweet'];
     //embed @replies for all cases
     $pattern_to_embed = 'at_reply';
     $embed = new EmbedInLink($src_tweet, $pattern_to_embed);
     $src_tweet = $embed->embedPattern();
     //embed links for all cases (Twitter, LinkedIn, Twextra)
     $pattern_to_embed = 'link';
     $embed = new EmbedInLink($src_tweet, $pattern_to_embed);
     $src_tweet = $embed->embedPattern();
     $created = $result['created'];
     $controller = new TwextraController();
     $prefix = $controller->getPrefix($src_tweet, $message_id);
     $header = header_html($prefix);
     //
     //get tgt_tweet from google service
     //CHECK MAX SIZE, AND FREQUENCY OF TRANSLATIONS..
     if (trim($src_tweet) != '') {
         $tgt_tweet = $this->translate($src_lang, $tgt_lang, $src_tweet);
         $tweet_object = json_decode($tgt_tweet);
         if (isset($tweet_object->responseData->translatedText)) {
             $tgt_tweet = $tweet_object->responseData->translatedText;
         } else {
             $tgt_tweet = '';
         }
     } else {
         $tgt_tweet = '';
         $url = '';
     }
     header("Pragma: no-cache");
     header("cache-Control: no-cache, must-revalidate");
     // HTTP/1.1
     header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
     // Date in the past
     $message = '';
     $message .= $doctype;
     $message .= "<html {$html_attribute} >\n";
     $message .= $header;
     $message .= "<body>";
     $message .= "<div class='p3_wrapper'>";
     $message .= "<div class='page'>";
     $message .= $banner;
     $message .= "<div class='p3main'>\n";
     $message .= "<div class='p3main_inner'>\n";
     $message .= "<div class='p3main_text'>\n";
     $message .= "<div class='p3tweet_header'>\n";
     $message .= "<div class='p3count'> Created: " . $created . " (Pacific Time)</div>\n";
     $message .= "<div style='float:left;'>\n";
     $message .= "<div class='p3tweet_url'>Message URL: </div>\n";
     $message .= "<div class='p3url_outer'><a href='{$url_rewrite}'>" . $url_rewrite . "</a></div>\n";
     $message .= "</div>\n";
     $message .= "<br style='clear:both;' />\n";
     $message .= "</div>\n";
     $message .= "<div>";
     $message .= "<div class='p3tweet_title'>Source language ({$src_lang_value}):</div>\n";
     $message .= "<div style='float:right; text-align:center;padding-bottom:5px;'><a href='{$hostname}' >\n        New</a> | <a href='{$hostname}/index.php?message_id={$message_id}'>Edit</a></div>";
     $message .= "<br style='clear:both;' />";
     $message .= "</div>";
     $message .= "<div class='p3tweet'>{$src_tweet}</div>";
     $message .= "<div class='p3tweet_title_tr'>Target language ({$tgt_lang_value}):</div>\n";
     $message .= "<div class='p3tweet'>{$tgt_tweet}</div>";
     $message .= "</div>\n";
     //main_text
     $message .= "<div class='p3main_form'>\n";
     $message .= "<div class='p3main_form_inner'>\n";
     $message .= "<form method='post' action='{$hostname}/router.php' name='tweet_translate' >\n";
     $message .= "<div class='p3main_trans'>\n";
     $message .= "Translate again: \n";
     $message .= "</div>\n";
     $message .= "<div class='p3_src_tgt_tran'>";
     $message .= "<div class='p3main_src' >Source Language: \n";
     $message .= "<select name='src_lang'>\n";
     $selected = '';
     foreach ($this->language_list as $key => $val) {
         if ($src_lang == $key) {
             $selected = "selected='selected'";
         }
         $option = "<option value='{$key}' {$selected} >{$val}</option>\n";
         $message .= $option;
         $selected = '';
     }
     $message .= "</select>\n";
     $message .= "</div>\n";
     $message .= "<div class='p3main_tgt' >Target Language: \n";
     $message .= "<select name='tgt_lang'>\n";
     foreach ($this->language_list as $key => $val) {
         $option = "<option value='{$key}'>{$val}</option>\n";
         $message .= $option;
     }
     $message .= "</select>\n";
     $message .= "<input type='hidden' name='route' value='tweet_translate' ></input>\n";
     $message .= "<input type='hidden' name='url' value='{$url}' ></input>\n";
     $message .= "<input type='hidden' name='message_id' value='{$message_id}' ></input>\n";
     $message .= "</div>\n";
     $message .= "<div class='p3sub'>\n";
     $message .= "<input class='button_translate' type='submit' name='submit' value='Translate' />\n";
     $message .= "</div>\n";
     //p3sub
     $message .= "<br style='clear:both;' />";
     $message .= "</div>";
     //p3_src_tgt_tran
     $message .= "</form>\n";
     $message .= "<br style='clear:both' />\n";
     $message .= "</div>\n";
     //p3main_form_inner
     $message .= "</div>\n";
     //p3main_form
     $message .= "</div>\n";
     //main_inner
     $message .= "</div>\n";
     //main
     $message .= $footer;
     $message .= "</div>\n";
     //page
     $message .= "</div>\n";
     //wrapper
     $message .= $godaddy_analytics;
     $message .= "</body></html>\n";
     echo $message;
 }
Example #2
0
 function set_prefixes()
 {
     //deprecated
     $link = DbConnect::getInstance();
     $script_path = __FUNCTION__;
     $command = "SET NAMES 'utf8'";
     $stmt = mysqli_prepare($link, $command);
     mysqli_stmt_execute($stmt);
     //select a subset for performance reasons and invoke multiple times
     //$command = "select url, tweet from message where prefix is null";
     $command = "select url, tweet from message where prefix is null limit 0,500";
     if ($stmt = mysqli_prepare($link, $command)) {
         mysqli_stmt_execute($stmt);
         mysqli_stmt_store_result($stmt);
         mysqli_stmt_bind_result($stmt, $message_id, $tweet);
         while (mysqli_stmt_fetch($stmt)) {
             $tweet_message_id[] = array('tweet' => $tweet, 'message_id' => $message_id);
         }
     }
     foreach ($tweet_message_id as $entry) {
         $tweet = $entry['tweet'];
         $message_id = $entry['message_id'];
         $controller = new TwextraController();
         $prefix = $controller->getPrefix($tweet, $message_id);
         //prefix
         //now write back the prefixes..
         $command = "update message set prefix=? where url=?";
         if ($stmt = mysqli_prepare($link, $command)) {
             mysqli_stmt_bind_param($stmt, 'ss', $prefix, $message_id);
             mysqli_stmt_execute($stmt);
             mysqli_stmt_store_result($stmt);
             //mysqli_stmt_bind_result ( $stmt, $message_id, $tweet );
         }
     }
     mysqli_stmt_close($stmt);
     return;
 }