home *** CD-ROM | disk | FTP | other *** search
/ ftp.ee.pdx.edu / 2014.02.ftp.ee.pdx.edu.tar / ftp.ee.pdx.edu / oss / cvs-2004 / bahasa / web / email.php,v < prev    next >
Text File  |  2003-10-26  |  10KB  |  552 lines

  1. head    1.11;
  2. access;
  3. symbols
  4.     Initial:1.1.1.1 bule:1.1.1;
  5. locks; strict;
  6. comment    @# @;
  7.  
  8.  
  9. 1.11
  10. date    2003.10.26.01.53.10;    author bule;    state Exp;
  11. branches;
  12. next    1.10;
  13.  
  14. 1.10
  15. date    2003.10.20.00.21.45;    author bule;    state Exp;
  16. branches;
  17. next    1.9;
  18.  
  19. 1.9
  20. date    2003.10.18.00.33.41;    author bule;    state Exp;
  21. branches;
  22. next    1.8;
  23.  
  24. 1.8
  25. date    2003.10.17.00.39.36;    author bule;    state Exp;
  26. branches;
  27. next    1.7;
  28.  
  29. 1.7
  30. date    2003.10.06.00.39.26;    author bule;    state Exp;
  31. branches;
  32. next    1.6;
  33.  
  34. 1.6
  35. date    2003.10.01.06.51.29;    author bule;    state Exp;
  36. branches;
  37. next    1.5;
  38.  
  39. 1.5
  40. date    2003.09.11.05.28.22;    author bule;    state Exp;
  41. branches;
  42. next    1.4;
  43.  
  44. 1.4
  45. date    2003.09.04.07.26.59;    author bule;    state Exp;
  46. branches;
  47. next    1.3;
  48.  
  49. 1.3
  50. date    2003.08.21.06.18.07;    author bule;    state Exp;
  51. branches;
  52. next    1.2;
  53.  
  54. 1.2
  55. date    2003.08.19.19.05.16;    author bule;    state Exp;
  56. branches;
  57. next    1.1;
  58.  
  59. 1.1
  60. date    2003.08.12.19.18.23;    author bule;    state Exp;
  61. branches
  62.     1.1.1.1;
  63. next    ;
  64.  
  65. 1.1.1.1
  66. date    2003.08.12.19.18.23;    author bule;    state Exp;
  67. branches;
  68. next    ;
  69.  
  70.  
  71. desc
  72. @@
  73.  
  74.  
  75. 1.11
  76. log
  77. @*** empty log message ***
  78. @
  79. text
  80. @<?
  81. session_start();
  82. require_once("../php/Indonesia.php");
  83. require_once("../php/Web.php");
  84. //////////////////////////////////////////////////////////////////////////////
  85. //////////////////////////////////////////////////////////////////////////////
  86. // Project Name: Bahasa Indonesia Dictionary
  87. // Directory:    bahasa/web
  88. // File Name:    email.php
  89. // Author(s):    John L. Whiteman
  90. // Created:      June 23, 2003  
  91. // Modified:     October 20, 2003
  92. // Description:  The purpose of this unrestricted access PHP web 
  93. //               client page is allow a client to send you e-mail
  94. //               via a web interface. 
  95. // 
  96. // Copyright (c) 2003 John L. Whiteman
  97. //
  98. // Permission is herby granted, free of charge, to any person obtaining a 
  99. // copy of this software, data, and associated documentation files 
  100. // (the "Software"), to deal in the Software without restriction, 
  101. // including without limitation the rights to use, copy, modify, merge, 
  102. // publish, distribute, sublicense, and/or sell copies of Software, and to
  103. // permit persons to whom the Software is furnished to do so, subject to 
  104. // the following conditions:
  105. //
  106. // The above copyright notice and this permission notice shall be 
  107. // included in all copies or substantial portions of the Software.
  108. //
  109. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
  110. // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
  111. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  112. // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR 
  113. // ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHERE IN AN ACTION OF CONTRACT,
  114. // TORT OR OTHERWISE, ARISING IN THE SOFTWARE.  
  115. //////////////////////////////////////////////////////////////////////////////
  116. //////////////////////////////////////////////////////////////////////////////
  117. $web = new Web();
  118.  
  119. if (
  120. ($_SESSION['NODUP_SEND_EMAIL']) && 
  121. (isset($_POST['id']))) {
  122.  
  123.     if ($_SESSION['NODUP_SEND_EMAIL'] == $_POST['id']) {
  124.  
  125.         unset($_SESSION['NODUP_SEND_EMAIL']);
  126.  
  127.         $web->redirect("search.php");
  128.     }
  129. }
  130.  
  131. $indonesia = new Indonesia();
  132.  
  133. $status = $indonesia->get_dictionary_status();
  134.  
  135. if (
  136. ($status["status"] == 1) ||
  137. ($status["status"] == 2) ||
  138. ($status["status"] == 3)) {
  139.  
  140.     $web->redirect("offline.php");
  141.  
  142.     exit;
  143. }
  144. ?>
  145. <html>
  146. <head>
  147. <title>Bahasa Indonesia Dictionary: E-mail</title>
  148.  
  149. <link href="bahasa.css" rel="stylesheet" type="text/css">
  150.  
  151. <script type="text/javascript" src="bahasa.js"></script>
  152.  
  153. <script language="Javascript" type="text/javascript">
  154. <!--
  155. //////////////////////////////////////////////////////////////////////////////
  156. function verify() {
  157.  
  158.     email_adx = document.email.email_adx.value;
  159.  
  160.     email_adx = trim(email_adx);
  161.  
  162.     if (is_white_space(email_adx)) {
  163.  
  164.         alert(
  165.         "You must provide your e-mail address!");
  166.  
  167.         document.email.email_adx.focus();
  168.  
  169.         return(false);
  170.     }
  171.  
  172.     if (!is_email(email_adx)) {
  173.  
  174.         alert(
  175.         "Your e-mail address doesn't appear to be valid!");
  176.  
  177.         document.email.email_adx.focus();
  178.  
  179.         return(false);
  180.     }
  181.  
  182.     if (email_adx.length > 255) {
  183.  
  184.         alert(
  185.         "Your e-mail address doesn't appear to be valid! Too long.");
  186.  
  187.         document.email.email_adx.focus();
  188.  
  189.         return(false);
  190.     }
  191.  
  192.     subject = document.email.subject.value;
  193.  
  194.     subject = trim(subject);
  195.  
  196.     if (is_white_space(subject)) {
  197.  
  198.         alert(
  199.         "Please provide a subject in your e-mail!");
  200.  
  201.         document.email.subject.focus();
  202.  
  203.         return(false);
  204.     }
  205.  
  206.     if (subject.length > 255) {
  207.  
  208.         alert(
  209.         "Please keep your subject 255 characters or less!");
  210.  
  211.         document.email.subject.focus();
  212.  
  213.         return(false);
  214.     }
  215.  
  216.     message = document.email.message.value;
  217.  
  218.     message = trim(message);
  219.  
  220.     if (is_white_space(message)) {
  221.  
  222.         alert(
  223.         "Please provide a message in your e-mail!");
  224.  
  225.         document.email.message.focus();
  226.  
  227.         return(false);
  228.     }
  229.  
  230.     if (message.length > 500) {
  231.  
  232.         alert(
  233.         "Please keep your message 500 characters or less!");
  234.  
  235.         document.email.message.focus();
  236.  
  237.         return(false);
  238.     }
  239.  
  240.     return(true);
  241. }
  242. //////////////////////////////////////////////////////////////////////////////
  243. // -->
  244. </script>
  245. </head>
  246. <body>
  247. <?
  248. $web->show_logo("E-mail");
  249. ?>
  250.  
  251. <a class="menu" href="search.php">Search Dictionary</a>
  252.  | 
  253. <a class="menu" href="reference.php">Reference</a>
  254.  | 
  255. <a class="menu" href="request.php">Request a New Word</a>
  256.  | 
  257. <a class="menu" href="admin.php">Administration</a>
  258. <br><br>
  259.  
  260. <?
  261. if (
  262. (isset($_POST['email_adx'])) &&
  263. (isset($_POST['subject'])) &&
  264. (isset($_POST['message'])) && 
  265. (isset($_POST['id']))) {
  266.  
  267.     $errstr =
  268.     $indonesia->send_email(
  269.     $_POST['email_adx'], $_POST['subject'], 
  270.     $_POST['message'], $_SERVER['REMOTE_ADDR']); 
  271.  
  272.     if ($errstr != "") {
  273.  
  274.         print "<br><hr><b>${errstr}</b><hr><br>\n"; 
  275.  
  276.     } else {
  277.  
  278.         print "<br><hr><b>Your e-mail has been sent!</b><hr><br>\n"; 
  279.  
  280.         $_SESSION['NODUP_SEND_EMAIL'] = $_POST['id'];
  281.     }
  282.  
  283. } else { 
  284.  
  285.     show_email_form();
  286. }
  287.  
  288. $web->show_footer();
  289. ?>
  290. </body>
  291. </html>
  292. <?
  293. //////////////////////////////////////////////////////////////////////////////
  294. function show_email_form() {
  295.  
  296.     $id = uniqid(rand(), true);
  297.  
  298.     print <<<EOFSEF
  299. <form name="email" method="post" onsubmit='return verify()'>
  300. <table cellpadding="3" cellspacing="3" border="0">
  301. <tr>
  302. <td>Your E-mail Address:</td>
  303. <td>
  304. <input type="text" name="email_adx" size="35" maxlength="255">
  305. </td>
  306. </tr><tr>
  307. <td>Subject:</td>
  308. <td>
  309. <input type="text" name="subject" size="50" maxlength="255">
  310. </td>
  311. </tr><tr>
  312. <td colspan="2> align="left">Message (500 characters maximum):</td>
  313. </tr><tr>
  314. <td colspan="2> align="left">
  315. <textarea name="message" cols="55" rows="10" wrap="soft"></textarea> 
  316. </td>
  317. </tr><tr>
  318. <td colspan="2" align="right">
  319. <input type="reset" value="Clear Form">
  320.    
  321. <input type="submit" value="Send E-mail!">
  322. </td>
  323. </tr>
  324. </table>
  325. <input type="hidden" name="id" value="${id}"> 
  326. </form>
  327. <script language="Javascript" type="text/javascript">
  328. document.email.email_adx.focus();
  329. </script>
  330. EOFSEF;
  331.  
  332.     return;
  333. }
  334. //////////////////////////////////////////////////////////////////////////////
  335. //////////////////////////////////////////////////////////////////////////////
  336. ?>
  337. @
  338.  
  339.  
  340. 1.10
  341. log
  342. @*** empty log message ***
  343. @
  344. text
  345. @d12 1
  346. a12 1
  347. // Modified:     October 19, 2003
  348. d172 1
  349. a172 1
  350. <a href="search.php">Search Dictionary</a>
  351. d174 1
  352. a174 1
  353. <a href="reference.php">Reference</a>
  354. d176 1
  355. a176 1
  356. <a href="request.php">Request a New Word</a>
  357. d178 1
  358. a178 1
  359. <a href="admin.php">Administration</a>
  360. @
  361.  
  362.  
  363. 1.9
  364. log
  365. @*** empty log message ***
  366. @
  367. text
  368. @d12 1
  369. a12 1
  370. // Modified:     October 17, 2003
  371. d68 3
  372. a70 3
  373. <title>
  374. Bahasa Indonesia Dictionary: E-mail 
  375. </title>
  376. @
  377.  
  378.  
  379. 1.8
  380. log
  381. @*** empty log message ***
  382. @
  383. text
  384. @d12 1
  385. a12 1
  386. // Modified:     October 15, 2003
  387. a70 3
  388. <script language="Javascript" type="text/javascript">
  389. //////////////////////////////////////////////////////////////////////////////
  390. function is_email(token) {
  391. d72 1
  392. a72 1
  393.     var regexp = /^\w+([\.-]?\w+)*@@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
  394. d74 2
  395. a75 29
  396.     if (regexp.test(token)) return(true);
  397.  
  398.     return(false);
  399. }
  400. //////////////////////////////////////////////////////////////////////////////
  401. function is_white_space(stoken) {
  402.  
  403.     if (stoken == null) return(true);
  404.  
  405.     if (stoken == '') return(true);
  406.  
  407.     if (stoken == "") return(true);
  408.  
  409.     return(false);
  410. }
  411. //////////////////////////////////////////////////////////////////////////////
  412. function trim(stoken) {
  413.  
  414.     if (is_white_space(stoken)) {
  415.  
  416.         return(stoken);
  417.     }
  418.  
  419.     stoken = stoken.replace(/^\s*/, "");
  420.  
  421.     stoken = stoken.replace(/\s*$/, "");
  422.  
  423.     return(stoken);
  424. }
  425. d164 1
  426. @
  427.  
  428.  
  429. 1.7
  430. log
  431. @*** empty log message ***
  432. @
  433. text
  434. @d12 1
  435. a12 1
  436. // Modified:     October 05, 2003
  437. d237 2
  438. @
  439.  
  440.  
  441. 1.6
  442. log
  443. @*** empty log message ***
  444. @
  445. text
  446. @d12 1
  447. a12 1
  448. // Modified:     September 30, 2003
  449. d197 3
  450. a199 2
  451.  
  452. <h2>Bahasa Indonesia Dictionary: E-mail</h2>
  453. @
  454.  
  455.  
  456. 1.5
  457. log
  458. @*** empty log message ***
  459. @
  460. text
  461. @d12 1
  462. a12 1
  463. // Modified:     September 05, 2003
  464. d41 1
  465. a41 1
  466. (session_is_registered("NODUP_SEND_EMAIL")) && 
  467. d46 1
  468. a46 1
  469.         session_unregister("NODUP_SEND_EMAIL");
  470. d229 1
  471. a229 3
  472.         $NODUP_SEND_EMAIL = $_POST['id'];
  473.  
  474.         session_register("NODUP_SEND_EMAIL");
  475. @
  476.  
  477.  
  478. 1.4
  479. log
  480. @*** empty log message ***
  481. @
  482. text
  483. @d12 1
  484. a12 1
  485. // Modified:     September 03, 2003
  486. d201 7
  487. @
  488.  
  489.  
  490. 1.3
  491. log
  492. @*** empty log message ***
  493. @
  494. text
  495. @d12 1
  496. a12 1
  497. // Modified:     August 19, 2003
  498. d200 1
  499. a200 1
  500. <a href="search.php">Search</a>
  501. @
  502.  
  503.  
  504. 1.2
  505. log
  506. @*** empty log message ***
  507. @
  508. text
  509. @d40 5
  510. a44 1
  511. if (session_is_registered("NODUP_SEND_EMAIL")) {
  512. d46 1
  513. a46 1
  514.     session_unregister("NODUP_SEND_EMAIL");
  515. d48 2
  516. a49 1
  517.     $web->redirect("search.php");
  518. d206 2
  519. a207 1
  520. (isset($_POST['message']))) {
  521. d222 1
  522. a222 2
  523.  
  524.         $NODUP_SEND_EMAIL = 1;
  525. d238 1
  526. d265 4
  527. a268 1
  528. </tr></table></form>
  529. @
  530.  
  531.  
  532. 1.1
  533. log
  534. @Initial revision
  535. @
  536. text
  537. @d5 33
  538. a37 1
  539.  
  540. a269 2
  541.  
  542.  
  543. @
  544.  
  545.  
  546. 1.1.1.1
  547. log
  548. @Bahasa Indonesia Dictionary
  549. @
  550. text
  551. @@
  552.