. */ /* */ /*************************************************************************************/ namespace Thelia\Coupon; /** * Created by JetBrains PhpStorm. * Date: 8/19/13 * Time: 3:24 PM * * Represents a Coupon ready to be processed in a Checkout process * * @package Coupon * @author Guillaume MOREL * */ interface CouponInterface { /** * Return Coupon code (ex: XMAS) * * @return string */ public function getCode(); /** * Return Coupon title (ex: Coupon for XMAS) * * @return string */ public function getTitle(); /** * Return Coupon short description * * @return string */ public function getShortDescription(); /** * Return Coupon description * * @return string */ public function getDescription(); /** * If Coupon is cumulative or prevent any accumulation * If is cumulative you can sum Coupon effects * If not cancel all other Coupon and take the last given * * @return string */ public function isCumulative(); /** * If Coupon is removing Checkout Postage * * @return bool */ public function isRemovingPostage(); /** * Return effects generated by the coupon * * @return \Closure */ public function getEffect(); }