Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Z
zuiketang
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
夏彬
zuiketang
Commits
f4a85e31
Commit
f4a85e31
authored
Oct 13, 2016
by
杨培
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加是否拥有课堂验证
parent
131399a0
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
167 additions
and
15 deletions
+167
-15
Utils.php
src/common/libs/Utils.php
+17
-0
Classes.php
src/common/models/Classes.php
+12
-0
ClassesFilter.php
src/frontend/components/ClassesFilter.php
+65
-0
ClassesInfoController.php
src/frontend/controllers/ClassesInfoController.php
+10
-1
MyCourseController.php
src/frontend/controllers/MyCourseController.php
+13
-7
MyActiveForm.php
src/frontend/models/MyActiveForm.php
+17
-0
apply.php
src/frontend/views/classes-info/apply.php
+7
-0
index.php
src/frontend/views/classes-info/index.php
+26
-7
No files found.
src/common/libs/Utils.php
View file @
f4a85e31
...
@@ -60,6 +60,23 @@ class Utils
...
@@ -60,6 +60,23 @@ class Utils
return
$msgs
;
return
$msgs
;
}
}
/**
* 返回 $model->errors 中的第一条错误
*
* @param array $errors
* @return string
*/
public
static
function
fetchErrorFirst
(
$errors
)
{
foreach
(
$errors
as
$v
)
{
foreach
(
$v
as
$msg
)
{
return
$msg
;
}
}
return
''
;
}
/**
/**
* 生成4-6位随机数
* 生成4-6位随机数
...
...
src/common/models/Classes.php
View file @
f4a85e31
...
@@ -22,6 +22,12 @@ use yii\db\ActiveRecord;
...
@@ -22,6 +22,12 @@ use yii\db\ActiveRecord;
*/
*/
class
Classes
extends
ActiveRecord
class
Classes
extends
ActiveRecord
{
{
const
STATUS_UNCHECK
=
0
;
const
STATUS_OK
=
1
;
const
STATUS_FAILED
=
2
;
const
STATUS_LOCKED
=
3
;
/**
/**
* @inheritdoc
* @inheritdoc
*/
*/
...
@@ -79,4 +85,10 @@ class Classes extends ActiveRecord
...
@@ -79,4 +85,10 @@ class Classes extends ActiveRecord
'status'
=>
'0 未审核 1 审核通过 2 审核不通过 3 锁定 '
'status'
=>
'0 未审核 1 审核通过 2 审核不通过 3 锁定 '
];
];
}
}
public
static
function
getUserClass
(
$userId
)
{
return
self
::
find
()
->
select
(
'id, status'
)
->
where
([
'user_id'
=>
$userId
])
->
asArray
()
->
one
();
}
}
}
src/frontend/components/ClassesFilter.php
0 → 100644
View file @
f4a85e31
<?php
/**
* Created by PhpStorm.
* User: pader
* Date: 16/10/13
* Time: 14:47
*/
namespace
frontend\components
;
use
common\models\Classes
;
use
Yii
;
use
yii\base\ActionFilter
;
use
yii\base\Behavior
;
class
ClassesFilter
extends
ActionFilter
{
public
$_checkStatus
=
true
;
/**
* @return boolean
*/
public
function
isCheckStatus
()
{
return
$this
->
_checkStatus
;
}
/**
* @param boolean $checkStatus
*/
public
function
setCheckStatus
(
$checkStatus
)
{
$this
->
_checkStatus
=
$checkStatus
;
}
public
function
beforeAction
(
$action
)
{
$uid
=
Yii
::
$app
->
user
->
getId
();
$class
=
Classes
::
getUserClass
(
$uid
);
if
(
!
$class
)
{
$this
->
showAlert
(
0
);
return
false
;
}
if
(
$this
->
_checkStatus
&&
$class
[
'status'
]
!=
Classes
::
STATUS_OK
)
{
$this
->
showAlert
(
1
);
return
false
;
}
if
(
property_exists
(
Yii
::
$app
->
controller
,
'classStatus'
))
{
Yii
::
$app
->
controller
->
classStatus
=
$class
;
}
return
parent
::
beforeAction
(
$action
);
}
public
function
showAlert
(
$exists
)
{
Yii
::
$app
->
response
->
data
=
Yii
::
$app
->
view
->
renderFile
(
'@app/views/site/error.php'
,
[
'name'
=>
'提示消息'
,
'message'
=>
$exists
?
'您提交的课堂资料尚未通过审核,无法访问此页面!'
:
'您还没有创建课堂,无法访问此页面!'
]);
}
}
\ No newline at end of file
src/frontend/controllers/ClassesInfoController.php
View file @
f4a85e31
...
@@ -3,12 +3,13 @@
...
@@ -3,12 +3,13 @@
namespace
frontend\controllers
;
namespace
frontend\controllers
;
use
common\models\Classes
;
use
common\models\Classes
;
use
frontend\components\ClassesFilter
;
use
Yii
;
use
Yii
;
use
yii\filters\AccessControl
;
use
yii\filters\AccessControl
;
class
ClassesInfoController
extends
\yii\web\Controller
class
ClassesInfoController
extends
\yii\web\Controller
{
{
public
$layout
=
'
user
Center'
;
public
$layout
=
'
class
Center'
;
/**
/**
* @inheritdoc
* @inheritdoc
...
@@ -24,6 +25,11 @@ class ClassesInfoController extends \yii\web\Controller
...
@@ -24,6 +25,11 @@ class ClassesInfoController extends \yii\web\Controller
'roles'
=>
[
'@'
],
'roles'
=>
[
'@'
],
]
]
],
],
],
'classes'
=>
[
'class'
=>
ClassesFilter
::
className
(),
'checkStatus'
=>
true
,
'except'
=>
[
'apply'
]
]
]
];
];
}
}
...
@@ -40,6 +46,7 @@ class ClassesInfoController extends \yii\web\Controller
...
@@ -40,6 +46,7 @@ class ClassesInfoController extends \yii\web\Controller
*/
*/
public
function
actionApply
()
public
function
actionApply
()
{
{
$this
->
layout
=
'userCenter'
;
$uid
=
Yii
::
$app
->
user
->
getId
();
$uid
=
Yii
::
$app
->
user
->
getId
();
$model
=
Classes
::
findOne
([
'user_id'
=>
$uid
]);
$model
=
Classes
::
findOne
([
'user_id'
=>
$uid
]);
...
@@ -51,6 +58,8 @@ class ClassesInfoController extends \yii\web\Controller
...
@@ -51,6 +58,8 @@ class ClassesInfoController extends \yii\web\Controller
$agreement
=
1
;
$agreement
=
1
;
}
}
echo
$model
->
status
;
if
(
Yii
::
$app
->
request
->
getIsPost
())
{
if
(
Yii
::
$app
->
request
->
getIsPost
())
{
$model
->
load
(
Yii
::
$app
->
request
->
post
());
$model
->
load
(
Yii
::
$app
->
request
->
post
());
$model
->
user_id
=
Yii
::
$app
->
user
->
getId
();
$model
->
user_id
=
Yii
::
$app
->
user
->
getId
();
...
...
src/frontend/controllers/MyCourseController.php
View file @
f4a85e31
...
@@ -8,6 +8,7 @@ use common\models\Course;
...
@@ -8,6 +8,7 @@ use common\models\Course;
use
common\models\CourseTeacher
;
use
common\models\CourseTeacher
;
use
common\models\Courseware
;
use
common\models\Courseware
;
use
common\models\UploadPools
;
use
common\models\UploadPools
;
use
frontend\components\ClassesFilter
;
use
Qiniu\Storage\BucketManager
;
use
Qiniu\Storage\BucketManager
;
use
Yii
;
use
Yii
;
use
yii\filters\AccessControl
;
use
yii\filters\AccessControl
;
...
@@ -17,6 +18,7 @@ use yii\web\UploadedFile;
...
@@ -17,6 +18,7 @@ use yii\web\UploadedFile;
class
MyCourseController
extends
\yii\web\Controller
class
MyCourseController
extends
\yii\web\Controller
{
{
public
$classStatus
;
public
$layout
=
'classCenter'
;
public
$layout
=
'classCenter'
;
/**
/**
...
@@ -30,10 +32,14 @@ class MyCourseController extends \yii\web\Controller
...
@@ -30,10 +32,14 @@ class MyCourseController extends \yii\web\Controller
//'only' => ['index', 'publish', 'submit'],
//'only' => ['index', 'publish', 'submit'],
'rules'
=>
[
'rules'
=>
[
[
[
'allow'
=>
TRUE
,
'allow'
=>
true
,
'roles'
=>
[
'@'
]
,
'roles'
=>
[
'@'
]
]
]
],
]
],
'classes'
=>
[
'class'
=>
ClassesFilter
::
className
(),
'checkStatus'
=>
true
]
]
];
];
}
}
...
@@ -250,16 +256,16 @@ class MyCourseController extends \yii\web\Controller
...
@@ -250,16 +256,16 @@ class MyCourseController extends \yii\web\Controller
//暂存到本地
//暂存到本地
$model
=
new
AttachUploadForm
();
$model
=
new
AttachUploadForm
();
if
(
!
Yii
::
$app
->
request
->
isPost
)
{
//
if (!Yii::$app->request->isPost) {
return
[
'success'
=>
false
,
'msg'
=>
'请求方式错误'
];
//
return ['success'=>false, 'msg'=>'请求方式错误'];
}
//
}
$model
->
file
=
UploadedFile
::
getInstance
(
$model
,
'file'
);
$model
->
file
=
UploadedFile
::
getInstance
(
$model
,
'file'
);
$model
->
tmp
=
Yii
::
$app
->
request
->
post
(
'tmp'
);
$model
->
tmp
=
Yii
::
$app
->
request
->
post
(
'tmp'
);
$result
=
$model
->
uploadStorage
();
$result
=
$model
->
uploadStorage
();
if
(
$result
===
false
)
{
if
(
$result
===
false
)
{
return
[
'success'
=>
false
,
'msg'
=>
$model
->
errors
];
return
[
'success'
=>
false
,
'msg'
=>
Utils
::
fetchErrorFirst
(
$model
->
errors
)
];
}
}
return
[
'success'
=>
true
,
'msg'
=>
''
,
'file_path'
=>
$result
[
'src'
],
'key'
=>
$result
[
'key'
],
'uuid'
=>
$result
[
'uuid'
]];
return
[
'success'
=>
true
,
'msg'
=>
''
,
'file_path'
=>
$result
[
'src'
],
'key'
=>
$result
[
'key'
],
'uuid'
=>
$result
[
'uuid'
]];
...
...
src/frontend/models/MyActiveForm.php
0 → 100644
View file @
f4a85e31
<?php
namespace
frontend\models
;
use
yii\widgets\ActiveForm
;
class
MyActiveForm
extends
ActiveForm
{
public
$fieldConfig
=
[
'options'
=>
[
'class'
=>
'cls-part'
],
'labelOptions'
=>
[
'class'
=>
'tit'
,
'style'
=>
'margin-bottom:0;'
],
'inputOptions'
=>
[
'class'
=>
'input-r-control'
]
];
//public $fieldClass = 'frontend\models\MyActiveField';
}
\ No newline at end of file
src/frontend/views/classes-info/apply.php
View file @
f4a85e31
...
@@ -11,6 +11,13 @@ $this->title = '申请课堂';
...
@@ -11,6 +11,13 @@ $this->title = '申请课堂';
<div
class=
"send-class apply-class-box"
>
<div
class=
"send-class apply-class-box"
>
<div
class=
"tit"
>
申请课堂
</div>
<div
class=
"tit"
>
申请课堂
</div>
<?php
if
(
$model
->
id
)
{
if
(
$model
->
status
==
\common\models\Classes
::
STATUS_UNCHECK
)
{
?>
<p
class=
"bg-info"
style=
"padding:10px;margin-top:10px;"
>
您提交的资料正在等待审核
</p>
<?php
}
elseif
(
$model
->
status
==
\common\models\Classes
::
STATUS_FAILED
)
{
?>
<p
class=
"bg-danger"
style=
"padding:10px;margin-top:10px;"
>
您提交的课堂资料未通过审核!
</p>
<?php
}
}
?>
<?php
$form
=
MyActiveForm
::
begin
([
'id'
=>
'applyForm'
,
'options'
=>
[
'name'
=>
'applyClass'
]]);
?>
<?php
$form
=
MyActiveForm
::
begin
([
'id'
=>
'applyForm'
,
'options'
=>
[
'name'
=>
'applyClass'
]]);
?>
<?=
$form
->
field
(
$model
,
'name'
,
[
'inputOptions'
=>
[
'placeholder'
=>
'请输入课堂名称'
]])
?>
<?=
$form
->
field
(
$model
,
'name'
,
[
'inputOptions'
=>
[
'placeholder'
=>
'请输入课堂名称'
]])
?>
<?=
$form
->
field
(
$model
,
'intro'
)
->
textInput
([
'placeholder'
=>
'示例:面向谁?服务是什么?优势是什么?'
])
?>
<?=
$form
->
field
(
$model
,
'intro'
)
->
textInput
([
'placeholder'
=>
'示例:面向谁?服务是什么?优势是什么?'
])
?>
...
...
src/frontend/views/classes-info/index.php
View file @
f4a85e31
<?php
<?php
/* @var $this yii\web\View */
/**
* @var $this yii\web\View
* @var \common\models\Classes $model
* @var int $agreement
*/
$this
->
title
=
'我的课堂'
;
?>
?>
<h1>
classes-info/index
</h1>
<div
class=
"class-name"
>
为课堂起个响亮的名字吧
</div>
<div
class=
"class-intro"
>
<p>
<div
class=
"col-md-4"
>
You may change the content of this page by modifying
<h3>
课程总数
</h3>
the file
<code>
<?=
__FILE__
;
?>
</code>
.
<p>
10
<small>
讲
</small></p>
</p>
<a
href=
"#"
>
发布课程
</a>
<i
class=
"icon-play"
></i>
</div>
<div
class=
"col-md-4"
>
<h3>
今日收益
</h3>
<p>
192.00
<small>
元
</small></p>
<a
href=
"#"
>
查看账单
</a>
<i
class=
"icon-clipboard"
></i>
</div>
<div
class=
"col-md-4"
>
<h3>
今日发言
</h3>
<p>
891
<small>
条
</small></p>
<i
class=
"icon-speech-bubble"
></i>
</div>
</div>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment