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; }
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; }