language; $object = \app\models\RegisterObjects::findOne($_GET['id']); $data = []; if ($object) { $favorite = false; $user = \app\services\Auth::getUserByToken(); if ($user) { $favoriteExists = \app\models\UserFavorites::find()->where(['user_id' => $user->id, 'table' => 'register_objects', 'fid' => $_GET['id']])->exists(); if ($favoriteExists) $favorite = true; } $item = new stdClass(); $item->id = $object->id; $item->title = $object->getTitle(); $item->text = $object->getLongText(); $item->image = $object->getMainImgFile(\Yii::$app->params['portal'] . '/_public/images/empty-169.png'); $item->type = 'register_objects'; $item->isFavorite = $favorite; $item->images = []; foreach ($object->images(\Yii::$app->params['portal'] . '/_public/images/empty-169.png') as $index => $image) { $item->images[] = [ 'id' => ($index + 1), 'img' => $image ]; } $item->docs = []; $item->videos = []; $item->models = []; $docs = $object->getPdfDocuments(); $videos = $object->getVideoList(); $models3d = $object->get3DModelList(); if ($videos && sizeof($videos)) { foreach ($videos as $v) { $id = JWT::encode(['id' => $v->id], JWT::SECRET_KEY); $item->videos[] = [ 'id' => $v->id, 'thumb' => IdServer::getVideoThumb($v->id), 'url' => Yii::$app->params['media_server'] . '/media/play-mobile/' . $id . '/' ]; } } if ($models3d && sizeof($models3d) > 0) { foreach ($models3d as $v) { $id = JWT::encode(['id' => $v->id], JWT::SECRET_KEY); $item->models[] = [ 'id' => $v->id, //'thumb' => IdServer::getVideoThumb($v->id), 'title' => $v->video_title ?? ($lg == 'en' ? '3D model' : '3D модел'), 'url' => Yii::$app->params['media_server'] . '/api/render-model/' . $id . '/?lg=' . $lg ]; } } foreach ($docs as $doc) { $id = JWT::encode(['id' => $doc->id], JWT::SECRET_KEY); $item->docs[] = [ 'img' => $item->image, 'url' => Yii::$app->params['portal'] . '/file-system/file-preview-delivery/' . $id . '/' ]; } $data[] = $item; } header('Content-type: application/json'); echo json_encode(['data' => $data]); exit;