| Current Path : /var/www/html/dynaweb.blunetdev.com/backend/modules/repodl/ |
| Current File : /var/www/html/dynaweb.blunetdev.com/backend/modules/repodl/api.txt |
<?php
use backend\modules\moduleRepository\models\ModuleList;
use backend\modules\moduleRepository\models\ModuleVersion;
use backend\modules\moduleRepository\models\ModuleDownload;
// cross origin
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: *");
$res = [];
$ver = [];
$list = new ModuleList;
$get = Yii::$app->request->get();
$query = $list->find();
//id
if(isset($get['id'])) {
$id = filter_var($get['id'], FILTER_SANITIZE_NUMBER_INT);
// when id present
if(!empty($id))
$query->where(['module_id' => $id]);
}
// get all query
$all = $query->all();
foreach($all as $a) {
$attr = $a->attributes;
// module version
$md = ModuleVersion::find()->where(['module_id' => $attr['module_id']])->all();
foreach($md as $m) {
$verattr = $m->attributes;
$verattr['download'] = 0;
//get download count
$download = ModuleDownload::find()->where(['version_id' => $verattr['version_id']])->all();
if(is_array($download))
$verattr['download'] = count($download);
$ver[] = $verattr;
}
if(!empty($ver)) {
$attr['ver'] = $ver;
$res[] = $attr;
} else {
$res[] = $a->attributes;
}
}
die(json_encode($res));