9bc75225fe
* Add more actions * Complete sidebar store integration * Complete portal list store integration * Fixed the specs * Added missing specs * Add comment * Code cleanup * Fixed all the spec issues * Add portal and article API specs * Add category name in article list * Add more locales * Code beautification * Exclude locale from codeclimate ci * feat: Category store integration * chore: Minor fixes * chore: API call fixes * chore: Minor fixes * chore: Minor fixes * chore: Adds the ability for get articles based on categories * chore: minor fixes * chore: Minor fixes * chore: fixes specs and minor improvements * chore: Review fixes * chore: Minor fixes * chore: Review fixes * chore: Review fixes * chore: Spacing fixes * Code cleanup Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
26 lines
632 B
JavaScript
26 lines
632 B
JavaScript
/* global axios */
|
|
|
|
import PortalsAPI from './portals';
|
|
|
|
class ArticlesAPI extends PortalsAPI {
|
|
constructor() {
|
|
super('articles', { accountScoped: true });
|
|
}
|
|
|
|
getArticles({
|
|
pageNumber,
|
|
portalSlug,
|
|
locale,
|
|
status,
|
|
author_id,
|
|
category_slug,
|
|
}) {
|
|
let baseUrl = `${this.url}/${portalSlug}/articles?page=${pageNumber}&locale=${locale}`;
|
|
if (status !== undefined) baseUrl += `&status=${status}`;
|
|
if (author_id) baseUrl += `&author_id=${author_id}`;
|
|
if (category_slug) baseUrl += `&category_slug=${category_slug}`;
|
|
return axios.get(baseUrl);
|
|
}
|
|
}
|
|
|
|
export default new ArticlesAPI();
|