diff --git a/app/library/App/Controllers/AllPositionController.php b/app/library/App/Controllers/AllPositionController.php index d4defff..4e1eae6 100644 --- a/app/library/App/Controllers/AllPositionController.php +++ b/app/library/App/Controllers/AllPositionController.php @@ -62,9 +62,9 @@ class AllPositionController extends CrudResourceController $APObj = new Client(self::API_KEY); - $projects_info = $APObj->getQueries($project, $id_group); + $queries_info = $APObj->getQueries($project, $id_group); - return $projects_info; + return $queries_info; } @@ -90,9 +90,9 @@ class AllPositionController extends CrudResourceController $APObj = new Client(self::API_KEY); - $projects_info = $APObj->getReport($project, $date, $prev_date); + $report_info = $APObj->getReport($project, $date, $prev_date); - return $projects_info; + return $report_info; } @@ -106,9 +106,22 @@ class AllPositionController extends CrudResourceController $APObj = new Client(self::API_KEY); - $projects_info = $APObj->getVisibility($project, $get_start_date, $get_end_date, $id_se); + $visibility_info = $APObj->getVisibility($project, $get_start_date, $get_end_date, $id_se); - return $projects_info; + return $visibility_info; + + } + + public function reportDatesAction() { + + /** user params **/ + $project = $this->request->get('project') ?? 418068; + + $APObj = new Client(self::API_KEY); + + $report_info = $APObj->getReportDates($project); + + return $report_info; } diff --git a/app/library/App/Resources/AllPositionResource.php b/app/library/App/Resources/AllPositionResource.php index 145700e..463d6dc 100644 --- a/app/library/App/Resources/AllPositionResource.php +++ b/app/library/App/Resources/AllPositionResource.php @@ -11,7 +11,6 @@ namespace App\Resources; use App\Constants\AclRoles; use App\Controllers\AllPositionController; -use Phalcon\Acl; use PhalconApi\Constants\HttpMethods; use PhalconRest\Api\ApiEndpoint; use PhalconRest\Api\ApiResource; @@ -24,35 +23,37 @@ class AllPositionResource extends ApiResource $this ->name('All Position') ->expectsJsonData() - //->transformer(ModelTransformer::class) ->itemKey('ap') ->collectionKey('ap') ->deny(AclRoles::UNAUTHORIZED) ->handler(AllPositionController::class) - ->endpoint( - ApiEndpoint::factory('/project', HttpMethods::GET, 'projectAction') - ->name('project') - ->description('Данные о проекте') - ->paramsDescription([ - 'required params' => [ - 'project' => "integer(ID проекта)" - ] - ]) - ->exampleResponse([ - "url" => "rukzachok.com.ua(URL проекта)", - "cy" => "60(тИЦ)", - "pr" => "0(Google PageRank)", - "yaca" => "0(Наличие сайта в Яндекс каталоге)", - "dmoz" => "0(Наличие сайта в DMOZ)", - "yahoo" => "0(Наличие сайта в Yahoo)", - "name" => "rukzachok.com.ua", - "interval" => 0 - ]) - ->allow(AclRoles::USER) - ) + /** -------------------- [GET] project ------------------------------ **/ + ->endpoint( + ApiEndpoint::factory('/project', HttpMethods::GET, 'projectAction') + ->name('project') + ->description('Данные о проекте') + ->paramsDescription([ + 'required params' => [ + 'project' => "integer(ID проекта)" + ] + ]) + ->exampleResponse([ + "url" => "rukzachok.com.ua(URL проекта)", + "cy" => "60(тИЦ)", + "pr" => "0(Google PageRank)", + "yaca" => "0(Наличие сайта в Яндекс каталоге)", + "dmoz" => "0(Наличие сайта в DMOZ)", + "yahoo" => "0(Наличие сайта в Yahoo)", + "name" => "rukzachok.com.ua", + "interval" => 0 + ]) + ->allow(AclRoles::USER) + ) + /** ----------------------------------------------------------------- **/ - ->endpoint( + /** -------------------- [GET] projects ----------------------------- **/ + ->endpoint( ApiEndpoint::factory('/projects', HttpMethods::GET, 'projectsAction') ->name('projects') ->description('Список проектов пользователя') @@ -86,8 +87,10 @@ class AllPositionResource extends ApiResource ]) ->allow(AclRoles::USER) ) + /** ------------------------------------------------------------------**/ - ->endpoint( + /** -------------------- [GET] projects_group ----------------------- **/ + ->endpoint( ApiEndpoint::factory('/projects_group', HttpMethods::GET, 'projectsGroupAction') ->name('projects group') ->description('Список групп проектов') @@ -106,8 +109,10 @@ class AllPositionResource extends ApiResource ]) ->allow(AclRoles::USER) ) + /** ----------------------------------------------------------------- **/ - ->endpoint( + /** -------------------- [GET] queries ------------------------------ **/ + ->endpoint( ApiEndpoint::factory('/queries', HttpMethods::GET, 'queriesAction') ->name('queries') ->description('Список запросов, по которым определяется позиция сайта') @@ -137,8 +142,10 @@ class AllPositionResource extends ApiResource ]) ->allow(AclRoles::USER) ) + /** ----------------------------------------------------------------- **/ - ->endpoint( + /** -------------------- [GET] queries_group ------------------------ **/ + ->endpoint( ApiEndpoint::factory('/queries_group', HttpMethods::GET, 'queriesGroupAction') ->name('queries group') ->description('Список групп запросов') @@ -157,8 +164,10 @@ class AllPositionResource extends ApiResource ]) ->allow(AclRoles::USER) ) + /** ----------------------------------------------------------------- **/ - ->endpoint( + /** -------------------- [GET] report ------------------------------- **/ + ->endpoint( ApiEndpoint::factory('/report', HttpMethods::GET, 'reportAction') ->name('report') ->description('Отчет по позициям сайта') @@ -219,8 +228,10 @@ class AllPositionResource extends ApiResource ]) ->allow(AclRoles::USER) ) + /** ----------------------------------------------------------------- **/ - ->endpoint( + /** -------------------- [GET] visibility --------------------------- **/ + ->endpoint( ApiEndpoint::factory('/visibility', HttpMethods::GET, 'visibilityAction') ->name('visibility') ->description('Данные о видимости сайта за указанный период') @@ -244,6 +255,29 @@ class AllPositionResource extends ApiResource ]) ->allow(AclRoles::USER) ) + /** ----------------------------------------------------------------- **/ + + /** -------------------- [GET] visibility --------------------------- **/ + ->endpoint( + ApiEndpoint::factory('/report_dates', HttpMethods::GET, 'reportDatesAction') + ->name('report dates') + ->description('Список дат, когда обновлялись позиции сайта') + ->paramsDescription([ + 'required params' => [ + 'project' => 'integer(ID проекта)' + ], + ]) + ->exampleResponse([ + "2017-02-13" => "0.2", + "2017-02-15" => "0.2", + "2017-02-20" => "0.3", + "2017-02-26" => "0.3", + "2017-03-06" => "0.3", + "2017-03-12" => "0.2" + ]) + ->allow(AclRoles::USER) + ) + /** ----------------------------------------------------------------- **/ ; } diff --git a/app/views/general/documentation.phtml b/app/views/general/documentation.phtml index a5a9374..8722392 100755 --- a/app/views/general/documentation.phtml +++ b/app/views/general/documentation.phtml @@ -27,9 +27,16 @@

Коллекции

+
+ + Анкоры + + {{collection.name}} +
+
-
+
{{ collection.name || collection.prefix }}
-- libgit2 0.21.4