public function image() { $image = new Image('http://sinastorage.com/sandbox/test.jpg'); $image->rotate(50); $s3 = new S3(); $result = $s3->plainWrite('test.jpg', $image->getContent(), $image->getSize(), $image->getMimeType()); Common::debug($result); }
public function setOnlineDebug() { if ($_GET['status'] == 'on') { Common::debug('1', 'cookie'); setcookie('dagger_online_debug', '1', 0, '/', '.sina.com.cn', false, true); Message::showSucc('设置online_debug成功'); } else { Common::debug('', 'cookie'); setcookie('dagger_online_debug', '', 0, '/', '.sina.com.cn', false, true); Message::showSucc('权限online_debug成功'); } }
public function Lists() { $listDB = new AlarmListModelDB(); $messageDB = new AlarmMessageModelDB(); $userDB = new AlarmUserModelDB(); $sql = "SELECT `id` FROM `" . $userDB->getTableName() . "` WHERE `username` = ?"; $userId = $userDB->getFirst($sql, array($_GET['username'])); $whereArr = array(); $whereArr[] = $userId; $_GET['first_id'] = intval($_GET['first_id']); if (!empty($_GET['first_id'])) { $whereStr = " AND `message_id` < ?"; //Question 这里应该是大于吧... todo $whereArr[] = $_GET['first_id']; } $sql = "SELECT * FROM `" . $listDB->getTableName() . "` WHERE `user_id` = ?{$whereStr} AND `send_user` = 0 ORDER BY `id` DESC LIMIT 10"; $data = $listDB->getData($sql, $whereArr); $data = Common::arrayOrderBy($data, 'id', 'ASC'); $messageIds = array(); foreach ($data as $key => $val) { $messageIds[$val['message_id']] = $val['message_id']; } if (!empty($messageIds)) { $sql = "SELECT * FROM `" . $messageDB->getTableName() . "` WHERE `id` IN ?"; $messageData = $messageDB->getData($sql, array($messageIds)); $messageFkData = array(); foreach ($messageData as $v) { $messageFkData[$v['id']] = $v; } } $showArr = array(); Common::debug($data); foreach ($data as $k => $v) { if (!empty($messageFkData[$v['message_id']]['message'])) { $showArr[$k]['id'] = $v['message_id']; if (preg_match_all("/http(s)?:\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- .\\/?%&=]*)?/", $messageFkData[$v['message_id']]['message'], $match)) { $showArr[$k]['link'] = $match[0][0]; } else { $showArr[$k]['link'] = ""; } $showArr[$k]['message'] = preg_replace("/http(s)?:\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- .\\/?%&=]*)?/", "", $messageFkData[$v['message_id']]['message']); $showArr[$k]['time'] = $messageFkData[$v['message_id']]['time']; $showArr[$k]['level'] = $messageFkData[$v['message_id']]['level']; $showArr[$k]['session'] = $messageFkData[$v['message_id']]['session']; } } if (empty($showArr)) { $showArr[0] = array("id" => "-1", "message" => "暂无更多消息...", "link" => "", "session" => "", "time" => (string) time(), "level" => '1'); } Message::showSucc('succ', $showArr); }
public function view() { $queueTaskLogDB = new QueueTaskLogModelDB(); //普通条件,检查GET参数 $whereStr = count($where) > 0 ? implode(" AND ", $where) : '1=1'; if (preg_match("/\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{1,2}/", $_GET['begin_time_start']) || preg_match("/\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{1,2}/", $_GET['begin_time_end'])) { $whereStr = $whereStr == '1=1' ? "`begin_time` > ? AND `begin_time` < ?" : $whereStr . " AND `begin_time` > ? AND `begin_time` < ?"; $whereArr[] = strtotime($_GET['begin_time_start']); $whereArr[] = strtotime($_GET['begin_time_end']); } if (!empty($_GET['project_id'])) { Common::debug('111'); $whereStr = $whereStr . " AND `project_id` = ?"; $whereArr[] = $_GET['project_id']; } if (is_numeric($_GET['status'])) { $whereStr = $whereStr . " AND `status` = ?"; $whereArr[] = $_GET['status']; } if (!empty($_GET['task'])) { $whereStr = $whereStr . " AND `task` LIKE ?"; $whereArr[] = "%" . $_GET['task'] . "%"; } //排序条件 $orderStr = '`id` DESC'; if (!empty($_POST['order'])) { foreach ($_POST['order'] as $k => $v) { $orderArr[] = "`{$k}` {$v}"; } $orderStr = implode(',', $orderArr); } //查询操作 $sql = "SELECT * FROM `" . $queueTaskLogDB->getTableName() . "` WHERE {$whereStr} ORDER BY {$orderStr}"; $data = $queueTaskLogDB->getData($sql, $whereArr, 40); $pageStr = $queueTaskLogDB->getPageStr(); $pageJump = $queueTaskLogDB->getPageJump(); //读取外键数据 $projectFkArr = QueueTaskLogModel::getProject(); $this->setView('projectFkArr', $projectFkArr); //模版显示 $this->setView('pageStr', $pageStr); $this->setView('pageJump', $pageJump); $this->setView('data', $data); $this->display('QueueTaskLog.html'); }
public function sendSms($project, $submodule, $message) { $messageSend = "{$project['name']}的{$submodule['name']}({$submodule['code']})错误"; $projectUids = Common::checkboxStrDecode($project['monitors']); $submoduleUids = Common::checkboxStrDecode($submodule['monitors']); $uids = array_merge($projectUids, $submoduleUids); $monitorDB = new MonitorModelDB(); $monitorsPhone = $monitorDB->getData('SELECT phone FROM ' . $monitorDB->getTableName() . ' WHERE id in ?', array($uids)); $phone = array(); foreach ($monitorsPhone as $monitorPhone) { $phone[] = $monitorPhone['phone']; } $str = 'user=general&password=nbaa8a2a1d5b981deacb8c1e2general&phone=' . urlencode(implode(',', $phone)) . '&msg=' . urlencode($messageSend) . '&level=' . urlencode($submodule['level']); $ret = Http::get("http://202.108.35.62/serverguard/SendV2.php?{$str}"); Common::debug($ret); if ($ret['error'] != 0) { $ret = Http::get("http://202.108.43.183/serverguard/SendV2.php?{$str}"); } Common::debug($ret, 'sms'); $warningMessageDB = new WarningMessageModelDB(); $warningMessageDB->insert(array('type' => 2, 'message' => "{$project['name']}的{$submodule['name']}({$submodule['code']})错误:{$message}", 'monitors' => Common::checkboxStrEncode($uids), 'create_time' => time())); }
public function waterfall() { $sid = intval($_GET['sub_mid']); $pageId = max(intval($_GET['page']), 1); $limit = 10; $start = ($pageId - 1) * $limit; $stop = $start + $limit; $submoduleDB = new SubmoduleModelDB(); $submodule = $submoduleDB->getRow('SELECT mid, code FROM `' . $submoduleDB->getTableName() . '` WHERE id=?', array(intval($sid))); $details = MyRedis::getSubmoduleDetail($submodule, $start, $stop); Common::debug($details); foreach ($details['messages'] as $key => $value) { if ($tmp = unserialize($value)) { $value = array_map('urldecode', array_map('htmlspecialchars', $tmp)); // $detail = date('[Y-m-d H:i:s] ', $time)."{$submodule['name']} 错误号:{$submodule['code']} 详细:{$message}, 邮件:第{$mailMsgCount}次,短信:第{$smsMsgCount}次,来自{$client_ip}/{$onlineip},xhprofId[{$xhprofId}]"; $details['messages'][$key] = date('[Y-m-d H:i:s] ', $value['time']) . "{$value['name']} 错误号:{$value['code']},脚本:{$value['script']},详细:{$value['message']},来自{$value['clientIp']}/{$value['serverIp']}"; } else { $details['messages'][$key] = htmlspecialchars($value); } } Message::showSucc('详细信息', $details['messages']); }
public function view() { $key = isset($_GET['key']) ? $_GET['key'] : ''; $pageId = isset($_GET['page']) ? max(intval($_GET['page']), 1) : 1; if (empty($key)) { Message::showError('项目key不能为空'); } $limit = 50; $host = '172.16.53.68'; $port = 6381; $rd = new Redis(); $rd->connect($host, $port); $count = $rd->lsize($key); $data = $rd->lRange($key, $limit * ($pageId - 1), $limit * $pageId); $data = array_map('unserialize', $data); Common::debug($data); // $data = unserialize($data); // Common::debug($data);exit; $pageModel = new Page($count, $limit); $this->setView('data', $data); $this->setView('pageStr', $pageModel->getPageStr()); $this->display('XhprofLog.html'); }
function debug($message) { Common::debug($message); }
public function getDetail() { $pid = intval($_GET['pid']); if (!$pid) { $projectDB = new ProjectModelDB(); $pid = $projectDB->getFirst('SELECT id FROM `' . $projectDB->getTableName() . '` WHERE name=?', array($_GET['pname'])); } $pageId = max(intval($_GET['page']), 1); $limit = 50; $start = ($pageId - 1) * $limit; $stop = $start + $limit; $detail = MyRedis::getProjectDetail($pid, $start, $stop); $data = array(); foreach ($detail['messages'] as $i => $v) { if (($msg = @unserialize($v)) && is_array($msg)) { $data[$i] = $msg; } else { $msg = explode(" ", $v); $data[$i]['time'] = str_replace(array('[', ']'), '', array_shift($msg) . ' ' . array_shift($msg)); $data[$i]['name'] = array_shift($msg); $data[$i]['code'] = str_replace(array("错误号:", '{', '}'), '', array_shift($msg)); $otherMsg = array_pop($msg); $otherMsgArr = explode(",", $otherMsg); if (count($otherMsgArr) == 4) { $data[$i]['xhprofId'] = str_replace(array('xhprofId[', ']'), '', array_pop($otherMsgArr)); } list($data[$i]['clientIp'], $data[$i]['serverIp']) = explode("/", str_replace(array("来自"), '', array_pop($otherMsgArr))); $data[$i]['email'] = str_replace(array("短信:", '第', '次'), '', array_pop($otherMsgArr)); $data[$i]['sms'] = str_replace(array("邮件:", '第', '次'), '', array_pop($otherMsgArr)); $data[$i]['message'] = str_replace(array("详细:"), '', implode(" ", $msg)); } } Common::debug($data, 'Result'); $pageModel = new Page($detail['count'], $limit); $this->setView('pageTitle', '详细信息'); $this->setView('data', $data); $this->setView('pageStr', $pageModel->getPageStr()); $this->display('Detail.html'); }
public function action_article() { $action = $this->params['action']; if (empty($action)) { $this->assign('kindmenu', Common::getConfig('menu_sub.articlekind')); //分类设置项 $this->display('stourtravel/article/list'); } else { if ($action == 'read') { $start = Arr::get($_GET, 'start'); $limit = Arr::get($_GET, 'limit'); $keyword = Arr::get($_GET, 'keyword'); $kindid = Arr::get($_GET, 'kindid'); $attrid = Arr::get($_GET, 'attrid'); $webid = Arr::get($_GET, 'webid'); $webid = $webid == "" ? -1 : $webid; $keyword = Common::getKeyword($keyword); $sort = json_decode(Arr::get($_GET, 'sort'), true); $order = 'order by a.modtime desc'; $specOrders = array('attrid', 'kindlist', 'iconlist', 'themelist'); if ($sort[0]['property']) { if ($sort[0]['property'] == 'displayorder') { $prefix = ''; } else { if ($sort[0]['property'] == 'ishidden') { $prefix = 'a.'; } else { if ($sort[0]['property'] == 'templet') { $prefix = 'a.'; } else { if ($sort[0]['property'] == 'modtime') { $prefix = 'a.'; } else { if (in_array($sort[0]['property'], $specOrders)) { $prefix = 'order_'; } } } } } $order = 'order by ' . $prefix . $sort[0]['property'] . ' ' . $sort[0]['direction'] . ',a.modtime desc'; } $w = "a.id is not null"; $w .= empty($keyword) ? '' : " and a.title like '%{$keyword}%'"; $w .= empty($kindid) ? '' : " and find_in_set({$kindid},a.kindlist)"; $w .= empty($attrid) ? '' : " and find_in_set({$attrid},a.attrid)"; $w .= $webid == '-1' ? '' : " and a.webid={$webid}"; if (empty($kindid)) { $sql = "select a.id,a.aid,a.title,a.attrid,a.kindlist,a.webid,a.addtime,a.ishidden,a.themelist,a.iconlist,if(length(ifnull(a.attrid,''))=0,0,1) as order_attrid,if(length(ifnull(a.kindlist,''))=0,0,1) as order_kindlist,if(length(ifnull(a.iconlist,''))=0,0,1) as order_iconlist,if(length(ifnull(a.themelist,''))=0,0,1) as order_themelist,\nb.isjian,ifnull(b.displayorder,999999) as displayorder,b.isding,a.modtime,a.templet from sline_article as a left join sline_allorderlist b on (a.id=b.aid and b.typeid=4) where {$w} {$order} limit {$start},{$limit}"; } else { $sql = "select a.id,a.aid,a.title,a.attrid,a.kindlist,a.webid,a.addtime,a.ishidden,a.themelist,a.iconlist,if(length(ifnull(a.attrid,''))=0,0,1) as order_attrid,if(length(ifnull(a.kindlist,''))=0,0,1) as order_kindlist,if(length(ifnull(a.iconlist,''))=0,0,1) as order_iconlist,if(length(ifnull(a.themelist,''))=0,0,1) as order_themelist,b.isjian,b.displayorder,b.isding,a.modtime,a.templet from sline_article as a left join sline_kindorderlist as b on (b.classid={$kindid} and a.id=b.aid and b.typeid=4) where {$w} {$order} limit {$start},{$limit}"; } $totalcount_arr = DB::query(Database::SELECT, "select count(*) as num from sline_article a where {$w}")->execute()->as_array(); $list = DB::query(Database::SELECT, $sql)->execute()->as_array(); $new_list = array(); foreach ($list as $k => $v) { $v['kindname'] = Model_Destinations::getKindnameList($v['kindlist']); $v['attrname'] = Model_Article_Attr::getAttrnameList($v['attrid']); $v['modtime'] = Common::myDate('Y-m-d', $v['modtime']); $v['url'] = Common::getBaseUrl($v['webid']) . '/raiders/show_' . $v['aid'] . '.html'; $new_list[] = $v; } $result['total'] = $totalcount_arr[0]['num']; $result['lists'] = $new_list; $result['success'] = true; echo json_encode($result); } else { if ($action == 'save') { } else { if ($action == 'delete') { $rawdata = file_get_contents('php://input'); $data = json_decode($rawdata); $id = $data->id; if (is_numeric($id)) { $model = ORM::factory('article', $id); $model->deleteClear(); } } else { if ($action == 'update') { $id = Arr::get($_POST, 'id'); $field = Arr::get($_POST, 'field'); $val = Arr::get($_POST, 'val'); $kindid = Arr::get($_POST, 'kindid'); if ($field == 'displayorder') { $displayorder = empty($val) ? 9999 : $val; if (is_numeric($id)) { if (empty($kindid)) { $order = ORM::factory('allorderlist'); $order_mod = $order->where("aid='{$id}' and typeid=4 and webid=0")->find(); if ($order_mod->id) { $order_mod->displayorder = $displayorder; } else { $order_mod->displayorder = $displayorder; $order_mod->aid = $id; $order_mod->webid = 0; $order_mod->typeid = 4; } $order_mod->save(); if ($order_mod->saved()) { echo 'ok'; } else { echo 'no'; } } else { Common::debug('here'); $kindorder = ORM::factory('kindorderlist'); $kindorder_mod = $kindorder->where("aid='{$id}' and typeid=4 and classid={$kindid}")->find(); if ($kindorder_mod->id) { $kindorder_mod->displayorder = $displayorder; } else { $kindorder_mod->displayorder = $displayorder; $kindorder_mod->aid = $id; $kindorder_mod->classid = $kindid; $kindorder_mod->typeid = 4; } $kindorder_mod->save(); if ($kindorder->saved()) { echo 'ok'; } else { echo 'no'; } } } } else { if (is_numeric($id)) { $model = ORM::factory('article', $id); } if ($model->id) { $model->{$field} = $val; if ($field == 'kindlist') { $model->{$field} = implode(',', Model_Destinations::getParentsStr($val)); } else { if ($field == 'attrid') { $model->{$field} = implode(',', Model_Attrlist::getParentsStr($val, 4)); } } $model->save(); if ($model->saved()) { echo 'ok'; } else { echo 'no'; } } } } } } } } }
/** * updload image files */ private function uploadImageFile($key, $fileName) { if (($_FILES['image']["type"][$key] == "image/jpeg" || $_FILES["image"]["type"][$key] == "image/pjpeg") && $_FILES["image"]["size"][$key] < 2 * 1024 * 1024 * 1204) { if (is_array($_FILES["image"]["error"]) && $_FILES["image"]["error"][$key] > 0) { Message::showError("Return Code: " . $_FILES["image"]["error"][$key]); } else { if (!is_array($_FILES["image"]["error"]) && $_FILES["image"]["error"] > 0) { Message::showError("Return Code: " . $_FILES["image"]["error"]); } else { $i = 0; while (1) { $i++; Common::debug(DAGGER_PATH_ROOT . "images/" . $fileName . '.jpg'); if (file_exists(DAGGER_PATH_ROOT . "images/" . $fileName . '.jpg')) { Common::debug(DAGGER_PATH_ROOT . "images/" . $fileName . '.jpg' . " already exists. "); $fileName = $fileName . '_' . $i; } else { $fileName .= '.jpg'; move_uploaded_file($_FILES["image"]["tmp_name"][$key], DAGGER_PATH_ROOT . "images/" . $fileName); break; } } } } return $fileName; } else { Message::showError("Invalid file"); } }