Changeset 68 for trunk/WordPress/plugin/transposh/transposh.php
- Timestamp:
- 03/17/2009 09:07:25 AM (3 years ago)
- File:
-
- 1 edited
-
trunk/WordPress/plugin/transposh/transposh.php (modified) (19 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/WordPress/plugin/transposh/transposh.php
r67 r68 42 42 43 43 //Database version 44 define("DB_VERSION", "1.0 1");44 define("DB_VERSION", "1.02"); 45 45 46 46 //Constant used as key in options database … … 221 221 * Fetch translation from db or cache. 222 222 * Returns the translated string or NULL if not available. 223 * TODO: // will an array work? 223 224 */ 224 225 function fetch_translation($original) … … 230 231 if(ENABLE_APC && function_exists('apc_fetch')) 231 232 { 232 $cached = apc_fetch($original . $lang, $rc);233 $cached = apc_fetch($original .'___'. $lang, $rc); 233 234 if($rc === TRUE) 234 235 { … … 243 244 if($row !== FALSE) 244 245 { 245 $translated = $row->translated;246 $translated = stripslashes($translated);247 248 logger("db result for $original >>> $translated ($lang)" , 3);246 $translated_text = stripslashes($row->translated); 247 $translated = array($translated_text, $row->source); 248 249 logger("db result for $original >>> $translated_text ($lang) ({$row->source})" , 3); 249 250 } 250 251 … … 260 261 261 262 //update cache 262 $rc = apc_store($original . $lang, $cache_entry, 3600);263 $rc = apc_store($original .'___'. $lang, $cache_entry, 3600); 263 264 if($rc === TRUE) 264 265 { … … 298 299 $js .= "\n<script type=\"text/javascript\" src=\"$overlib_dir/overlibmws_shadow.js\"></script>"; 299 300 300 $js .= "\n<script type=\"text/javascript\" src=\"$plugin_url/js/transposh.js\"></script>\n"; 301 $js .= "\n<script type=\"text/javascript\" src=\"http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js\"></script>\n"; 302 $js .= "\n<script type=\"text/javascript\" src=\"http://www.google.com/jsapi\"></script>\n"; 303 $js .= "\n<script type=\"text/javascript\">google.load(\"language\", \"1\");</script>\n"; 301 $js .= "\n<script type=\"text/javascript\" src=\"$plugin_url/js/transposh.js\"></script>"; 302 $js .= "\n<script type=\"text/javascript\" src=\"http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js\"></script>"; 303 $js .= "\n<script type=\"text/javascript\" src=\"http://www.google.com/jsapi\"></script>"; 304 $js .= "\n<script type=\"text/javascript\">google.load(\"language\", \"1\");</script>"; 305 global $lang, $home_url; 306 $post_url = $home_url . '/index.php'; 307 $js .= "\n<script type=\"text/javascript\">var transposh_post_url='$post_url';var transposh_target_lang='$lang';$(document).ready(function() {do_auto_translate();});</script>"; 304 308 305 309 echo $js; … … 313 317 placed within the img tag for use on client side operation (jquery) 314 318 */ 315 function get_img_tag($original, $translation, $s egment_id, $is_translated = FALSE)319 function get_img_tag($original, $translation, $source, $segment_id, $is_translated = FALSE) 316 320 { 317 321 global $plugin_url, $lang, $home_url; … … 330 334 } 331 335 336 if ($source == 1) { 337 $add_img = "_auto"; 338 } 339 332 340 $img = "<img src=\"$plugin_url/translate$add_img.png\" alt=\"translate\" id=\"" . IMG_PREFIX . "$segment_id\" 333 onclick=\"translate_dialog('$original','$translation','$ lang','$url', '$segment_id'); return false;\"341 onclick=\"translate_dialog('$original','$translation','$segment_id'); return false;\" 334 342 onmouseover=\"hint('$original'); return true;\" 335 343 onmouseout=\"nd()\" />"; … … 395 403 $translation = $_POST['translation']; 396 404 $lang = $_POST['lang']; 405 $source = $_POST['source']; 397 406 398 407 if(!isset($original) || !isset($translation) || !isset($lang)) 399 408 { 400 logger("Enter " . __FILE__ . " missing params: $original , $translation, $lang," . 401 $ref, 0); 409 logger("Enter " . __FILE__ . " missing params: $original , $translation, $lang," . $ref, 0); 402 410 return; 403 411 } … … 413 421 $translation = $wpdb->escape(htmlspecialchars(stripslashes(urldecode($translation)))); 414 422 415 $update = "REPLACE INTO $table_name (original, translated, lang) 416 VALUES ('" . $original . "','" . $translation . "','" . $lang . "')"; 423 //TODO: Check more escaping... 424 425 $update = "REPLACE INTO $table_name (original, translated, lang, source) 426 VALUES ('" . $original . "','" . $translation . "','" . $lang . "','" . $source . "')"; 417 427 418 428 $result = $wpdb->query($update); … … 420 430 if($result !== FALSE) 421 431 { 422 update_transaction_log($original, $translation, $lang );432 update_transaction_log($original, $translation, $lang, $source); 423 433 424 434 //Delete entry from cache 425 435 if(ENABLE_APC && function_exists('apc_store')) 426 436 { 427 apc_delete($original . $lang);437 apc_delete($original .'___'. $lang); 428 438 } 429 439 logger("Inserted to db '$original' , '$translation', '$lang' " , 3); … … 443 453 * 444 454 */ 445 function update_transaction_log(&$original, &$translation, &$lang )455 function update_transaction_log(&$original, &$translation, &$lang, $source) 446 456 { 447 457 global $wpdb, $user_ID; … … 458 468 } 459 469 460 $log = "INSERT INTO ".$wpdb->prefix.TRANSLATIONS_LOG." (original, translated, lang, translated_by )461 VALUES ('" . $original . "','" . $translation . "','" . $lang . "','".$loguser."' )";470 $log = "INSERT INTO ".$wpdb->prefix.TRANSLATIONS_LOG." (original, translated, lang, translated_by, source) 471 VALUES ('" . $original . "','" . $translation . "','" . $lang . "','".$loguser."','".$source."')"; 462 472 463 473 $result = $wpdb->query($log); … … 465 475 if($result === FALSE) 466 476 { 467 logger("Error !!! failed to update transaction log: $loguser, $original ,$translation, $lang" , 0); 468 } 469 470 } 471 477 logger("Error !!! failed to update transaction log: $loguser, $original ,$translation, $lang, $source" , 0); 478 } 479 } 472 480 473 481 /* … … 510 518 } 511 519 512 513 520 /* 514 521 * Page generation completed - flush buffer. … … 518 525 ob_flush(); 519 526 } 520 521 527 522 528 /* … … 580 586 return $qvars; 581 587 } 582 583 588 584 589 /* … … 609 614 dbDelta($sql); 610 615 616 // TODO: remove this? 611 617 //Verify that newly created table is ready for use. 612 618 //$insert = "INSERT INTO " . $table_name . " (original, translated, lang) " . … … 634 640 translated VARCHAR(256), 635 641 translated_by VARCHAR(15), 642 source TINYINT NOT NULL, 636 643 timestamp TIMESTAMP, 637 644 PRIMARY KEY (original, lang, timestamp)) ";
Note: See TracChangeset
for help on using the changeset viewer.
