From 31051f7347119aea8847d4ddfb1263b0979796d8 Mon Sep 17 00:00:00 2001 From: Yogi Date: Wed, 18 Oct 2017 23:16:22 +0700 Subject: [PATCH 01/15] moving all containers api request to service files --- app/containers/AttendeesList/actions.js | 45 +++++------ app/containers/BoothInfo/actions.js | 25 +++--- app/containers/BoothList/actions.js | 20 +++-- app/containers/Main/actions.js | 12 +-- app/containers/MaterialList/actions.js | 77 ++++++------------ app/containers/NewOrder/actions.js | 42 ++++------ app/containers/Notification/actions.js | 76 ++++++++---------- app/containers/OrderDetail/actions.js | 65 ++++++--------- app/containers/Profile/actions.js | 100 +++++++++-------------- app/containers/Redeem/actions.js | 21 +++-- app/containers/RegisterEmail/actions.js | 4 +- app/containers/RegisterPhone/actions.js | 29 ++++--- app/containers/Schedule/actions.js | 30 ++++--- app/containers/Settings/actions.js | 29 +++---- app/containers/Speaker/actions.js | 20 +++-- app/containers/TicketList/actions.js | 102 +++++++++++------------- app/services/attendees.js | 5 ++ app/services/auth.js | 6 ++ app/services/boothInfo.js | 7 ++ app/services/boothList.js | 6 ++ app/services/changePassword.js | 12 +++ app/services/feeds.js | 8 +- app/services/main.js | 6 ++ app/services/materialList.js | 8 ++ app/services/newOrder.js | 7 ++ app/services/notif.js | 7 ++ app/services/orderDetail.js | 6 ++ app/services/orderlist.js | 8 +- app/services/paymentDetail.js | 6 ++ app/services/profile.js | 7 ++ app/services/pushNotif.js | 4 + app/services/redeem.js | 6 ++ app/services/regEmail.js | 7 ++ app/services/registerPhone.js | 6 ++ app/services/schedule.js | 6 ++ app/services/settings.js | 6 ++ app/services/speaker.js | 6 ++ app/services/ticketList.js | 7 ++ config/development.js | 1 + config/local.example.js | 1 + 40 files changed, 432 insertions(+), 414 deletions(-) mode change 100644 => 100755 app/containers/AttendeesList/actions.js mode change 100644 => 100755 app/containers/BoothInfo/actions.js mode change 100644 => 100755 app/containers/BoothList/actions.js mode change 100644 => 100755 app/containers/Main/actions.js mode change 100644 => 100755 app/containers/MaterialList/actions.js mode change 100644 => 100755 app/containers/NewOrder/actions.js mode change 100644 => 100755 app/containers/Notification/actions.js mode change 100644 => 100755 app/containers/OrderDetail/actions.js mode change 100644 => 100755 app/containers/Profile/actions.js mode change 100644 => 100755 app/containers/Redeem/actions.js mode change 100644 => 100755 app/containers/RegisterEmail/actions.js mode change 100644 => 100755 app/containers/RegisterPhone/actions.js mode change 100644 => 100755 app/containers/Schedule/actions.js mode change 100644 => 100755 app/containers/Settings/actions.js mode change 100644 => 100755 app/containers/Speaker/actions.js mode change 100644 => 100755 app/containers/TicketList/actions.js create mode 100644 app/services/attendees.js create mode 100644 app/services/auth.js create mode 100644 app/services/boothInfo.js create mode 100644 app/services/boothList.js create mode 100644 app/services/changePassword.js create mode 100644 app/services/main.js create mode 100644 app/services/materialList.js create mode 100644 app/services/newOrder.js create mode 100644 app/services/notif.js create mode 100644 app/services/orderDetail.js create mode 100644 app/services/paymentDetail.js create mode 100644 app/services/profile.js create mode 100644 app/services/pushNotif.js create mode 100644 app/services/redeem.js create mode 100644 app/services/regEmail.js create mode 100644 app/services/registerPhone.js create mode 100644 app/services/schedule.js create mode 100644 app/services/settings.js create mode 100644 app/services/speaker.js create mode 100644 app/services/ticketList.js diff --git a/app/containers/AttendeesList/actions.js b/app/containers/AttendeesList/actions.js old mode 100644 new mode 100755 index f32227fc..41e7bd9c --- a/app/containers/AttendeesList/actions.js +++ b/app/containers/AttendeesList/actions.js @@ -12,6 +12,7 @@ import { IS_TRANSFERRING_TICKET } from './constants'; +import attendees from '../../services/attendees'; /* * Get attendees data @@ -34,29 +35,25 @@ export function fetchingAttendeesStatus(status) { export function fetchAttendees() { return (dispatch) => { dispatch(isFetchingAttendees(true)); - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/attendees', { headers }) - .then((response) => { - if ('data' in response.data) { - if (!('message' in response.data.data)) { - dispatch(isFetchingAttendees(false)); - if (response.data.data.length === 0) { - dispatch(fetchingAttendeesStatus(false)); - } else { - dispatch(fetchingAttendeesStatus(response.data.meta.success)); - } - } - dispatch({ - type: FETCH_ATTENDEES, - payloads: response.data.data - }); - } - }) - .catch((err) => { - console.log(err); - }); + + attendees.get().then((response) => { + if ('data' in response.data) { + if (!('message' in response.data.data)) { + dispatch(isFetchingAttendees(false)); + if (response.data.data.length === 0) { + dispatch(fetchingAttendeesStatus(false)); + } else { + dispatch(fetchingAttendeesStatus(response.data.meta.success)); + } + } + dispatch({ + type: FETCH_ATTENDEES, + payloads: response.data.data + }); + } + }) + .catch((err) => { + console.log(err); }); }; } @@ -77,7 +74,7 @@ export function transferTicket(ticketId, receiverId) { Authorization: token, 'Content-Type': 'application/json' }; - DevSummitAxios.put('api/v1/user/tickets', + DevSummitAxios.put('/user/tickets', { ticket_id: ticketId, receiver_id: receiverId diff --git a/app/containers/BoothInfo/actions.js b/app/containers/BoothInfo/actions.js old mode 100644 new mode 100755 index 38496af9..07abbf4c --- a/app/containers/BoothInfo/actions.js +++ b/app/containers/BoothInfo/actions.js @@ -13,6 +13,8 @@ import { } from './constants'; import local from '../../../config/local'; +import boothInfo from '../../services/boothInfo'; + export function updateFields(field, value) { return { type: UPDATE_FIELD, @@ -71,16 +73,12 @@ export function updateDataStorage(response) { export function fetchBoothInfo(id) { return (dispatch) => { - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/booths/galleries/' + id, { headers }) - .then(async (response) => { - await dispatch({ - type: FETCH_BOOTH_INFO, - payloads: response.data - }); - }); + boothInfo.getPhoto(id) + .then((response) => { + dispatch({ + type: FETCH_BOOTH_INFO, + payloads: response.data + }); }); dispatch(clearBoothGallery()); }; @@ -100,14 +98,14 @@ export function uploadBoothImage(image) { name: 'image.jpg' }); - DevSummitAxios.post('/api/v1/booths/galleries', form, { headers }) + boothInfo.post() .then((response) => { dispatch(updateBoothGallery(response.data.data[0])); // dispatch(updateIsBoothGalleriesUpdated(true)); dispatch({ type: UPDATE_IS_BOOTH_GALLERY_UPDATED, status: true - }) + }); }).catch(err => console.log('error upload image', err)); }); }; @@ -118,7 +116,6 @@ export function updateImage(image) { dispatch(updateIsBoothPhotoUpdated(false)); getAccessToken() .then((token) => { - const headers = { Authorization: token }; const form = new FormData(); @@ -128,7 +125,7 @@ export function updateImage(image) { name: 'image.jpg' }); - DevSummitAxios.patch('/api/v1/booths/updatelogo', form, { headers }) + boothInfo.patch() .then((response) => { updateDataStorage(response.data); dispatch(updateBoothPhoto(response.data.data.logo_url)); diff --git a/app/containers/BoothList/actions.js b/app/containers/BoothList/actions.js old mode 100644 new mode 100755 index 732d1470..6652a3b4 --- a/app/containers/BoothList/actions.js +++ b/app/containers/BoothList/actions.js @@ -8,6 +8,7 @@ import { IS_FETCHING_BOOTHS } from './constants'; +import boothList from '../../services/boothList'; /* * Get speaker data */ @@ -23,17 +24,14 @@ export function fetchBoothList() { return (dispatch) => { dispatch(isFetchingBooths(true)); - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/booths', { headers }) - .then(async (response) => { - await dispatch({ - type: FETCH_BOOTH_LIST, - payloads: response.data.data - }); - dispatch(isFetchingBooths(false)) - }); + boothList + .get() + .then((response) => { + dispatch({ + type: FETCH_BOOTH_LIST, + payloads: response.data.data + }); + dispatch(isFetchingBooths(false)); }); }; } diff --git a/app/containers/Main/actions.js b/app/containers/Main/actions.js old mode 100644 new mode 100755 index 61a92c04..ab84937f --- a/app/containers/Main/actions.js +++ b/app/containers/Main/actions.js @@ -3,6 +3,7 @@ import OAuthManager from 'react-native-oauth'; import { twitter } from 'react-native-simple-auth'; import { Actions } from 'react-native-router-flux'; import axios from 'axios'; +import auth from '../../services/auth'; import { DevSummitAxios } from '../../helpers'; @@ -26,6 +27,10 @@ import { TWITTER_CONSUMER_KEY_SECRET } from './constants'; +const Auth = axios.create({ + baseURL: 'http://api.devsummit.io:8081' +}); + /* * Update the input fields * @param {field: name of the field} @@ -86,10 +91,7 @@ export function login() { const { username, password } = fields; dispatch(updateisLoading(true)); - DevSummitAxios.post('/auth/login', { - username, - password - }) + auth.post(username, password, Auth) .then(async (response) => { if (response && response.data && response.data.meta.success) { const resData = response.data.data; @@ -416,7 +418,7 @@ export function subscribeNewsletter() { const { email } = fields; const headers = { 'Content-Type': 'application/json' }; - DevSummitAxios.post('/api/v1/newsletters', { email }, { headers }).then((response) => { + DevSummitAxios.post('/newsletters', { email }, { headers }).then((response) => { if (response && response.data && response.data.meta.success) { dispatch(updateIsSubscribed(true)); } diff --git a/app/containers/MaterialList/actions.js b/app/containers/MaterialList/actions.js old mode 100644 new mode 100755 index 03a5651b..8f0e5868 --- a/app/containers/MaterialList/actions.js +++ b/app/containers/MaterialList/actions.js @@ -13,6 +13,7 @@ import { IS_FETCHING_MATERIAL, DELETE_MATERIAL_LIST } from './constants'; +import materialList from '../../services/materialList'; export function updateInputFields(field, value) { return { @@ -55,53 +56,38 @@ export function isFetchingMaterial(status) { export function fetchMaterialList() { return (dispatch) => { dispatch(isFetchingMaterial(true)); - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/documents', { headers }) - .then((response) => { - dispatch({ - type: FETCH_MATERIAL_LIST, - payloads: response.data.data - }); - dispatch(isFetchingMaterial(false)); - }) - .catch((err) => { - // maybe we can put toast here later - }); + + materialList.get() + .then((response) => { + dispatch({ + type: FETCH_MATERIAL_LIST, + payloads: response.data.data + }); + dispatch(isFetchingMaterial(false)); + }) + .catch((err) => { + // maybe we can put toast here later }); }; } export function updateStatus(data, key) { return (dispatch) => { - - getAccessToken() - .then((token) => { - DevSummitAxios.patch(`/api/v1/documents/${data.id}`, { - title: data.title, - summary: data.summary, - is_used: !data.is_used - }, { - headers: { - Authorization: token - } - }).then((response) => { - if (response && response.data && response.data.meta.success) { - dispatch(updateFlagMaterial(key, 'is_used', response.data.data.is_used)); - } - }).catch((error) => { console.log(error); }); - }); + materialList.patch() + .then((response) => { + if (response && response.data && response.data.meta.success) { + dispatch(updateFlagMaterial(key, 'is_used', response.data.data.is_used)); + } + }).catch((error) => { console.log(error); }); }; } export function saveMaterialList(data) { return (dispatch, getState) => { - getAccessToken() .then((token) => { // @TODO We need to change into dev-summit url - const url = local.API_BASE_URL.concat('/api/v1/documents'); + const url = local.API_BASE_URL.concat('/documents'); const form = new FormData(); form.append('title', data.title); @@ -115,35 +101,22 @@ export function saveMaterialList(data) { fetch(url, { method: 'POST', headers: { Authorization: token }, body: form }) .then(resp => resp.json()) .then((resp) => { - dispatch(addMaterialItem(resp.data)); - }).catch((err) => { - - console.log(err); - + console.log(err); }); }); }; } export function deleteMaterialList(id) { - return (dispatch) => { - getAccessToken() - .then((token) => { + materialList.delete(id) + .then((response) => { - const headers = { Authorization: token }; - - dispatch({ type: DELETE_MATERIAL_LIST, id }); - - DevSummitAxios.delete(`api/v1/documents/${id}`, { headers }) - .then((response) => { - - }) - .catch((err) => { - console.log(err); - }); + }) + .catch((err) => { + console.log(err); }); }; } diff --git a/app/containers/NewOrder/actions.js b/app/containers/NewOrder/actions.js old mode 100644 new mode 100755 index 3cbc0ce5..b28fbfda --- a/app/containers/NewOrder/actions.js +++ b/app/containers/NewOrder/actions.js @@ -1,6 +1,7 @@ import { Actions } from 'react-native-router-flux'; import { DevSummitAxios, getAccessToken } from '../../helpers'; import * as actions from '../OrderList/actions'; +import newOrder from '../../services/newOrder'; /* * import constants @@ -20,26 +21,24 @@ export function isGetTicketType(status) { return { type: IS_GET_TICKET_TYPE, status - } + }; } export function getTicketType() { return (dispatch) => { - dispatch(isGetTicketType(true)) - getAccessToken().then((accessToken) => { - DevSummitAxios.get('/api/v1/tickets', { - headers: { Authorization: accessToken } - }).then((response) => { + dispatch(isGetTicketType(true)); + + newOrder.get() + .then((response) => { if (response && response.data && response.data.meta.success) { dispatch({ type: SET_TICKET_TYPE, data: response.data.data }); - dispatch(isGetTicketType(false)) + dispatch(isGetTicketType(false)); } }) - .catch((err) => { console.log('error', err); }); - }); + .catch((err) => { console.log('error', err); }); }; } @@ -83,20 +82,13 @@ export function placeOrder(redirect = () => {}) { } else { data = { order_details: orderItems }; } - - getAccessToken().then((accessToken) => { - DevSummitAxios.post('api/v1/orders', data, { - headers: { - Authorization: accessToken, - 'Content-Type': 'application/json' - } - }).then((response) => { + newOrder.post(data) + .then((response) => { if (response.data && response.data.meta) { - redirect() + redirect(); } }) - .catch((err) => { console.log(err); }); - }); + .catch((err) => { console.log(err); }); }; } @@ -133,13 +125,8 @@ export function GetReferal() { return (dispatch, getState) => { dispatch(updateIsGettingReferal(true)); const { referalCode } = getState().getIn([ 'newOrder', 'inputFields' ]).toJS(); - getAccessToken().then((accessToken) => { - DevSummitAxios.post('api/v1/referals/check', { referal_code: referalCode }, { - headers: { - Authorization: accessToken, - 'Content-Type': 'application/json' - } - }).then((response) => { + newOrder.postReferal() + .then((response) => { if (response.data && response.data.data) { dispatch({ type: GET_REFERAL, @@ -151,6 +138,5 @@ export function GetReferal() { console.log(err); dispatch(updateIsGettingReferal(false)); }); - }); }; } diff --git a/app/containers/Notification/actions.js b/app/containers/Notification/actions.js old mode 100644 new mode 100755 index 8df6aae8..8543005e --- a/app/containers/Notification/actions.js +++ b/app/containers/Notification/actions.js @@ -1,75 +1,69 @@ -import { DevSummitAxios, getAccessToken } from '../../helpers'; import axios from 'axios'; +import { DevSummitAxios, getAccessToken } from '../../helpers'; import { SET_NOTIFICATION, IS_FETCHING_NOTIFICATION, ADD_NEXT_NOTIFICATION, SET_NEXT_URL } from './constants'; +import notif from '../../services/notif'; export function updateIsFetchingNotification(status) { return { type: IS_FETCHING_NOTIFICATION, status - } + }; } export function fetchNotification() { return (dispatch) => { - dispatch(updateIsFetchingNotification(true)) - getAccessToken().then((token) => { - const headers = { Authorization: token } - DevSummitAxios.get('/api/v1/notifications?page=1', { headers }) - .then((response) => { - dispatch({ - type: SET_NOTIFICATION, - payload: response.data.data - }) - dispatch({ - type: SET_NEXT_URL, - value: response.data.links.next - }) - dispatch(updateIsFetchingNotification(false)) - }).catch(err => { - console.log(err) - dispatch(updateIsFetchingNotification(false)) - }) - }).catch(err => { - console.log(err) - dispatch(updateIsFetchingNotification(false)) - - }) - } + dispatch(updateIsFetchingNotification(true)); + notif.get() + .then((response) => { + dispatch({ + type: SET_NOTIFICATION, + payload: response.data.data + }); + dispatch({ + type: SET_NEXT_URL, + value: response.data.links.next + }); + dispatch(updateIsFetchingNotification(false)); + }).catch((err) => { + console.log(err); + dispatch(updateIsFetchingNotification(false)); + }); + }; } export function fetchNextNotification() { return (dispatch, getState) => { - dispatch(updateIsFetchingNotification(true)) + dispatch(updateIsFetchingNotification(true)); const nextUrl = getState().toJS().notificationList.nextUrl; if (nextUrl) { getAccessToken().then((token) => { - const headers = { Authorization: token } + const headers = { Authorization: token }; axios.get(nextUrl, { headers }) .then((response) => { dispatch({ type: ADD_NEXT_NOTIFICATION, payload: response.data.data - }) + }); dispatch({ type: SET_NEXT_URL, value: response.data.links.next - }) - dispatch(updateIsFetchingNotification(false)) - }).catch(err => { - console.log(err) - dispatch(updateIsFetchingNotification(false)) - }) - }).catch(err => { - console.log(err) - dispatch(updateIsFetchingNotification(false)) - }) + }); + dispatch(updateIsFetchingNotification(false)); + }).catch((err) => { + console.log(err); + dispatch(updateIsFetchingNotification(false)); + }); + }).catch((err) => { + console.log(err); + dispatch(updateIsFetchingNotification(false)); + }); } else { - dispatch(updateIsFetchingNotification(false)) + dispatch(updateIsFetchingNotification(false)); } - } + }; } diff --git a/app/containers/OrderDetail/actions.js b/app/containers/OrderDetail/actions.js old mode 100644 new mode 100755 index dcf39a0d..4254f984 --- a/app/containers/OrderDetail/actions.js +++ b/app/containers/OrderDetail/actions.js @@ -2,6 +2,7 @@ import { Platform } from 'react-native'; import { Actions } from 'react-native-router-flux'; import Toast from 'react-native-simple-toast'; import { DevSummitAxios, getAccessToken } from '../../helpers'; +import orderDetail from '../../services/orderDetail'; /* * import constants */ @@ -53,7 +54,7 @@ export function orderVerification(order, image) { const headers = { Authorization: token }; - DevSummitAxios.post('/api/v1/order-verification', form, { headers }) + DevSummitAxios.post('/order-verification', form, { headers }) .then((response) => { dispatch(setPaymentProof(response.data.data.payment_proof)); Toast.show(response.data.meta.message); @@ -70,22 +71,16 @@ export function orderVerification(order, image) { export function getOrderDetail(orderId) { return (dispatch) => { dispatch(updateIsUpdatingOrder(true)); - getAccessToken() - .then((accessToken) => { - DevSummitAxios.get(`/api/v1/orders/${orderId}/details`, { - headers: { Authorization: accessToken } - }) - .then((response) => { - dispatch(setPaymentProof(response.data.included.verification.payment_proof)); - dispatch({ type: SET_ORDER, data: response.data }); - dispatch(updateIsUpdatingOrder(false)); - }) - .catch((err) => { - console.log(err.response); - }); + + orderDetail + .get(orderId) + .then((response) => { + dispatch(setPaymentProof(response.data.included.verification.payment_proof)); + dispatch({ type: SET_ORDER, data: response.data }); + dispatch(updateIsUpdatingOrder(false)); }) - .catch((error) => { - console.log(error); + .catch((err) => { + console.log('kudazebra', err.response); }); }; } @@ -105,7 +100,7 @@ export function submitUpdateOrder(orders) { getAccessToken() .then((token) => { DevSummitAxios.patch( - `/api/v1/orders/${orders[i].order_id}/details/${orders[i].id}`, + `/orders/${orders[i].order_id}/details/${orders[i].id}`, { count: orders[i].count }, @@ -115,11 +110,11 @@ export function submitUpdateOrder(orders) { ) .then((response) => {}) .catch((err) => { - console.log(err.response); + console.log('kuda merah', err.response); }); }) .catch((error) => { - console.log(error); + console.log('kuda jingkrak', error); }); } }); @@ -169,26 +164,18 @@ export function updateIsConfirmingPayment(status) { export function confirmPayment(id) { return (dispatch) => { dispatch(updateIsConfirmingPayment(true)); - getAccessToken().then((accessToken) => { - DevSummitAxios.patch( - `/api/v1/payments/status/${id}`, - {}, - { - headers: { Authorization: accessToken } + orderDetail.patch(id) + .then((response) => { + if (response.data && response.data.data) { + dispatch({ + type: SET_CONFIRM_PAYMENT, + payload: response.data.data + }); } - ) - .then((response) => { - if (response.data && response.data.data) { - dispatch({ - type: SET_CONFIRM_PAYMENT, - payload: response.data.data - }); - } - dispatch(updateIsConfirmingPayment(false)); - }) - .catch((err) => { - console.log('error here', err); - }); - }); + dispatch(updateIsConfirmingPayment(false)); + }) + .catch((err) => { + console.log('error here', err); + }); }; } diff --git a/app/containers/Profile/actions.js b/app/containers/Profile/actions.js old mode 100644 new mode 100755 index 06a1d330..bf0281f5 --- a/app/containers/Profile/actions.js +++ b/app/containers/Profile/actions.js @@ -15,6 +15,7 @@ import { UPDATE_HAVE_REFERED } from './constants'; import local from '../../../config/local'; +import profile from '../../services/profile'; /* * Update the input fields @@ -121,36 +122,24 @@ export function updateDataStorage2(resp) { export function confirmReferalCode(value) { return (dispatch) => { - getAccessToken().then((token) => { - DevSummitAxios.post( - '/api/v1/referals/submit', - { - referal: value - }, - { - headers: { - Authorization: token - } + profile.post(value) + .then((response) => { + if ( + response && + response.data && + response.data.meta.success && + response.data.meta.message === 'Data retrieved succesfully' + ) { + dispatch(updateHaveRefered(response.data.have_refered)); + dispatch(updateDataStorage(response.data)); + Toast.show('Your code is confirmed, you can not refer another code'); + } else { + Alert.alert('Failed', 'Payload is invalid'); } - ) - .then((response) => { - if ( - response && - response.data && - response.data.meta.success && - response.data.meta.message === 'Data retrieved succesfully' - ) { - dispatch(updateHaveRefered(response.data.have_refered)); - dispatch(updateDataStorage(response.data)); - Toast.show('Your code is confirmed, you can not refer another code'); - } else { - Alert.alert('Failed', 'Payload is invalid'); - } - }) - .catch((error) => { - console.log(error); - }); - }); + }) + .catch((error) => { + console.log(error); + }); }; } @@ -161,40 +150,23 @@ export function changeProfile() { .toJS(); console.log('FIELDSSSSS', fields); const { username, firstName, lastName, profilePic, boothInfo, job, summary, points } = fields; - - getAccessToken().then((token) => { - DevSummitAxios.patch( - '/auth/me/changesetting', - { - first_name: firstName, - last_name: lastName, - booth_info: boothInfo, - speaker_job: job, - speaker_summary: summary - }, - { - headers: { - Authorization: token - } + profile.patch(username, firstName, lastName, profilePic, boothInfo, job, summary, points) + .then((response) => { + if ( + response && + response.data && + response.data.meta.success && + response.data.meta.message === 'Data retrieved succesfully' + ) { + updateDataStorage(response.data); + dispatch(updateIsProfileUpdated(true)); + } else { + Alert.alert('Failed', 'Payload is invalid'); } - ) - .then((response) => { - if ( - response && - response.data && - response.data.meta.success && - response.data.meta.message === 'Data retrieved succesfully' - ) { - updateDataStorage(response.data); - dispatch(updateIsProfileUpdated(true)); - } else { - Alert.alert('Failed', 'Payload is invalid'); - } - }) - .catch((error) => { - console.log(error); - }); - }); + }) + .catch((error) => { + console.log(error); + }); }; } @@ -206,7 +178,7 @@ export function updateImage(image) { getAccessToken().then((token) => { // @TODO We need to change into dev-summit url - const url = local.API_BASE_URL.concat('/api/v1/user/photo'); + const url = local.API_BASE_URL.concat('/user/photo'); const form = new FormData(); if (Platform.OS === 'ios') { @@ -223,7 +195,7 @@ export function updateImage(image) { }); } - DevSummitAxios.post('/api/v1/user/photo', form, { + DevSummitAxios.post('/user/photo', form, { headers: { Authorization: token } diff --git a/app/containers/Redeem/actions.js b/app/containers/Redeem/actions.js old mode 100644 new mode 100755 index 56570f2e..8f170698 --- a/app/containers/Redeem/actions.js +++ b/app/containers/Redeem/actions.js @@ -1,9 +1,10 @@ -import { DevSummitAxios, getAccessToken, getProfileData, getBoothData, getRoleId } from '../../helpers'; import { Alert, AsyncStorage } from 'react-native'; import Toast from 'react-native-simple-toast'; +import { DevSummitAxios, getAccessToken, getProfileData, getBoothData, getRoleId } from '../../helpers'; import local from '../../../config/local'; import { UPDATE_SINGLE_INPUT_FIELD } from './constants'; +import redeem from '../../services/redeem'; export function updateInputFields(field, value) { return { @@ -47,16 +48,12 @@ export function placeRedeem() { .get('code') .toJS(); const { code } = inputFields; - - getAccessToken().then((token) => { - DevSummitAxios.patch('api/v1/redeemcodes', { code }, { headers: { Authorization: token } }) - .then((res) => { - updateDataStorage(res); - Alert.alert('Information', res.data.meta.message); - }) - .catch((error) => { - console.log('ERROR', error); - }); - }); + redeem.patch(code).then((res) => { + updateDataStorage(res); + Alert.alert('Information', res.data.meta.message); + }) + .catch((error) => { + console.log('ERROR', error); + }); }; } diff --git a/app/containers/RegisterEmail/actions.js b/app/containers/RegisterEmail/actions.js old mode 100644 new mode 100755 index c7a2a441..370648c0 --- a/app/containers/RegisterEmail/actions.js +++ b/app/containers/RegisterEmail/actions.js @@ -16,6 +16,8 @@ import { RESET_STATE } from './constants'; +import regEmail from '../../services/regEmail'; + /* * Update the input fields @@ -110,7 +112,7 @@ export function register() { } if (firstName && email && password && username) { - DevSummitAxios.post('/auth/register', data) + regEmail.post(data) .then(async (response) => { if (response && response.data.data && response.data.meta.success) { await AsyncStorage.setItem('profile_email', JSON.stringify(response.data.data.email)); diff --git a/app/containers/RegisterPhone/actions.js b/app/containers/RegisterPhone/actions.js old mode 100644 new mode 100755 index 41ff7a61..4462455b --- a/app/containers/RegisterPhone/actions.js +++ b/app/containers/RegisterPhone/actions.js @@ -17,6 +17,8 @@ import { import { ROLES } from '../../constants'; +import registerPhone from '../../services/registerPhone'; + /* * Update the input fields * @param {field: name of the field} @@ -111,19 +113,20 @@ export function register() { token, referer }; - DevSummitAxios.post('/auth/register', data).then((response) => { - if (response && response.data.data && response.data.meta.success) { - dispatch(updateRegisterStatus(true, 'Success', 'You have been registered, please login.')); - } else if (response.data.data !== null && !response.data.meta.success) { - dispatch(updateRegisterStatus(true, 'Registered', 'You already registered')); - } else if (response.data.data === null && !response.data.meta.success) { - dispatch(updateRegisterStatus(true, 'Failed', response.data.meta.message[0])); - } - dispatch(toggleIsRegistering(false)); - }).catch((error) => { - dispatch(toggleIsRegistering(false)); - console.log(error, 'error caught'); - }); + registerPhone.post(data) + .then((response) => { + if (response && response.data.data && response.data.meta.success) { + dispatch(updateRegisterStatus(true, 'Success', 'You have been registered, please login.')); + } else if (response.data.data !== null && !response.data.meta.success) { + dispatch(updateRegisterStatus(true, 'Registered', 'You already registered')); + } else if (response.data.data === null && !response.data.meta.success) { + dispatch(updateRegisterStatus(true, 'Failed', response.data.meta.message[0])); + } + dispatch(toggleIsRegistering(false)); + }).catch((error) => { + dispatch(toggleIsRegistering(false)); + console.log(error, 'error caught'); + }); } }; } diff --git a/app/containers/Schedule/actions.js b/app/containers/Schedule/actions.js old mode 100644 new mode 100755 index ec66eb4d..3c5f8ad5 --- a/app/containers/Schedule/actions.js +++ b/app/containers/Schedule/actions.js @@ -1,23 +1,21 @@ import { - DevSummitAxios, - getAccessToken + DevSummitAxios, + getAccessToken } from '../../helpers'; +import schedule from '../../services/schedule'; + import { FETCH_USER_SCHEDULE } from './constants'; export function fetchUserSchedule() { - return (dispatch) => { - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/schedules?filter=day', { headers }) - .then((response) => { - dispatch({ - type: FETCH_USER_SCHEDULE, - payloads: response.data.data - }); - }) - .catch((error) => { return console.log(error.response); }); - }).catch((err) => { console.log(err); }); - }; + return (dispatch) => { + schedule.get() + .then((response) => { + dispatch({ + type: FETCH_USER_SCHEDULE, + payloads: response.data.data + }); + }) + .catch((error) => { return console.log(error.response); }); + }; } diff --git a/app/containers/Settings/actions.js b/app/containers/Settings/actions.js old mode 100644 new mode 100755 index 56315d06..fd9c025c --- a/app/containers/Settings/actions.js +++ b/app/containers/Settings/actions.js @@ -13,6 +13,7 @@ import { } from './constants'; import { restoreCurrentPage } from '../Feed/actions'; import local from '../../../config/local'; +import settings from '../../services/settings'; /* * Update the input fields @@ -88,25 +89,13 @@ export function changeProfile() { const { fields } = getState().get('profile').toJS(); const { username, firstName, lastName, profilePic, boothInfo, job, summary } = fields; - getAccessToken() - .then((token) => { - DevSummitAxios.patch('/auth/me/changesetting', { - first_name: firstName, - last_name: lastName, - booth_info: boothInfo, - speaker_job: job, - speaker_summary: summary - }, { - headers: { - Authorization: token - } - }).then((response) => { - if (response && response.data && response.data.meta.success) { - updateDataStorage(response); - dispatch(updateIsProfileUpdated(true)); - } - }).catch((error) => { console.log(error); }); - }); + settings.patch(firstName, lastName, boothInfo, job, summary) + .then((response) => { + if (response && response.data && response.data.meta.success) { + updateDataStorage(response); + dispatch(updateIsProfileUpdated(true)); + } + }).catch((error) => { console.log(error); }); }; } @@ -117,7 +106,7 @@ export function updateImage(image) { getAccessToken() .then((token) => { // @TODO We need to change into dev-summit url - const url = local.API_BASE_URL.concat('api/v1/user/photo'); + const url = local.API_BASE_URL.concat('/user/photo'); const form = new FormData(); form.append('image_data', { diff --git a/app/containers/Speaker/actions.js b/app/containers/Speaker/actions.js old mode 100644 new mode 100755 index 8061fcdb..17b6f7d5 --- a/app/containers/Speaker/actions.js +++ b/app/containers/Speaker/actions.js @@ -7,22 +7,20 @@ import { FETCH_SPEAKER_LIST } from './constants'; +import speaker from '../../services/speaker'; + /* * Get speaker data */ -export function fetchSpeakerList() { +export default function fetchSpeakerList() { return (dispatch) => { - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/speakers', { headers }) - .then((response) => { - dispatch({ - type: FETCH_SPEAKER_LIST, - payloads: response.data.data - }); - }); + speaker.get() + .then((response) => { + dispatch({ + type: FETCH_SPEAKER_LIST, + payloads: response.data.data + }); }); }; } diff --git a/app/containers/TicketList/actions.js b/app/containers/TicketList/actions.js old mode 100644 new mode 100755 index 089aa874..fa49d8ef --- a/app/containers/TicketList/actions.js +++ b/app/containers/TicketList/actions.js @@ -1,3 +1,5 @@ +import { Alert } from 'react-native'; +import Toast from 'react-native-simple-toast'; import * as actions from '../AttendeesList/actions'; import { DevSummitAxios, getAccessToken } from '../../helpers'; @@ -10,8 +12,7 @@ import { IS_TRANSFER_TICKET } from './constants'; -import { Alert } from 'react-native'; -import Toast from 'react-native-simple-toast'; +import ticketList from '../../services/ticketList'; /* * Get user ticket data @@ -48,34 +49,28 @@ export function isTransferTicket(status) { export function fetchUserTicket() { return (dispatch) => { dispatch(isFetchingUserTicket(true)); - getAccessToken() - .then((token) => { - const headers = { Authorization: token }; - DevSummitAxios.get('api/v1/user/tickets', { headers }) - .then((response) => { - if ('data' in response.data) { - if (!('message' in response.data.data)) { - if (response.data.data.length === 0) { - dispatch(fetchUserTicketStatus(false)); - } else { - dispatch(fetchUserTicketStatus(response.data.meta.success)); - } - } - dispatch(isFetchingUserTicket(false)); - dispatch(actions.isTransferringTicket(false)); - dispatch({ - type: FETCH_USER_TICKET, - payloads: response.data.data - }); + + ticketList.get() + .then((response) => { + if ('data' in response.data) { + if (!('message' in response.data.data)) { + if (response.data.data.length === 0) { + dispatch(fetchUserTicketStatus(false)); + } else { + dispatch(fetchUserTicketStatus(response.data.meta.success)); } - }) - .catch((error) => { - dispatch(actions.isTransferringTicket(false)); - console.log(error.response); + } + dispatch(isFetchingUserTicket(false)); + dispatch(actions.isTransferringTicket(false)); + dispatch({ + type: FETCH_USER_TICKET, + payloads: response.data.data }); + } }) - .catch((err) => { - console.log(err); + .catch((error) => { + dispatch(actions.isTransferringTicket(false)); + console.log(error.response); }); }; } @@ -84,34 +79,31 @@ export function transferTicket(receiver, id, password, callback) { return (dispatch) => { dispatch(isFetchingUserTicket(true)); const payloads = { - receiver: receiver, + receiver, user_ticket_id: id, - password: password + password }; - - getAccessToken().then((token) => { - DevSummitAxios.post('api/v1/tickets/transfer', payloads, { headers: { Authorization: token } }) - .then((res) => { - if (res.data.meta.success) { - Toast.show(res.data.meta.message, Toast.LONG); - callback(); - dispatch(isFetchingUserTicket(false)); - dispatch(fetchUserTicket()); - } else { - Alert.alert( - 'Information', - res.data.meta.message, - [ - { text: 'OK', onPress: () => dispatch(fetchUserTicket()) } - ], - { cancelable: false } - ); - } - }) - .catch((err) => { - dispatch(isFetchingUserTicket(false)); - console.log('ERROR', err); - }) - }); + ticketList.post(payloads) + .then((res) => { + if (res.data.meta.success) { + Toast.show(res.data.meta.message, Toast.LONG); + callback(); + dispatch(isFetchingUserTicket(false)); + dispatch(fetchUserTicket()); + } else { + Alert.alert( + 'Information', + res.data.meta.message, + [ + { text: 'OK', onPress: () => dispatch(fetchUserTicket()) } + ], + { cancelable: false } + ); + } + }) + .catch((err) => { + dispatch(isFetchingUserTicket(false)); + console.log('ERROR', err); + }); }; -} \ No newline at end of file +} diff --git a/app/services/attendees.js b/app/services/attendees.js new file mode 100644 index 00000000..701b8eae --- /dev/null +++ b/app/services/attendees.js @@ -0,0 +1,5 @@ +import Api from './api'; + +export default { + get: () => Api.get('attendees') +}; diff --git a/app/services/auth.js b/app/services/auth.js new file mode 100644 index 00000000..0f0c8d1c --- /dev/null +++ b/app/services/auth.js @@ -0,0 +1,6 @@ + + +export default { + post: (username, password, Auth) => Auth.post('/auth/login', { username, password }), + post2: (email, headers, Auth) => Auth.post2('/newsletters', { email, headers }) +}; diff --git a/app/services/boothInfo.js b/app/services/boothInfo.js new file mode 100644 index 00000000..48c9dd2f --- /dev/null +++ b/app/services/boothInfo.js @@ -0,0 +1,7 @@ +import Api from './api'; + +export default { + get: id => Api.get(`/attendees/${id}`), + getPhoto: id => Api.get(`/booths/galleries/${id}`), + patch: form => Api.get('/booths/galleries/update_logo', form) +}; diff --git a/app/services/boothList.js b/app/services/boothList.js new file mode 100644 index 00000000..27965cc4 --- /dev/null +++ b/app/services/boothList.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + get: () => Api.get('/booths') + +}; diff --git a/app/services/changePassword.js b/app/services/changePassword.js new file mode 100644 index 00000000..a1d3e9c9 --- /dev/null +++ b/app/services/changePassword.js @@ -0,0 +1,12 @@ +import Api from './api'; + +export default { + get: () => Api.get('/auth/me/changepassword', { + old_password: current_password, + new_password + }, { + headers: { + Authorization: token + } + }) +}; diff --git a/app/services/feeds.js b/app/services/feeds.js index 8de7b481..7917ed7c 100644 --- a/app/services/feeds.js +++ b/app/services/feeds.js @@ -1,8 +1,8 @@ import Api from './api'; export default { - get: page => Api.get(`/api/v1/feeds?page=${page}`), - post: data => Api.post('/api/v1/feeds', data), - delete: id => Api.delete(`/api/v1/feeds/${id}`), - report: data => Api.post('/api/v1/feeds/reports', data) + get: page => Api.get(`/feeds?page=${page}`), + post: data => Api.post('/feeds', data), + delete: id => Api.delete(`/feeds/${id}`), + report: data => Api.post('/feeds/reports', data) }; diff --git a/app/services/main.js b/app/services/main.js new file mode 100644 index 00000000..d58c263a --- /dev/null +++ b/app/services/main.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default{ + get: () => Api.get() +} +; diff --git a/app/services/materialList.js b/app/services/materialList.js new file mode 100644 index 00000000..a368f487 --- /dev/null +++ b/app/services/materialList.js @@ -0,0 +1,8 @@ +import Api from './api'; + +export default { + get: () => Api.get('/documents'), + patch: data => Api.patch(`/documents/${data.id}`), + delete: id => Api.delete(`/documents/${id}`) +} +; diff --git a/app/services/newOrder.js b/app/services/newOrder.js new file mode 100644 index 00000000..7dc71608 --- /dev/null +++ b/app/services/newOrder.js @@ -0,0 +1,7 @@ +import Api from './api'; + +export default { + get: () => Api.get('/tickets'), + post: data => Api.post('/orders', data), + postReferal: () => Api.post('/referals/check') +}; diff --git a/app/services/notif.js b/app/services/notif.js new file mode 100644 index 00000000..ffb82847 --- /dev/null +++ b/app/services/notif.js @@ -0,0 +1,7 @@ +import Api from './api'; + +export default { + get: () => Api.get('/notifications?page=1') + // getNext: nextUrl => +} +; diff --git a/app/services/orderDetail.js b/app/services/orderDetail.js new file mode 100644 index 00000000..c9a43325 --- /dev/null +++ b/app/services/orderDetail.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + get: orderId => Api.get(`/orders/${orderId}/details`), + patch: id => Api.patch(`/payments/status/${id}`) +}; diff --git a/app/services/orderlist.js b/app/services/orderlist.js index accfc67c..e09409c9 100644 --- a/app/services/orderlist.js +++ b/app/services/orderlist.js @@ -1,8 +1,8 @@ import Api from './api'; export default { - get: () => Api.get('/api/v1/orders'), - update: id => Api.patch(`/api/v1/payments/status/${id}`), - countRedeem: () => Api.get('/api/v1/me'), - claimReward: () => Api.post('/api/v1/referals/reward', {}) + get: () => Api.get('/orders'), + update: id => Api.patch(`/payments/status/${id}`), + countRedeem: () => Api.get('/me'), + claimReward: () => Api.post('/referals/reward', {}) }; diff --git a/app/services/paymentDetail.js b/app/services/paymentDetail.js new file mode 100644 index 00000000..66b74582 --- /dev/null +++ b/app/services/paymentDetail.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + post: () => Api.post() +} +; diff --git a/app/services/profile.js b/app/services/profile.js new file mode 100644 index 00000000..107cbbe9 --- /dev/null +++ b/app/services/profile.js @@ -0,0 +1,7 @@ +import Api from './api'; + +export default { + post: value => Api.post('/referals/submit'), + patch: (username, firstName, lastName, profilePic, boothInfo, job, summary, points) => Api.post('/auth/me/changesetting') +} +; diff --git a/app/services/pushNotif.js b/app/services/pushNotif.js new file mode 100644 index 00000000..2604dd98 --- /dev/null +++ b/app/services/pushNotif.js @@ -0,0 +1,4 @@ + +export default { + patch: () => PushNotif.patch('auth/me/updatefcmtoken', { token, headers }) +}; diff --git a/app/services/redeem.js b/app/services/redeem.js new file mode 100644 index 00000000..c01b7786 --- /dev/null +++ b/app/services/redeem.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + patch: code => Api.post('/redeemcodes') +} +; diff --git a/app/services/regEmail.js b/app/services/regEmail.js new file mode 100644 index 00000000..464628aa --- /dev/null +++ b/app/services/regEmail.js @@ -0,0 +1,7 @@ +import Api from './api'; + +export default { + post: data => Api.post('/auth/register') + // getNext: nextUrl => +} +; diff --git a/app/services/registerPhone.js b/app/services/registerPhone.js new file mode 100644 index 00000000..6cfd4b12 --- /dev/null +++ b/app/services/registerPhone.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + post: data => Api.post('/auth/register') +} +; diff --git a/app/services/schedule.js b/app/services/schedule.js new file mode 100644 index 00000000..c7c494c8 --- /dev/null +++ b/app/services/schedule.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + get: () => Api.get('schedules?filter=day') +} +; diff --git a/app/services/settings.js b/app/services/settings.js new file mode 100644 index 00000000..b6b0a0d4 --- /dev/null +++ b/app/services/settings.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + patch: (firstName, lastName, boothInfo, job, summary) => Api.patch('/auth/me/changesetting') +} +; diff --git a/app/services/speaker.js b/app/services/speaker.js new file mode 100644 index 00000000..b08376d9 --- /dev/null +++ b/app/services/speaker.js @@ -0,0 +1,6 @@ +import Api from './api'; + +export default { + get: () => Api.get('/speakers') +} +; diff --git a/app/services/ticketList.js b/app/services/ticketList.js new file mode 100644 index 00000000..fba7533a --- /dev/null +++ b/app/services/ticketList.js @@ -0,0 +1,7 @@ +import Api from './api'; + +export default { + get: () => Api.get('/user/tickets'), + post: payloads => Api.post('/tickets/transfer') +} +; diff --git a/config/development.js b/config/development.js index 294f455d..69ad9ac1 100644 --- a/config/development.js +++ b/config/development.js @@ -1,5 +1,6 @@ export default { API_BASE_URL: 'http://api.devsummit.io:8081', + AUTH_BASE_URL: 'http://api.devsummit.io:8081', CLIENT_SECRET: 'supersecret', FB_CLIENT_ID: '216608565531165', diff --git a/config/local.example.js b/config/local.example.js index ee05a264..eed47884 100644 --- a/config/local.example.js +++ b/config/local.example.js @@ -1,5 +1,6 @@ export default { API_BASE_URL: '', + AUTH_BASE_URL: 'http://api.devsummit.io:8081', CLIENT_SECRET: 'supersecret', FB_CLIENT_ID: '216608565531165', From a78cfd3348e0953b3a5bab7f9889babc234d7783 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 14:52:38 +0700 Subject: [PATCH 02/15] removing api/v1 prefix --- app/constants.js | 1 + app/containers/Feed/index.js | 4 ++-- app/containers/MaterialList/actions.js | 4 ++-- app/containers/OrderDetail/actions.js | 15 ++----------- app/containers/Redeem/actions.js | 5 +++-- app/containers/Settings/actions.js | 29 ++++++++++++++++++-------- app/services/auth.js | 2 +- 7 files changed, 31 insertions(+), 29 deletions(-) diff --git a/app/constants.js b/app/constants.js index fece92d5..21d5d48f 100644 --- a/app/constants.js +++ b/app/constants.js @@ -4,6 +4,7 @@ const config = require('../config/local').default; export const API_BASE_URL = config.API_BASE_URL; +export const AUTH_BASE_URL = config.AUTH_BASE_URL; export const MIDTRANS_CLIENT_KEY = config.MIDTRANS_CLIENT_KEY; export const PAYPAL_CLIENT_ID = config.PAYPAL_CLIENT_ID; export const PAYPAL_CURRENCY = config.PAYPAL_CURRENCY; diff --git a/app/containers/Feed/index.js b/app/containers/Feed/index.js index ea6552f5..fa7a18b2 100644 --- a/app/containers/Feed/index.js +++ b/app/containers/Feed/index.js @@ -53,10 +53,10 @@ import * as selectors from './selectors'; import OrderList from '../OrderList'; import Redeem from '../Redeem'; import { PRIMARYCOLOR } from '../../constants'; -import { API_BASE_URL } from '../../constants'; +import { AUTH_BASE_URL } from '../../constants'; import { CONTENT_REPORT, TWITTER_ICON, FACEBOOK_ICON, WHATSAPP_ICON } from './constants'; -const socket = openSocket(API_BASE_URL); +const socket = openSocket(AUTH_BASE_URL); const noFeeds = require('./../../../assets/images/nofeed.png'); function subscribeToFeeds(cb) { diff --git a/app/containers/MaterialList/actions.js b/app/containers/MaterialList/actions.js index 7deeb7a4..bbdb32a6 100755 --- a/app/containers/MaterialList/actions.js +++ b/app/containers/MaterialList/actions.js @@ -55,11 +55,11 @@ export function isFetchingMaterial(status) { }; } -export function fetchMaterialList(id) { +export function fetchMaterialList() { return (dispatch) => { dispatch(isFetchingMaterial(true)); - materialList.then((response) => { + materialList.get().then((response) => { dispatch({ type: FETCH_MATERIAL_LIST, payloads: response.data.data diff --git a/app/containers/OrderDetail/actions.js b/app/containers/OrderDetail/actions.js index e035661c..1e9821ba 100755 --- a/app/containers/OrderDetail/actions.js +++ b/app/containers/OrderDetail/actions.js @@ -73,28 +73,17 @@ export function getOrderDetail(orderId) { return (dispatch) => { dispatch(updateIsUpdatingOrder(true)); -<<<<<<< HEAD - orderDetail - .get(orderId) - .then((response) => { - dispatch(setPaymentProof(response.data.included.verification.payment_proof)); -======= orderdetail .get(orderId) .then((response) => { if (response.data.included.verification) { dispatch(setPaymentProof(response.data.included.verification.payment_proof)); } ->>>>>>> origin/develop dispatch({ type: SET_ORDER, data: response.data }); dispatch(updateIsUpdatingOrder(false)); }) .catch((err) => { -<<<<<<< HEAD - console.log('kudazebra', err.response); -======= console.log(err.response); ->>>>>>> origin/develop }); }; } @@ -124,11 +113,11 @@ export function submitUpdateOrder(orders) { ) .then((response) => {}) .catch((err) => { - console.log('kuda merah', err.response); + console.log(err.response); }); }) .catch((error) => { - console.log('kuda jingkrak', error); + console.log('Error', error); }); } }); diff --git a/app/containers/Redeem/actions.js b/app/containers/Redeem/actions.js index 8f170698..0fb1c5d8 100755 --- a/app/containers/Redeem/actions.js +++ b/app/containers/Redeem/actions.js @@ -4,7 +4,7 @@ import { DevSummitAxios, getAccessToken, getProfileData, getBoothData, getRoleId import local from '../../../config/local'; import { UPDATE_SINGLE_INPUT_FIELD } from './constants'; -import redeem from '../../services/redeem'; +import redeemed from '../../services/redeem'; export function updateInputFields(field, value) { return { @@ -48,7 +48,8 @@ export function placeRedeem() { .get('code') .toJS(); const { code } = inputFields; - redeem.patch(code).then((res) => { + + redeemed.patch({ "code": code }).then((res) => { updateDataStorage(res); Alert.alert('Information', res.data.meta.message); }) diff --git a/app/containers/Settings/actions.js b/app/containers/Settings/actions.js index fd9c025c..56315d06 100755 --- a/app/containers/Settings/actions.js +++ b/app/containers/Settings/actions.js @@ -13,7 +13,6 @@ import { } from './constants'; import { restoreCurrentPage } from '../Feed/actions'; import local from '../../../config/local'; -import settings from '../../services/settings'; /* * Update the input fields @@ -89,13 +88,25 @@ export function changeProfile() { const { fields } = getState().get('profile').toJS(); const { username, firstName, lastName, profilePic, boothInfo, job, summary } = fields; - settings.patch(firstName, lastName, boothInfo, job, summary) - .then((response) => { - if (response && response.data && response.data.meta.success) { - updateDataStorage(response); - dispatch(updateIsProfileUpdated(true)); - } - }).catch((error) => { console.log(error); }); + getAccessToken() + .then((token) => { + DevSummitAxios.patch('/auth/me/changesetting', { + first_name: firstName, + last_name: lastName, + booth_info: boothInfo, + speaker_job: job, + speaker_summary: summary + }, { + headers: { + Authorization: token + } + }).then((response) => { + if (response && response.data && response.data.meta.success) { + updateDataStorage(response); + dispatch(updateIsProfileUpdated(true)); + } + }).catch((error) => { console.log(error); }); + }); }; } @@ -106,7 +117,7 @@ export function updateImage(image) { getAccessToken() .then((token) => { // @TODO We need to change into dev-summit url - const url = local.API_BASE_URL.concat('/user/photo'); + const url = local.API_BASE_URL.concat('api/v1/user/photo'); const form = new FormData(); form.append('image_data', { diff --git a/app/services/auth.js b/app/services/auth.js index 0f0c8d1c..d9840777 100644 --- a/app/services/auth.js +++ b/app/services/auth.js @@ -2,5 +2,5 @@ export default { post: (username, password, Auth) => Auth.post('/auth/login', { username, password }), - post2: (email, headers, Auth) => Auth.post2('/newsletters', { email, headers }) + post2: (email, headers, Auth) => Auth.post('/newsletters', { email, headers }) }; From aec5484ad09a907efef4b2fcc9aa6b89aee6b919 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 14:53:10 +0700 Subject: [PATCH 03/15] removing api/v1 prefix --- app/services/orderdetail.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/services/orderdetail.js b/app/services/orderdetail.js index c72da5bb..2ef7f7a1 100644 --- a/app/services/orderdetail.js +++ b/app/services/orderdetail.js @@ -1,6 +1,6 @@ import Api from './api'; export default { - get: id => Api.get(`/api/v1/orders/${id}/details`), - postPaymentProof: form => Api.post('/api/v1/order-verification', form) + get: id => Api.get(`/orders/${id}/details`), + postPaymentProof: form => Api.post('/order-verification', form) }; From 8f315459691d493ca74cc9eb806fafc130390914 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 14:53:37 +0700 Subject: [PATCH 04/15] removing api/v1 prefix --- app/services/payment.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/services/payment.js b/app/services/payment.js index 00717774..86ed8a1b 100644 --- a/app/services/payment.js +++ b/app/services/payment.js @@ -1,7 +1,7 @@ import Api from './api'; export default { - get: () => Api.get('/api/v1/tickets'), - post: payload => Api.post('/api/v1/orders', payload), - confirm: payload => Api.post('/api/v1/payments/confirm', payload) + get: () => Api.get('/tickets'), + post: payload => Api.post('/orders', payload), + confirm: payload => Api.post('/payments/confirm', payload) }; From 40a2d7fc6e76099b87226d8b4d3b2a7786474370 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 14:54:01 +0700 Subject: [PATCH 05/15] removing api/v1 prefix --- app/services/redeem.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/redeem.js b/app/services/redeem.js index c01b7786..f2f29d6b 100644 --- a/app/services/redeem.js +++ b/app/services/redeem.js @@ -1,6 +1,6 @@ import Api from './api'; export default { - patch: code => Api.post('/redeemcodes') + patch: code => Api.put('/redeemcodes', code) } ; From b2c46aed48192ff0ea0de6ee994d9f915b42d9aa Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 14:54:17 +0700 Subject: [PATCH 06/15] removing api/v1 prefix --- app/services/settings.js | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/app/services/settings.js b/app/services/settings.js index b6b0a0d4..ed02f737 100644 --- a/app/services/settings.js +++ b/app/services/settings.js @@ -1,6 +1,3 @@ -import Api from './api'; - export default { - patch: (firstName, lastName, boothInfo, job, summary) => Api.patch('/auth/me/changesetting') -} -; + patch: (firstName, lastName, boothInfo, job, summary, Auth) => Auth.patch('/auth/me/changesetting', {firstName, lastName, boothInfo, job, summary}) +}; From 2d8685e70ca023275c280f79faee188b50e95733 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 14:54:28 +0700 Subject: [PATCH 07/15] removing api/v1 prefix --- app/services/ticketList.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/ticketList.js b/app/services/ticketList.js index fba7533a..69b4bee7 100644 --- a/app/services/ticketList.js +++ b/app/services/ticketList.js @@ -2,6 +2,6 @@ import Api from './api'; export default { get: () => Api.get('/user/tickets'), - post: payloads => Api.post('/tickets/transfer') + post: payloads => Api.post('/tickets/transfer', payloads) } ; From 1e83cd01bd7f6f81192a4556f7b103dbbf642834 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 17:24:17 +0700 Subject: [PATCH 08/15] removing api/v1 prefix --- app/containers/ChangePassword/actions.js | 52 +++++++++++------------- 1 file changed, 23 insertions(+), 29 deletions(-) diff --git a/app/containers/ChangePassword/actions.js b/app/containers/ChangePassword/actions.js index 502123bd..4dd4e7a1 100644 --- a/app/containers/ChangePassword/actions.js +++ b/app/containers/ChangePassword/actions.js @@ -3,7 +3,7 @@ import { AsyncStorage } from 'react-native'; import { DevSummitAxios, getAccessToken -} from '../../helpers' +} from '../../helpers'; /* * import constants @@ -16,7 +16,9 @@ import { UPDATE_IS_PASSWORD_UPDATED, UPDATE_IS_PASSWORD_WRONG, RESET_STATE -} from './constants' +} from './constants'; + +import changedPassword from '../../services/changePassword'; /* @@ -25,11 +27,11 @@ import { * @param {value: value to be set} */ export function updateInputFields(field, value) { - return { - type: UPDATE_SINGLE_INPUT_FIELD, - field, - value - } + return { + type: UPDATE_SINGLE_INPUT_FIELD, + field, + value + }; } @@ -39,11 +41,11 @@ export function updateInputFields(field, value) { * @param {value: value to be set} */ export function updateErrorFields(field, value) { - return { - type: UPDATE_SINGLE_ERROR_FIELD, - field, - value - } + return { + type: UPDATE_SINGLE_ERROR_FIELD, + field, + value + }; } export function updateIsLoading(status) { @@ -79,24 +81,16 @@ export function changePassword() { const { inputFields } = getState().get('changePassword').toJS(); const { current_password, new_password, confirm_password } = inputFields; - getAccessToken() - .then((token) => { - DevSummitAxios.patch('/auth/me/changepassword', { - old_password: current_password, - new_password - }, { - headers: { - Authorization: token - } - }).then((response) => { - if (response && response.data && response.data.meta.success) { - dispatch(updateIsPasswordUpdate(true)); - } else { - dispatch(updateIsPasswordWrong(true)); - } + changedPassword.patch({old_password: current_password, + new_password}) + .then((response) => { + if (response && response.data && response.data.meta.success) { + dispatch(updateIsPasswordUpdate(true)); + } else { + dispatch(updateIsPasswordWrong(true)); + } - dispatch(updateIsLoading(false)); - }); + dispatch(updateIsLoading(false)); }); }; } From a03c380070a186a39907d540f9e9a890b48e5b08 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 17:25:15 +0700 Subject: [PATCH 09/15] adding auth_base_url --- app/containers/Feed/index.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/containers/Feed/index.js b/app/containers/Feed/index.js index fa7a18b2..835fdf23 100644 --- a/app/containers/Feed/index.js +++ b/app/containers/Feed/index.js @@ -52,8 +52,7 @@ import * as actions from './actions'; import * as selectors from './selectors'; import OrderList from '../OrderList'; import Redeem from '../Redeem'; -import { PRIMARYCOLOR } from '../../constants'; -import { AUTH_BASE_URL } from '../../constants'; +import { PRIMARYCOLOR, AUTH_BASE_URL } from '../../constants'; import { CONTENT_REPORT, TWITTER_ICON, FACEBOOK_ICON, WHATSAPP_ICON } from './constants'; const socket = openSocket(AUTH_BASE_URL); From d91631dd02a0a7b0e741377b8b82dd30111fbd07 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 17:25:29 +0700 Subject: [PATCH 10/15] removing api/v1 prefix --- app/containers/Profile/actions.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/app/containers/Profile/actions.js b/app/containers/Profile/actions.js index bf0281f5..f03a8c26 100755 --- a/app/containers/Profile/actions.js +++ b/app/containers/Profile/actions.js @@ -1,6 +1,7 @@ import { AsyncStorage, Platform, Alert } from 'react-native'; import Toast from 'react-native-simple-toast'; import FormData from 'FormData'; +import axios from 'axios'; import { DevSummitAxios, getAccessToken, getProfileData } from '../../helpers'; import { UPDATE_SINGLE_FIELD, @@ -17,6 +18,10 @@ import { import local from '../../../config/local'; import profile from '../../services/profile'; +const Auth = axios.create({ + baseURL: 'http://api.devsummit.io:8081' +}); + /* * Update the input fields * @param {field: name of the field} @@ -150,7 +155,13 @@ export function changeProfile() { .toJS(); console.log('FIELDSSSSS', fields); const { username, firstName, lastName, profilePic, boothInfo, job, summary, points } = fields; - profile.patch(username, firstName, lastName, profilePic, boothInfo, job, summary, points) + profile.patch({ + first_name: firstName, + last_name: lastName, + booth_info: boothInfo, + speaker_job: job, + speaker_summary: summary + }) .then((response) => { if ( response && From ec2c1a2754c10ab21481de3f0740385673d8797d Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 17:26:03 +0700 Subject: [PATCH 11/15] adding api service --- app/services/changePassword.js | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/app/services/changePassword.js b/app/services/changePassword.js index a1d3e9c9..cca516b6 100644 --- a/app/services/changePassword.js +++ b/app/services/changePassword.js @@ -1,12 +1,10 @@ import Api from './api'; +import { + AUTH_BASE_URL +} from '../constants'; export default { - get: () => Api.get('/auth/me/changepassword', { - old_password: current_password, - new_password - }, { - headers: { - Authorization: token - } - }) -}; + patch: inputFields => Api.put(`${AUTH_BASE_URL}/auth/me/changepassword`, inputFields) + // getNext: nextUrl => +} +; From aca289cf3fe046e1f5623df65072c5db532a1978 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 17:26:12 +0700 Subject: [PATCH 12/15] adding api service --- app/services/profile.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/services/profile.js b/app/services/profile.js index 107cbbe9..7346cf42 100644 --- a/app/services/profile.js +++ b/app/services/profile.js @@ -1,7 +1,10 @@ import Api from './api'; +import { + AUTH_BASE_URL +} from '../constants'; export default { post: value => Api.post('/referals/submit'), - patch: (username, firstName, lastName, profilePic, boothInfo, job, summary, points) => Api.post('/auth/me/changesetting') + patch: fields => Api.put(`${AUTH_BASE_URL}/auth/me/changesetting`, fields) } ; From f7143fa822d440a61d093e479fa1b5953c145c74 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 17:26:23 +0700 Subject: [PATCH 13/15] adding api service --- app/services/regEmail.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/services/regEmail.js b/app/services/regEmail.js index 464628aa..230dce04 100644 --- a/app/services/regEmail.js +++ b/app/services/regEmail.js @@ -1,7 +1,10 @@ import Api from './api'; +import { + AUTH_BASE_URL +} from '../constants'; export default { - post: data => Api.post('/auth/register') + post: inputFields => Api.post(`${AUTH_BASE_URL}/auth/register`, inputFields) // getNext: nextUrl => } ; From e8b2a34a153564457a53237b66adf73593dbacd6 Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 23:49:13 +0700 Subject: [PATCH 14/15] change feedback service --- app/containers/Settings/actions.js | 49 +++++++++++------------------- 1 file changed, 18 insertions(+), 31 deletions(-) diff --git a/app/containers/Settings/actions.js b/app/containers/Settings/actions.js index b366ee42..fe58aec4 100755 --- a/app/containers/Settings/actions.js +++ b/app/containers/Settings/actions.js @@ -17,6 +17,7 @@ import { } from './constants'; import { restoreCurrentPage } from '../Feed/actions'; import local from '../../../config/local'; +import settings from '../../services/settings'; /* * Update the input fields @@ -112,38 +113,24 @@ export function addFeedback() { return (dispatch, getState) => { const { feedBack } = getState().get('settings').toJS(); dispatch(updateIsLoadingFeedback(true)); - - getAccessToken() - .then((token) => { - DevSummitAxios.post( - '/api/v1/user-feedback', - { - content: feedBack - }, - { - headers: { - Authorization: token - } - } - ) - .then((response) => { - if (response && response.data && response.data.meta.success === true && response.data.meta.message === 'Feedback created') { - dispatch({ - type: UPDATE_FEEDBACK_POSTED, - status: true - }); - dispatch(updateFeedback(response.data.data.content)); - dispatch(updateIsLoadingFeedback(false)); - dispatch(updateModalVisibility(false)); - Toast.show(response.data.meta.message); - } else { - Toast.show('Wrong payload'); - } - }) - .catch((error) => { - Toast.show('Sorry, something went wrong'); - console.log("Error", error); + settings.post({ content: feedBack }) + .then((response) => { + if (response && response.data && response.data.meta.success === true && response.data.meta.message === 'Feedback created') { + dispatch({ + type: UPDATE_FEEDBACK_POSTED, + status: true }); + dispatch(updateFeedback(response.data.data.content)); + dispatch(updateIsLoadingFeedback(false)); + dispatch(updateModalVisibility(false)); + Toast.show(response.data.meta.message); + } else { + Toast.show('Wrong payload'); + } + }) + .catch((error) => { + Toast.show('Sorry, something went wrong'); + console.log('Error', error); }); }; } From e873040d5a44ff3becd888713a763da6622edd9a Mon Sep 17 00:00:00 2001 From: Yogi Date: Fri, 20 Oct 2017 23:49:38 +0700 Subject: [PATCH 15/15] add feedback service --- app/services/settings.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/services/settings.js b/app/services/settings.js index ed02f737..6fb6e2dd 100644 --- a/app/services/settings.js +++ b/app/services/settings.js @@ -1,3 +1,5 @@ +import Api from './api'; + export default { - patch: (firstName, lastName, boothInfo, job, summary, Auth) => Auth.patch('/auth/me/changesetting', {firstName, lastName, boothInfo, job, summary}) + post: feedBack => Api.post('/user-feedback', feedBack) };