public function lessonArticleImageAction($cid, $ccid, $action = 'upload') { $data = $this->getRequest(); $rest = Restful::instance(); $members = MembersManage::instance(); $app = $members->getCurrentSession(); if (!$app) { exit; } $image = new ImagesManage(); if ($action == 'upload' and $data->isPost()) { if ($filepath = $image->saveImagesCourseArticle($data->getFiles('file'), $cid, $ccid, $app['uid'], true, 1, true)) { $rest->assign('filelink', ImagesManage::getRelativeImage($filepath)); $rest->response(); } } elseif ($action == 'list') { $list = $image->getImagesCourseArticleForID($cid); if ($list) { $images = array(); foreach ($list as $key => $value) { $thumb = $value['thumb'] > 0 ? $image->getRealCoverSize($value['path'], 'small', 'jpg') : ''; $images[] = array('thumb' => $thumb, 'image' => ImagesManage::getRelativeImage($value['path']), 'title' => $value['filename'], 'folder' => $ccid); } echo stripslashes(json_encode($images)); exit; } } exit; }
/** * [getBookList description] * @param array $option [description] * @param integer $limit [description] * @param integer $page [description] * @return [type] [description] */ public function getBookList($option = array(), $limit = 10, $page = 1) { $sql = ''; if (is_array($option) or $option) { $i = 1; $count = count($option); foreach ($option as $key => $value) { if ($i == $count) { $sql .= "{$key}='" . $value . "'"; } else { $sql .= "{$key}='" . $value . "' AND "; } $i++; } } $offset = $page == 1 ? 0 : ($page - 1) * $limit; $table = $this->book->table; $list = $this->book->field("{$table}.bid,{$table}.cid,{$table}.title,{$table}.author,bc.name as category,{$table}.pubtime,{$table}.isbn,{$table}.press,bi.apple_price as price,{$table}.summary,bi.tags,bi.price,bf.verified,bf.published,m.username,ib.path as cover,ib.thumb, im.path as usercover")->joinQuery('book_fields as bf', "{$table}.bid=bf.bid")->joinQuery('book_info as bi', "{$table}.bid=bi.bid")->joinQuery('book_category as bc', "{$table}.cid=bc.cid")->joinQuery('images_book as ib', "{$table}.cover=ib.ibid")->joinQuery('members as m', 'bf.uid=m.id')->joinQuery('images_member as im', 'm.id=im.uid')->where($sql)->order("{$table}.published DESC")->limit("{$offset},{$limit}")->fetchList(); if (is_array($list)) { foreach ($list as $key => $value) { if (isset($value['usercover']) and $value['usercover']) { $list[$key]['usercover'] = ImagesManage::getRealCoverSize($value['usercover']); } if (isset($value['cover']) and $value['cover']) { $list[$key]['cover'] = ImagesManage::getRelativeImage($value['cover']); } if (isset($value['thumb']) and $value['thumb'] == 1) { $list[$key]['cover'] = ImagesManage::getRealCoverSize($value['cover'], 'medium', 'jpg'); } if (isset($value['published']) and $value['published']) { $list[$key]['published'] = $this->changedBookStatus(intval($value['published'])); } if (isset($value['verified']) and $value['verified']) { $list[$key]['verified'] = $this->changedBookVerified(intval($value['verified'])); } } return $list; } return false; }
/** * Login * * @param String ,$email * @param String ,$password * @return Boolean or Array */ public function login($email, $password) { if ($this->getCurrentSession() or empty($email) or empty($password)) { return false; } $email = addslashes($email); $password = addslashes($password); $wherearr = "email='" . $this->members->escapeString($email) . "' AND password='******'"; $row = $this->members->field("id,email,username,role_id,published")->where($wherearr)->fetchRow(); if ($row) { if ($user = $this->getCurrentSession()) { if ($user['uid'] == $row['id']) { return false; } } else { $roles = new RolesControl(); $role = $roles->getRolePermissionForId($row['role_id']); $permission = $role ? $role['permission'] : false; $info_table = $this->memberInfo->table; $info = $this->memberInfo->field("{$info_table}.id, {$info_table}.avatar_id, im.path as cover")->joinQuery("images_member as im", "im.imid={$info_table}.avatar_id")->where("{$info_table}.id='" . $row['id'] . "'")->order("{$info_table}.last_dateline DESC")->limit("1")->fetchList(); $app = array('uid' => $row['id'], 'email' => $row['email'], 'username' => $row['username'], 'cover' => false, 'role_id' => $row['role_id'], 'permission' => $permission); $infoArr = array('last_ip' => Registry::get('common')->ip(), 'last_dateline' => UPDATE_TIME); $this->memberInfo->where("id='" . $row['id'] . "'")->update($infoArr); if (is_array($info)) { foreach ($info as $key => $value) { if (isset($value['avatar_id']) and $value['avatar_id']) { $app['cover_small'] = ImagesManage::getRealCoverSize($value['cover']); $app['cover_medium'] = ImagesManage::getRealCoverSize($value['cover'], "medium"); $app['cover'] = ImagesManage::getRelativeImage($value['cover']); } } } $_SESSION['app'] = $app; return $row['id']; } } return false; }
/** * [getCourseList description] * @param array $option [description] * @param integer $limit [description] * @param integer $page [description] * @return [type] [description] */ public function getCourseList($option = array(), $limit = 10, $page = 1, $order = false) { $sql = $option; if (is_array($option) and $option) { $i = 1; $count = count($option); $sql = ''; foreach ($option as $key => $value) { if ($i == $count) { $sql .= "{$key}='" . $value . "'"; } else { $sql .= "{$key}='" . $value . "' AND "; } $i++; } } $offset = $page == 1 ? 0 : ($page - 1) * $limit; $table = $this->course->table; $order = $order ? $order : "{$table}.dateline DESC"; $list = $this->course->field("{$table}.cid,{$table}.title,{$table}.ccid,{$table}.uid,{$table}.private,{$table}.published,{$table}.verified,{$table}.dateline,{$table}.modified,{$table}.summary,{$table}.tags,{$table}.price,cc.name as category, m.username,ic.path as cover,ic.thumb, im.path as usercover, mi.summary as usersummary, cf.click as clickcount, cf.student as studentcount, cf.chapters as chapterscount")->joinQuery('course_category as cc', "{$table}.ccid=cc.ccid")->joinQuery('course_fields as cf', "{$table}.cid=cf.cid")->joinQuery('images_course as ic', "{$table}.cover=ic.icid")->joinQuery('members as m', "{$table}.uid=m.id")->joinQuery('member_info as mi', "m.id=mi.id")->joinQuery('images_member as im', 'm.id=im.uid')->where($sql)->order($order)->limit("{$offset},{$limit}")->fetchList(); if (is_array($list)) { foreach ($list as $key => $value) { if (isset($value['usercover']) and $value['usercover']) { $list[$key]['usercover_s'] = ImagesManage::getRealCoverSize($value['usercover']); $list[$key]['usercover_m'] = ImagesManage::getRealCoverSize($value['usercover'], 'medium'); $list[$key]['usercover'] = ImagesManage::getRelativeImage($value['usercover']); empty($list[$key]['usercover_s']) and $list[$key]['usercover_s'] = $list[$key]['usercover_m']; empty($list[$key]['usercover_m']) and $list[$key]['usercover_m'] = $list[$key]['usercover']; } if (isset($value['title']) and $value['title']) { $list[$key]['ptitle'] = $this->convert($value['title']); } if (isset($value['cover']) and $value['cover']) { $list[$key]['cover'] = ImagesManage::getRelativeImage($value['cover']); } if (isset($value['thumb']) and $value['thumb'] == 1) { $list[$key]['cover_m'] = ImagesManage::getRealCoverSize($value['cover'], 'medium', 'jpg'); $list[$key]['cover_s'] = ImagesManage::getRealCoverSize($value['cover'], 'small', 'jpg'); empty($list[$key]['cover_s']) and $list[$key]['cover_s'] = $list[$key]['cover_m']; empty($list[$key]['cover_m']) and $list[$key]['cover_m'] = $list[$key]['cover']; } if (isset($value['published']) and $value['published']) { $list[$key]['published'] = $this->changedCourseStatus(intval($value['published'])); } if (isset($value['verified']) and $value['verified']) { $list[$key]['verified'] = $this->changedCourseVerified(intval($value['verified'])); } } return $list; } return false; }