/** * Base class of options */ class Publisher_Theme_Styles_Manager { /** * Contains list of current active styles * * @var array */ public static $styles = array( 'default' ); /** * Contains instance of styles classes * * @var array */ public $style_instances = array(); /** * Contains current active style ID * * @var string */ public static $current_style = 'default'; /** * Contains current active demo ID * * @var mixed|string */ public static $current_demo = ''; /** * Contains styles dir path * * @var string */ public static $style_dir = ''; /** * Contains styles directory URI * * @var string */ public static $style_uri = ''; /** * Base theme styles initializer */ public function __construct() { // Adds general page templates add_filter( 'publisher-theme-core/page-templates/config', array( $this, 'general_page_templates' ), 100 ); // // Cache current state // self::$current_style = publisher_get_style(); self::$current_demo = publisher_get_demo_id(); self::$style_dir = PUBLISHER_THEME_PATH . 'includes/styles/'; self::$style_uri = PUBLISHER_THEME_URI . 'includes/styles/'; // loads all styles when bf panel is saving to fix issues! if ( defined( 'DOING_AJAX' ) && isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'bf_ajax' && ( ! isset( $_REQUEST['reqID'] ) || $_REQUEST['reqID'] !== 'fetch-panel-tab' ) ) { $all_styles = publisher_styles_config(); $styles = array_keys( $all_styles ); } else { if ( self::$current_style === 'default' ) { $styles = array( 'default' ); } else { $styles = array( 'default', self::$current_style ); } } // Set styles self::set_styles( $styles ); foreach ( $styles as $style ) { // default style is in base fields and there is no preparation for that if ( $style === 'default' ) { continue; } // Unknown bug // todo find the reason for this values { $_check = array( 'default-' => 'clean-magazine', 'clean-clean-magazine' => 'clean-magazine', 'clean-magazine-magazine' => 'clean-magazine', 'clean-magazine-clean-magazine' => 'clean-magazine', 'classic-classic-magazine' => 'classic-magazine', 'classic-magazine-magazine' => 'classic-magazine', 'pure-pure-magazine' => 'pure-magazine', 'pure-magazine-magazine' => 'pure-magazine', 'pure-magazine-pure-magazine' => 'pure-magazine', ); if ( isset( $_check[ $style ] ) ) { $lang = bf_get_current_language_option_code(); $style = $_check[ $style ]; $options = get_option( publisher_get_theme_panel_id() . $lang ); $options['style'] = $style; update_option( publisher_get_theme_panel_id(), $options ); update_option( publisher_get_theme_panel_id() . $lang . '_current_style', $style ); update_option( publisher_get_theme_panel_id() . $lang . '_current_demo', $style ); } } // // Compatibility for versions before 1.7 because in that versions the style and demo id was separeate // and the compatibility runs after this so we should make it temporarily work the first time // todo remove this after v2 // { $_check = array( 'pure' => 'pure', 'clean' => 'clean', 'classic' => 'classic', 'pure-' => 'pure', 'clean-' => 'clean', 'classic-' => 'classic', ); // // Fix style id // if ( isset( $_check[ $style ] ) ) { $_demo = self::$current_demo; if ( empty( $_demo ) ) { $_demo = 'magazine'; } else { $_demo = explode( '-', $_demo ); if ( ! empty( $_demo[1] ) ) { $_demo = $_demo[1]; } else { $_demo = 'magazine'; } } if ( $_check[ $style ] === 'pure' ) { if ( $_demo != 'magazine' ) { $_demo = 'magazine'; } } elseif ( $_check[ $style ] === 'classic' ) { if ( $_demo != 'magazine' && $_demo != 'blog' ) { $_demo = 'magazine'; } } $style = $_check[ $style ] . '-' . $_demo; } } // comp fix $class = $this->get_class_name( $style ); if ( ! class_exists( $class ) && file_exists( self::get_path( $style . '/bs-theme-style-' . $style . '.php' ) ) ) { include self::get_path( $style . '/bs-theme-style-' . $style . '.php' ); } if ( class_exists( $class ) ) { $this->add_style_instance( new $class ); } } } /** * Used to get path of styles directory * * @param $append * * @return string */ public static function get_path( $append ) { return self::$style_dir . $append; } /** * Used to get path of styles URI * * @param $append * * @return string */ public static function get_uri( $append ) { return self::$style_uri . $append; } /** * Convert string to class name * * @param string $name * * @return string */ public function convert_class_name( $name = '' ) { $class = str_replace( array( '/', '-', ' ' ), '_', $name ); $class = explode( '_', $class ); $class = array_map( 'ucwords', $class ); return implode( '_', $class ); } /** * Creates class name from style and demo ID's * * @param string $style * @param string $demo * * @return string */ public function get_class_name( $style = '', $demo = '' ) { $class = 'Publisher_Theme_Style_' . $this->convert_class_name( $style ); if ( ! empty( $demo ) ) { $class .= '_' . $this->convert_class_name( $demo ); } return $class; } /** * Used to set styles from outside * * @param array $styles */ public static function set_styles( $styles ) { if ( is_array( $styles ) ) { self::$styles = $styles; } else { self::$styles = array( $styles ); } } /** * Used to get current active styles * * @return array */ public static function get_styles() { return self::$styles; } /** * @param $instance */ public function add_style_instance( $instance ) { $this->style_instances[] = $instance; } /** * Adds general page templates to all demos * * @hooked publisher-theme-core/page-templates/config * * @param $page_templates * * @return mixed */ public function general_page_templates( $page_templates ) { $page_templates['our-contributors-1'] = array( 'name' => __( 'Our Contributors 1', 'publisher' ), 'screenshot' => 'http://cdn.betterstudio.com/publisher/page-templates/general/our-contributors-1.png?v=' . PUBLISHER_THEME_VERSION, 'preview' => 'http://demo.betterstudio.com/publisher/our-contributors-1/', 'category' => array( __( '2 Column', 'publisher' ), ), 'type' => array( __( 'Contributors', 'publisher' ), ), 'post_meta' => array( array( 'meta_key' => 'page_layout', 'meta_value' => '1-col', ), array( 'meta_key' => '_hide_title', 'meta_value' => 1, ), array( 'meta_key' => '_bs_imported_template', 'meta_value' => 'our-contributors-1', ), array( 'meta_key' => '_custom_css_code', 'meta_value' => '.our-contributors-title h4{ font-size: 26px; } .our-contributors-title { margin-bottom: 20px !important; } .wpb_text_column{ margin-bottom: 22px !important; } .vc_btn3-container{ margin-bottom: 35px !important; }', ), array( 'meta_key' => 'bam_disable_all', 'meta_value' => 1, ), ), 'prepare_vc_css' => true, ); $page_templates['our-contributors-2'] = array( 'name' => __( 'Our Contributors 2', 'publisher' ), 'screenshot' => 'http://cdn.betterstudio.com/publisher/page-templates/general/our-contributors-2.png?v=' . PUBLISHER_THEME_VERSION, 'preview' => 'http://demo.betterstudio.com/publisher/our-contributors-2/', 'category' => array( __( '2 Column', 'publisher' ), ), 'type' => array( __( 'Contributors', 'publisher' ), ), 'post_meta' => array( array( 'meta_key' => 'page_layout', 'meta_value' => '1-col', ), array( 'meta_key' => '_hide_title', 'meta_value' => 1, ), array( 'meta_key' => '_bs_imported_template', 'meta_value' => 'our-contributors-2', ), array( 'meta_key' => '_custom_css_code', 'meta_value' => '.wpb_text_column{ margin-bottom: 12px!important; } .wpb_text_column h1{ font-size: 28px!important; margin: 0 0 10px; } .vc_btn3-container{ margin-bottom: 28px !important; } .vc_separator { margin-bottom: 28px !important; }', ), array( 'meta_key' => 'bam_disable_all', 'meta_value' => 1, ), ), 'prepare_vc_css' => true, ); $page_templates['our-contributors-3'] = array( 'name' => __( 'Our Contributors 3', 'publisher' ), 'screenshot' => 'http://cdn.betterstudio.com/publisher/page-templates/general/our-contributors-3.png?v=' . PUBLISHER_THEME_VERSION, 'preview' => 'http://demo.betterstudio.com/publisher/our-contributors-3/', 'category' => array( __( '2 Column', 'publisher' ), ), 'type' => array( __( 'Contributors', 'publisher' ), ), 'post_meta' => array( array( 'meta_key' => 'page_layout', 'meta_value' => '1-col', ), array( 'meta_key' => '_hide_title', 'meta_value' => 1, ), array( 'meta_key' => '_bs_imported_template', 'meta_value' => 'our-contributors-3', ), array( 'meta_key' => '_custom_css_code', 'meta_value' => '.wpb_text_column h1{ font-size: 28px!important; margin: 0 0 10px; } .wpb_text_column{ margin-bottom: 30px !important; }', ), array( 'meta_key' => 'bam_disable_all', 'meta_value' => 1, ), ), 'prepare_vc_css' => true, ); return $page_templates; } } // Publisher_Theme_Styles_Manager Raise Tobacco Products’ Prices Effectively to Reduce Deaths and Increase Revenues  - DeaLFunia
Modern technology gives us many things.

Raise Tobacco Products’ Prices Effectively to Reduce Deaths and Increase Revenues 

Research and advocacy organization PROGGA (Knowledge for Progress) and Anti-Tobacco Media Alliance (ATMA) have raised demands for increasing prices of all tobacco products by introducing specific taxes. The two organizations have jointly unveiled FY 2022-23 budget proposals regarding tobacco prices and taxes during a press conference held today (Tuesday, 17 May 2022) at the Tofazzal Hossain Manik Mia auditorium of the National Press Club. The event was supported by the Campaign for Tobacco-Free Kids (CTFK).

In support of the budget proposals, eminent economist and convener of the National Anti-Tobacco Platform, Dr. Qazi Kholiquzzaman Ahmad said, “Implementation of these proposals will increase revenue earnings, lower medical expenses, and expedite the realization of the PM’s vision of making Bangladesh tobacco-free by 2040.” 


The budget proposals for FY 2022-23 are as follows: In the low-tier of cigarettes, the retail price should be set at 50 for 10 sticks, followed by BDT 32.50 as specific supplementary duty (SD), in the medium-tier, the retail price should be set at BDT 75 and Supplementary Duty at BDT 48.75; and in the high-tier, the retail price and supplementary duty for 10 sticks should be followed by BDT 120 and 78.00 respectively and in the premium tier, the numbers should be BDT 150 and BDT 97.50. The proposals also recommended in the FY 2022-23 to 2027-28 mid-term period, the number of cigarette tiers should be reduced from 04 (four) to 02 (two). This is because the existing four-tiered ad valorem structure has made cigarettes cheaper and more affordable. Consumers tend to switch to cheaper brands, rather than quit, once the prices are increased.

For non-filtered bidis, the retail price should be BDT 25 for 25 sticks, followed by BDT 11.25 as a specific supplementary duty. In filtered bidis, the retail price should be BDT 20 for 20 sticks, followed by BDT 9.00 as a specific supplementary duty. In the case of smokeless tobacco, the retail prices for 10 grams of jarda should be BDT 45, followed by BDT 27.00 as specific supplementary duty. For 10 grams of gul, the retail price should be BDT 25 and supplemented by BDT 15 as a specific supplementary duty. The budget proposals also suggest imposing 15 percent VAT on retail prices of tobacco products, and 1 percent heath development surcharges. 


Realization of the tax and pricing proposals would encourage 1.3 million adults to refrain from smoking, save the lives of more than 445,000 current adults and nearly 448,000 youth from premature deaths, and earn BDT 9,200 crores in additional revenues. Most importantly, increasing the prices of bidi, jarda and gul would discourage the use of these products among low-income demographic and boost government revenues from these sectors. 

The event was participated by Dr. Rumana Huque, Professor, Department of Economics, University of Dhaka, Syed Yusuf Saadat, Research Fellow, Centre for Policy Dialogue (CPD), Md. Mostafizur Rahman, Lead Policy Advisor for Campaign for Tobacco-Free Kids (CTFK), Bangladesh, ABM Zubair, Executive Director, PROGGA and leaders of different anti-tobacco organizations. Nadira Kiron, Co-convener of ATMA, hosted the event whereas Md. Hasan Shahriar, Head of Tobacco Control, PROGGA, presented the budget proposals.


It should be noted that 35.3 percent (37.8 million) of adults in Bangladesh use tobacco. Tobacco-related illnesses claim 161,000 lives a year in Bangladesh. In 2017-18, the toll of tobacco use in the national economy (due to medical expenses and loss of productivity) stood at BDT 30,560 crore, which was much higher than revenues earned from the tobacco sector (BDT 22,810 crore) in that year.