499e0ff326b0c8a8d3fe43c5ccb5e0a2ca94b318
[civicrm-core.git] / CRM / Mailing / Form / Browse.php
1 <?php
2
3 /*
4 +--------------------------------------------------------------------+
5 | CiviCRM version 4.4 |
6 +--------------------------------------------------------------------+
7 | Copyright CiviCRM LLC (c) 2004-2013 |
8 +--------------------------------------------------------------------+
9 | This file is a part of CiviCRM. |
10 | |
11 | CiviCRM is free software; you can copy, modify, and distribute it |
12 | under the terms of the GNU Affero General Public License |
13 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
14 | |
15 | CiviCRM is distributed in the hope that it will be useful, but |
16 | WITHOUT ANY WARRANTY; without even the implied warranty of |
17 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
18 | See the GNU Affero General Public License for more details. |
19 | |
20 | You should have received a copy of the GNU Affero General Public |
21 | License and the CiviCRM Licensing Exception along |
22 | with this program; if not, contact CiviCRM LLC |
23 | at info[AT]civicrm[DOT]org. If you have questions about the |
24 | GNU Affero General Public License or the licensing of CiviCRM, |
25 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
26 +--------------------------------------------------------------------+
27 */
28
29 /**
30 *
31 * @package CRM
32 * @copyright CiviCRM LLC (c) 2004-2013
33 * $Id$
34 *
35 */
36
37 /**
38 * Build the form for disable mail feature
39 *
40 * @param
41 *
42 * @return void
43 * @access public
44 */
45 class CRM_Mailing_Form_Browse extends CRM_Core_Form {
46
47 /**
48 * Heart of the viewing process. The runner gets all the meta data for
49 * the contact and calls the appropriate type of page to view.
50 *
51 * @return void
52 * @access public
53 *
54 */
55 function preProcess() {
56 $this->_mailingId = CRM_Utils_Request::retrieve('mid', 'Positive', $this);
57 $this->_action = CRM_Utils_Request::retrieve('action', 'String', $this);
58
59 // check for action permissions.
60 if (!CRM_Core_Permission::checkActionPermission('CiviMail', $this->_action)) {
61 CRM_Core_Error::fatal(ts('You do not have permission to access this page'));
62 }
63
64 $mailing = new CRM_Mailing_BAO_Mailing();
65 $mailing->id = $this->_mailingId;
66 $subject = '';
67 if ($mailing->find(TRUE)) {
68 $subject = $mailing->subject;
69 }
70 $this->assign('subject', $subject);
71 }
72
73 /**
74 * Function to actually build the form
75 *
76 * @return void
77 * @access public
78 */
79
80 public function buildQuickForm() {
81 $this->addButtons(array(
82 array(
83 'type' => 'next',
84 'name' => ts('Confirm'),
85 'isDefault' => TRUE,
86 ),
87 array(
88 'type' => 'cancel',
89 'name' => ts('Cancel'),
90 ),
91 )
92 );
93 }
94
95 /**
96 *
97 * @access public
98 *
99 * @return void
100 */
101 public function postProcess() {
102 if ($this->_action & CRM_Core_Action::DELETE) {
103 CRM_Mailing_BAO_Mailing::del($this->_mailingId);
104 }
105 elseif ($this->_action & CRM_Core_Action::DISABLE) {
106 CRM_Mailing_BAO_MailingJob::cancel($this->_mailingId);
107 }
108 elseif ($this->_action & CRM_Core_Action::RENEW) {
109 //set is_archived to 1
110 CRM_Core_DAO::setFieldValue('CRM_Mailing_DAO_Mailing', $this->_mailingId, 'is_archived', TRUE);
111 }
112 }
113 //end of function
114 }
115