Source for file folders_subscribe.php

Documentation is available at folders_subscribe.php

  1. <?php
  2. /**
  3. * folders_subscribe.php
  4. *
  5. * Subscribe and unsubcribe from folders.
  6. * Called from folders.php
  7. *
  8. * @copyright 1999-2020 The SquirrelMail Project Team
  9. * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  10. * @version $Id: folders_subscribe.php 14840 2020年01月07日 07:42:38Z pdontthink $
  11. * @package squirrelmail
  12. */
  13. /** This is the folders_subscribe page */
  14. define ('PAGE_NAME', 'folders_subscribe');
  15. /**
  16. * Path for SquirrelMail required files.
  17. * @ignore
  18. */
  19. define ('SM_PATH','../');
  20. /* SquirrelMail required files. */
  21. require_once(SM_PATH . 'include/validate.php');
  22. require_once(SM_PATH . 'functions/global.php');
  23. require_once(SM_PATH . 'functions/imap.php');
  24. require_once(SM_PATH . 'functions/display_messages.php');
  25. /* globals */
  26. sqgetGlobalVar ('key', $key, SQ_COOKIE );
  27. sqgetGlobalVar ('username', $username, SQ_SESSION );
  28. sqgetGlobalVar ('onetimepad',$onetimepad, SQ_SESSION );
  29. sqgetGlobalVar ('method', $method, SQ_GET );
  30. sqgetGlobalVar ('mailbox', $mailbox, SQ_POST );
  31. if (!sqgetGlobalVar ('smtoken',$submitted_token, SQ_POST )) {
  32. $submitted_token = '';
  33. }
  34. /* end globals */
  35. // first, validate security token
  36. sm_validate_security_token ($submitted_token, -1, TRUE);
  37. $location = get_location ();
  38. if (!isset($mailbox) || !isset($mailbox[0]) || $mailbox[0] == '') {
  39. header ("Location: $location/folders.php");
  40. exit(0);
  41. }
  42. global $imap_stream_options; // in case not defined in config
  43. $imapConnection = sqimap_login ($username, $key, $imapServerAddress, $imapPort, 0, $imap_stream_options);
  44. if ($method == 'sub') {
  45. if($no_list_for_subscribe && $imap_server_type == 'cyrus') {
  46. /* Cyrus, atleast, does not typically allow subscription to
  47. * nonexistent folders (this is an optional part of IMAP),
  48. * lets catch it here and report back cleanly. */
  49. if(!sqimap_mailbox_exists ($imapConnection, $mailbox[0])) {
  50. header ("Location: $location/folders.php?success=subscribe-doesnotexist");
  51. sqimap_logout ($imapConnection);
  52. exit(0);
  53. }
  54. }
  55. for ($i=0; $i < count ($mailbox); $i++) {
  56. $mailbox[$i] = trim ($mailbox[$i]);
  57. sqimap_subscribe ($imapConnection, $mailbox[$i]);
  58. }
  59. $success = 'subscribe';
  60. } else {
  61. for ($i=0; $i < count ($mailbox); $i++) {
  62. $mailbox[$i] = trim ($mailbox[$i]);
  63. sqimap_unsubscribe ($imapConnection, $mailbox[$i]);
  64. }
  65. $success = 'unsubscribe';
  66. }
  67. sqimap_logout ($imapConnection);
  68. header ("Location: $location/folders.php?success=$success");

Documentation generated on 2020年1月13日 04:24:38 +0100 by phpDocumentor 1.4.3

AltStyle によって変換されたページ (->オリジナル) /