Changeset 4116
- Timestamp:
- 2003-04-09T15:52:04+12:00 (21 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl/src/recpt/langaction.cpp
r4107 r4116 24 24 *********************************************************************/ 25 25 26 #include <ctype.h> 26 27 #include <stdio.h> 27 28 #include <fstream.h> … … 227 228 } 228 229 230 // Case fold the target language 231 for (int i = 0; i < strlen(lang.getcstr()); i++) { 232 lang[i] = tolower(lang[i]); 233 } 234 235 // Make sure the source and target languages are different! 236 if (strcmp(baselanguage.getcstr(), lang.getcstr()) == 0) { 237 logout << "Same language!" << endl; 238 args["p"] = "translang"; 239 pageno = "picklanguage"; 240 define_webpage(disp, protos, logout, pageno, lang, dir, pagenos, text, baselanguage, true); 241 return; 242 } 243 229 244 // logout << "Lang: " << lang << " Baselanguage: " << baselanguage << endl; 230 245 text_t translation = baselanguage + "-" + lang; … … 254 269 } 255 270 256 define_webpage(disp, protos, logout, pageno, lang, trans_dir, pagenos, text, baselanguage );271 define_webpage(disp, protos, logout, pageno, lang, trans_dir, pagenos, text, baselanguage, false); 257 272 return; 258 273 } … … 277 292 logout << "@ the 1st pg\n"; 278 293 cmd = "perl " + filename_cat(gsdlhome, "bin", "script", "picklanguage.pl"); 279 logout << cmd << " PICKLANGUAGE\n" <<endl;294 logout << cmd << endl; 280 295 if(gsdl_system(cmd,true,logout) != 0) 281 296 return; 282 define_webpage(disp, protos, logout, pageno, lang, dir, pagenos, text, baselanguage );297 define_webpage(disp, protos, logout, pageno, lang, dir, pagenos, text, baselanguage, false); 283 298 284 299 return; … … 326 341 327 342 pagenos = get_pagenos(trans_dir, lang, logout); 328 define_webpage(disp, protos, logout, pageno, lang, trans_dir, pagenos, text, baselanguage );343 define_webpage(disp, protos, logout, pageno, lang, trans_dir, pagenos, text, baselanguage, false); 329 344 } 330 345 … … 354 369 void langaction::define_webpage (displayclass &disp, 355 370 recptprotolistclass *protos, ostream &logout, 356 text_t pageno, text_t &lang, text_t &dir, 357 text_tarray &pagenos, text_t &text, text_t &baselanguage) { 371 text_t pageno, text_t &lang, text_t dir, 372 text_tarray &pagenos, text_t &text, text_t &baselanguage, 373 bool error) { 358 374 359 375 // produces HTML page with the current pages contents … … 375 391 text += "\n<input type=hidden name=\"p\" value=\"translang_"; 376 392 text += pageno; 377 text += "\"> \n";393 text += "\">"; 378 394 text += "\n<input type=hidden name=\"e\" value=\"_decodedcompressedoptions_\">"; 379 395 … … 387 403 text += " _textof_ "; 388 404 text += pagenos.size(); 389 text += "</strong></center><p><p>\n"; 405 text += "</strong></center>\n"; 406 407 for (text_tarray::iterator page_itr = pagenos.begin(); 408 page_itr != pagenos.end(); 409 page_itr++) { 410 411 if (*page_itr == pageno) { 412 page_itr++; 413 text_t temp2; 414 if (page_itr != pagenos.end()) 415 temp2 = *page_itr; 416 else 417 temp2 = "thankyou"; 418 419 text += "<a href=\"_gwcgi_?e=_compressedoptions_&a=lang&p=translang_"; 420 text += temp2; 421 text += "&baselanguage="; 422 text += baselanguage; 423 text += "&language="; 424 text += lang; 425 text += "\"><strong>"; 426 text += "NEXT>>"; 427 text += "</strong></a>\n"; 428 429 break; 430 } 431 else { 432 text += "<a href=\"_gwcgi_?e=_compressedoptions_&a=lang&p=translang_"; 433 text += *page_itr; 434 text += "&baselanguage="; 435 text += baselanguage; 436 text += "&language="; 437 text += lang; 438 text += "\"><strong>"; 439 text += *page_itr; 440 text += "</strong></a>\n"; 441 } 442 } 390 443 } 391 444 … … 397 450 } 398 451 readfile.close(); 399 452 if (pageno == "picklanguage" && error) { 453 text += "<center><strong>Please choose different source and target languages!</strong></center>"; 454 } 455 400 456 //if not a special case page display translation info 401 457 if ((pageno != "thankyou") && (pageno != "picklanguage") && (pageno != "fromsearch")) { … … 406 462 text += "</strong><br>\n"; 407 463 408 text_t temp2 = ""; 409 410 for (text_tarray::iterator page_itr = pagenos.begin(); 411 page_itr != pagenos.end(); 412 page_itr++) { 413 414 if (*page_itr == pageno) { 415 page_itr++; 416 if (page_itr != pagenos.end()) 417 temp2 = *page_itr; 418 else 419 temp2 = "thankyou"; 464 for (text_tarray::iterator page_itr = pagenos.begin(); 465 page_itr != pagenos.end(); 466 page_itr++) { 467 468 if (*page_itr == pageno) { 469 page_itr++; 470 text_t temp2; 471 if (page_itr != pagenos.end()) 472 temp2 = *page_itr; 473 else 474 temp2 = "thankyou"; 420 475 421 422 423 424 425 426 427 428 429 430 431 432 }433 else {434 435 436 437 438 439 440 441 442 443 }444 }476 text += "<a href=\"_gwcgi_?e=_compressedoptions_&a=lang&p=translang_"; 477 text += temp2; 478 text += "&baselanguage="; 479 text += baselanguage; 480 text += "&language="; 481 text += lang; 482 text += "\"><strong>"; 483 text += "NEXT>>"; 484 text += "</strong></a>\n"; 485 486 break; 487 } 488 else { 489 text += "<a href=\"_gwcgi_?e=_compressedoptions_&a=lang&p=translang_"; 490 text += *page_itr; 491 text += "&baselanguage="; 492 text += baselanguage; 493 text += "&language="; 494 text += lang; 495 text += "\"><strong>"; 496 text += *page_itr; 497 text += "</strong></a>\n"; 498 } 499 } 445 500 } 446 501 … … 457 512 // set the formcontent as the content of the form-page 458 513 514 // logout << "Text: " << text; 515 459 516 disp.setmacro("formcontent", "translang", text); 460 517 … … 481 538 ostream &logout) { 482 539 text_t &arg_p = args["p"]; 483 540 // logout << "Arg P: " << arg_p << endl; 541 484 542 outconvertclass text2utf8; 485 543
Note:
See TracChangeset
for help on using the changeset viewer.