Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const campaignRouteIsCorrect = ({ campaign }, location) => {
- const [campaign_type, type] = [campaign, location];
- const routerActions = {
- [DYNAMIC]: DYNAMIC_ROUTE_ACTION_TYPE,
- [RELATIVE]: RELATIVE_ROUTE_ACTION_TYPE
- };
- return routerActions[campaign_type] === type;
- };
- const fetchInitialCampaignData = state => dispatch => {
- const { location, requestedCampaignData } = state;
- if (!requestedCampaignData && location.payload.campaignId) {
- dispatch(requestCampaignData());
- return fetchData({
- url: getEnterpriseAPIURL(ORG_CAMPAIGN_DATA_ROUTE, location.payload.campaignId, {
- page_size: CAMPAIGN_CONTENT_PAGE_SIZE
- }),
- options: createGetRequestOptions(),
- success(responseBody) {
- if (!campaignRouteIsCorrect(responseBody, location)) {
- const { campaign_type, campaign_id, status } = responseBody.campaign;
- const editStep = findEditStep(status);
- const isRelative = campaign_type === RELATIVE;
- dispatch(goToEditStep(editStep, campaign_id, isRelative));
- }
- // districts handled separately by district widget
- dispatch(addDistricts(responseBody.districts));
- dispatch(initializeData(getPayloadForInitAction(responseBody)));
- },
- fail() {
- dispatch(alertGeneralError(resetAllCampaignState()));
- // fail to load campaign go to create dynamic step
- setTimeout(() => dispatch(goToCreateStep(FIRST_STEP, false)), 1000);
- }
- });
- }
- return Promise.resolve();
- };
Add Comment
Please, Sign In to add comment