/
AjaxController.php
68 lines (57 loc) · 1.99 KB
/
AjaxController.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
namespace app\controllers;
use app\models\GithubUsers;
use app\models\GithubRepos;
class AjaxController extends \yii\web\Controller
{
public function actionLike()
{
if($_GET['sub'] == 'user'){
$this->actionLikeUser();
}
else if($_GET['sub'] == 'repo'){
$this->actionLikeRepo();
}
$sub = $_GET['sub'];
$id = $_GET['id'];
$vid = ($_GET['vid'] == 'ins')?'del':'ins';
$img = ($_GET['vid'] == 'ins')?'/img/like.png':'/img/unlike.png';
$output = '<a href="/ajax/like?sub='.$sub.'&id='.$id.'&vid='.$vid.'">
<img id="'.$sub.'-like" src="'.$img.'" alt="">
</a>';
return $this->render('like', ['id' => $id, 'user'.$id => $output ]);
}
public function actionLikeUser()
{
$check_user = GithubUsers::find()->where(['id_user' => $_GET['id']])->one();
if($_GET['vid'] == 'ins' && empty($check_user)){
// save contributor's like-status in local BD
$user = new GithubUsers();
$user->id_user = $_GET['id'];
$user->status_user = 1;
$user->save();
}
else if ($_GET['vid'] == 'del' && !empty($check_user)){
// delete contributor's like-status in local BD
$user = GithubUsers::findOne($_GET['id']);
$user->delete();
}
}
public function actionLikeRepo()
{
$check_repo = GithubRepos::find()->where(['id_repos' => $_GET['id']])->one();
if($_GET['vid'] == 'ins' && empty($check_repo)){
// save repo's like-status in local BD
$user = new GithubRepos();
$user->id_repos = $_GET['id'];
$user->status_repos = 1;
$user->save();
}
else if ($_GET['vid'] == 'del' && !empty($check_repo)){
// delete repo's like-status in local BD
$user = GithubRepos::findOne($_GET['id']);
$user->delete();
}
}
}
?>