当前位置: 首页>>代码示例>>PHP>>正文


PHP Attachment::addFiles方法代码示例

本文整理汇总了PHP中Attachment::addFiles方法的典型用法代码示例。如果您正苦于以下问题:PHP Attachment::addFiles方法的具体用法?PHP Attachment::addFiles怎么用?PHP Attachment::addFiles使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Attachment的用法示例。


在下文中一共展示了Attachment::addFiles方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: createFromPost


//.........这里部分代码省略.........
                 continue;
             }
             $users[] = $manager['cam_usr_id'];
             self::addUserAssociation($usr_id, $issue_id, $manager['cam_usr_id'], false);
             History::add($issue_id, $usr_id, 'issue_auto_assigned', 'Issue auto-assigned to {assignee} (TAM)', array('assignee' => User::getFullName($manager['cam_usr_id'])));
         }
         $has_TAM = true;
     }
     // now add the user/issue association (aka assignments)
     if (!empty($data['users']) && count($data['users']) > 0) {
         foreach ($data['users'] as $user) {
             $actions = Notification::getDefaultActions($issue_id, User::getEmail($user), 'new_issue');
             Notification::subscribeUser($usr_id, $issue_id, $user, $actions);
             self::addUserAssociation($usr_id, $issue_id, $user);
             if ($user != $usr_id) {
                 $users[] = $user;
             }
         }
     } else {
         // only use the round-robin feature if this new issue was not
         // already assigned to a customer account manager
         if (@count($managers) < 1) {
             $assignee = Round_Robin::getNextAssignee($prj_id);
             // assign the issue to the round robin person
             if (!empty($assignee)) {
                 $users[] = $assignee;
                 self::addUserAssociation($usr_id, $issue_id, $assignee, false);
                 History::add($issue_id, APP_SYSTEM_USER_ID, 'rr_issue_assigned', 'Issue auto-assigned to {assignee} (RR)', array('assignee' => User::getFullName($assignee)));
                 $has_RR = true;
             }
         }
     }
     // set product and version
     if (isset($data['product']) && $data['product'] != '-1') {
         Product::addIssueProductVersion($issue_id, $data['product'], $data['product_version']);
     }
     // process any files being uploaded
     // from ajax upload, attachment file ids
     $iaf_ids = !empty($_POST['iaf_ids']) ? explode(',', $_POST['iaf_ids']) : null;
     // if no iaf_ids passed, perhaps it's old style upload
     // TODO: verify that the uploaded file(s) owner is same as attachment owner.
     if (!$iaf_ids && isset($_FILES['file'])) {
         $iaf_ids = Attachment::addFiles($_FILES['file']);
     }
     if ($iaf_ids) {
         Attachment::attachFiles($issue_id, $usr_id, $iaf_ids, false, 'Files uploaded at issue creation time');
     }
     // need to associate any emails ?
     if (!empty($data['attached_emails'])) {
         $items = explode(',', $data['attached_emails']);
         Support::associate($usr_id, $issue_id, $items);
     }
     // need to notify any emails being converted into issues ?
     if (@count($data['notify_senders']) > 0) {
         $recipients = Notification::notifyEmailConvertedIntoIssue($prj_id, $issue_id, $data['notify_senders'], @$data['customer']);
     } else {
         $recipients = array();
     }
     // need to process any custom fields ?
     if (@count($data['custom_fields']) > 0) {
         foreach ($data['custom_fields'] as $fld_id => $value) {
             Custom_Field::associateIssue($issue_id, $fld_id, $value);
         }
     }
     // also send a special confirmation email to the customer contact
     if (@$data['notify_customer'] == 'yes' && !empty($data['contact'])) {
         $contact = $contract->getContact($data['contact']);
         // also need to pass the list of sender emails already notified,
         // so we can avoid notifying the same person again
         $contact_email = User::getEmailByContactID($data['contact']);
         if (@(!in_array($contact_email, $recipients))) {
             $contact->notifyNewIssue($issue_id);
         }
         // now check for additional emails in contact_extra_emails
         if (@count($data['contact_extra_emails']) > 0) {
             $notification_emails = $data['contact_extra_emails'];
             foreach ($notification_emails as $notification_email) {
                 if (@(!in_array($notification_email, $recipients))) {
                     try {
                         $notification_contact = $crm->getContactByEmail($notification_email);
                         $notification_contact->notifyNewIssue($issue_id);
                     } catch (ContactNotFoundException $e) {
                     }
                 }
             }
         }
     }
     // handle associated issues
     if (isset($data['associated_issues'])) {
         $associated_issues = explode(',', $data['associated_issues']);
         if ($clone_iss_id) {
             $associated_issues[] = $clone_iss_id;
         }
         self::updateAssociatedIssuesRelations($issue_id, $associated_issues);
     }
     Workflow::handleNewIssue($prj_id, $issue_id, $has_TAM, $has_RR);
     // also notify any users that want to receive emails anytime a new issue is created
     Notification::notifyNewIssue($prj_id, $issue_id);
     return $issue_id;
 }
开发者ID:dabielkabuto,项目名称:eventum,代码行数:101,代码来源:class.issue.php

示例2: Template_Helper

$usr_id = Auth::getUserID();
$tpl = new Template_Helper();
$tpl->setTemplate('file_upload.tpl.html');
$issue_id = isset($_POST['issue_id']) ? $_POST['issue_id'] : $_GET['iss_id'];
$cat = isset($_POST['cat']) ? $_POST['cat'] : null;
// handle uploads
if ($cat == 'upload_file') {
    // attachment status (public or internal)
    $status = isset($_POST['status']) ? $_POST['status'] : null;
    $internal_only = $status == 'internal';
    // from ajax upload, attachment file ids
    $iaf_ids = !empty($_POST['iaf_ids']) ? explode(',', $_POST['iaf_ids']) : null;
    // description for attachments
    $file_description = isset($_POST['file_description']) ? $_POST['file_description'] : null;
    // if no iaf_ids passed, perhaps it's old style upload
    // TODO: verify that the uploaded file(s) owner is same as attachment owner.
    if (!$iaf_ids && isset($_FILES['attachment'])) {
        $iaf_ids = Attachment::addFiles($_FILES['attachment']);
    }
    try {
        Attachment::attachFiles($issue_id, $usr_id, $iaf_ids, $internal_only, $file_description);
        $res = 1;
    } catch (Exception $e) {
        error_log($e->getMessage());
        error_log($e->getTraceAsString());
        $res = -1;
    }
    $tpl->assign('upload_file_result', $res);
}
$tpl->assign(array('issue_id' => $issue_id, 'current_user_prefs' => Prefs::get(Auth::getUserID()), 'max_attachment_size' => Attachment::getMaxAttachmentSize(), 'max_attachment_bytes' => Attachment::getMaxAttachmentSize(true)));
$tpl->displayTemplate();
开发者ID:korusdipl,项目名称:eventum,代码行数:31,代码来源:file_upload.php

示例3: sendEmailFromPost

 /**
  * Method used to send an email from the user interface.
  *
  * @param int $parent_sup_id
  * @return int 1 if it worked, -1 otherwise
  * @deprecated use sendEmail directly instead
  */
 public static function sendEmailFromPost($parent_sup_id = null)
 {
     // process any files being uploaded
     // from ajax upload, attachment file ids
     // if no iaf_ids passed, perhaps it's old style upload
     // TODO: verify that the uploaded file(s) owner is same as attachment owner.
     $iaf_ids = !empty($_POST['iaf_ids']) ? explode(',', $_POST['iaf_ids']) : null;
     if (!$iaf_ids && isset($_FILES['attachment'])) {
         $iaf_ids = Attachment::addFiles($_FILES['attachment']);
     }
     $issue_id = isset($_POST['issue_id']) ? (int) $_POST['issue_id'] : 0;
     $type = isset($_POST['type']) ? (string) $_POST['type'] : null;
     $from = isset($_POST['from']) ? (string) $_POST['from'] : null;
     $to = isset($_POST['to']) ? (string) $_POST['to'] : null;
     $cc = isset($_POST['cc']) ? (string) $_POST['cc'] : null;
     $subject = isset($_POST['subject']) ? (string) $_POST['subject'] : null;
     $body = isset($_POST['message']) ? (string) $_POST['message'] : null;
     $options = array('parent_sup_id' => $parent_sup_id, 'iaf_ids' => $iaf_ids, 'add_unknown' => isset($_POST['add_unknown']) && $_POST['add_unknown'] == 'yes', 'ema_id' => isset($_POST['ema_id']) ? (int) $_POST['ema_id'] : null);
     return self::sendEmail($issue_id, $type, $from, $to, $cc, $subject, $body, $options);
 }
开发者ID:korusdipl,项目名称:eventum,代码行数:27,代码来源:class.support.php

示例4: dirname

// | 51 Franklin Street, Suite 330                                        |
// | Boston, MA 02110-1301, USA.                                          |
// +----------------------------------------------------------------------+
// | Authors: Elan Ruusamäe <glen@delfi.ee>                               |
// +----------------------------------------------------------------------+
require_once dirname(__FILE__) . '/../../init.php';
// handle ajax upload
// FIXME: no identity logged who added the file.
try {
    // check if logged in. if not, just give error
    if (!Auth::hasValidCookie(APP_COOKIE)) {
        throw new BadFunctionCallException(ev_gettext('Must be logged in'));
    }
    if (!isset($_GET['file'])) {
        // TRANSLATORS: this is technical error and should not be displayed to end users
        throw new InvalidArgumentException(ev_gettext('No file argument'));
    }
    $file = (string) $_GET['file'];
    if (!isset($_FILES[$file])) {
        throw new InvalidArgumentException(ev_gettext('No files uploaded'));
    }
    $iaf_id = Attachment::addFiles($_FILES[$file]);
    $res = array('error' => 0, 'iaf_id' => $iaf_id);
} catch (Exception $e) {
    $code = $e->getCode();
    $res = array('error' => $code ? $code : -1, 'message' => $e->getMessage());
    error_log($e->getMessage());
    error_log($e->getTraceAsString());
}
header('Content-Type: application/json; charset=UTF-8');
echo json_encode($res);
开发者ID:korusdipl,项目名称:eventum,代码行数:31,代码来源:upload.php


注:本文中的Attachment::addFiles方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。