package org.onehippo.forge.konakart.hst.utils;
import com.konakart.app.KKException;
import org.apache.commons.lang.StringUtils;
import org.hippoecm.hst.core.component.HstComponentException;
import org.hippoecm.hst.core.component.HstRequest;
import org.hippoecm.hst.core.component.HstResponse;
public class KKActionsHelper {
/**
* Used to set a new currency. You need to create an action URL using the following format
* <p/>
* <hst:actionURL var="currencyLink">
* <hst:param name="action" value="SELECT_CURRENCY"/>
* <hst:param name="currencyCode" value="${currency.code}"/>
* </hst:actionURL>
*
* @param request the hst request
* @param hstResponse the hst response
*/
public static void doAction(HstRequest request, HstResponse hstResponse) throws HstComponentException {
String action = KKUtil.getActionRequestParameter(request, KKActionsConstants.ACTION);
if (StringUtils.equals(action, KKActionsConstants.ACTIONS.SELECT_CURRENCY.name())) {
String code = KKUtil.getActionRequestParameter(request, KKActionsConstants.CURRENCY_CODE);
try {
KKComponentUtils.getKKAppEng(request).setUserCurrency(code);
} catch (KKException e) {
throw new HstComponentException("Unable to set the currency to " + code, e);
}
}
}
}