Plugin Directory

Changeset 2086671


Ignore:
Timestamp:
05/13/2019 10:09:45 AM (7 years ago)
Author:
pluginrox
Message:

new version 1.0.5

Location:
wp-directory-listing/trunk
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • wp-directory-listing/trunk/assets/front/css/single-directory.css

    r2065758 r2086671  
    99    width: 60%;
    1010    display: inline-block;
     11    border: 1px solid #d6d6d6;
    1112}
    1213
     
    1819    position: absolute;
    1920    background: #d6d6d6;
    20     top: 40%;
     21    top: 45%;
    2122    color: #252525;
    2223    font-size: 20px;
    23     padding: 3px;
     24    line-height: 36px;
     25    width: 36px;
     26    height: 36px;
     27    text-align: center;
    2428    display: inline-block !important;
    2529    z-index: 9999;
     
    2731}
    2832
    29 .wpdl-directory-gallery-images .slick-arrow.icofont-rounded-left {
     33.wpdl-directory-gallery-images .arrow-left {
    3034    left: 0;
    3135}
    3236
    33 .wpdl-directory-gallery-images .slick-arrow.icofont-rounded-right {
     37.wpdl-directory-gallery-images .arrow-right {
    3438    right: 0;
    3539}
    3640
    3741.wpdl-directory-gallery-navs {
    38     margin-top: 0px;
     42    margin-top: 0;
     43    border-top: 1px solid #d6d6d6;
     44    padding: 10px;
    3945}
    4046
     
    9298
    9399.wpdl-tabs {
    94     margin-top: 50px;
    95 }
    96 
    97 .entry-content ul.wpdl-tabs-head,
     100    margin-top: 25px;
     101}
     102
    98103ul.wpdl-tabs-head {
    99104    list-style: none;
    100     padding-left: 0;
    101     margin: 0 0 40px;
     105    padding: 0 0 0 1em;
     106    margin: 0 0 1.618em;
    102107    overflow: hidden;
    103108    position: relative;
    104109}
    105110
    106 ul.wpdl-tabs-head > li a {
    107     border-radius: 3px;
    108 }
    109 
    110 ul.wpdl-tabs-head > li > span {
    111     text-decoration: none;
    112     padding: 10px 18px;
    113     display: inherit;
    114     cursor: pointer;
    115     background-color: rgba(0,0,0,0.1);
    116     transition: 0.3s;
    117     border-radius: 3px;
    118 }
    119 
    120 ul.wpdl-tabs-head > li.active span,
    121 ul.wpdl-tabs-head > li span:hover {
    122     color: #ffffff;
    123 }
     111ul.wpdl-tabs-head::before {
     112    position: absolute;
     113    content: ' ';
     114    width: 100%;
     115    bottom: 0;
     116    left: 0;
     117    border-bottom: 1px solid #d3ced2;
     118    z-index: 1;
     119}
     120
     121ul.wpdl-tabs-head > li {
     122    margin: 0;
     123    display: inline-block;
     124    background: #fff;
     125    z-index: 2;
     126    border-bottom-color: #fff;
     127    border: 1px solid #d3ced2;
     128    background-color: #ebe9eb;
     129    display: inline-block;
     130    position: relative;
     131    z-index: 0;
     132    border-radius: 4px 4px 0 0;
     133    margin: 0 -5px;
     134}
     135
     136ul.wpdl-tabs-head > li::after,
     137ul.wpdl-tabs-head > li::before {
     138    border: 1px solid #d3ced2;
     139    position: absolute;
     140    bottom: -1px;
     141    width: 5px;
     142    height: 5px;
     143    content: ' ';
     144    box-sizing: border-box;
     145}
     146
     147ul.wpdl-tabs-head > li::before {
     148    left: -5px;
     149    border-bottom-right-radius: 4px;
     150    border-width: 0 1px 1px 0;
     151    box-shadow: 2px 2px 0 #ebe9eb;
     152}
     153
     154
     155ul.wpdl-tabs-head > li::after {
     156    right: -5px;
     157    border-bottom-left-radius: 4px;
     158    border-width: 0 0 1px 1px;
     159    box-shadow: -2px 2px 0 #ebe9eb;
     160}
     161
     162
     163ul.wpdl-tabs-head > li.active {
     164    background: #fff;
     165    z-index: 2;
     166    border-bottom-color: #fff;
     167}
     168
    124169
    125170ul.wpdl-tabs-head > li.active::before {
     
    131176}
    132177
    133 ul.wpdl-tabs-head li {
    134     display: inline-block;
    135     margin-right: 15px;
    136 }
     178
     179ul.wpdl-tabs-head > li > a {
     180    text-decoration: none;
     181    padding: 5px 15px;
     182    display: inherit;
     183    cursor: pointer;
     184}
     185
    137186
    138187.wpdl-tabs-panel {
     
    147196/* Directory Review Section */
    148197
    149 .wpdl-directory-reviews {
    150 
     198.wpdl-tabs .wpdl-directory-review-form h4 {
     199    margin: 15px 0;
    151200}
    152201
    153202.wpdl-directory-reviews .review-single {
    154     margin-bottom: 30px;
     203    margin: 35px 0;
    155204}
    156205
     
    198247
    199248
    200 
    201249/*Directory Rating Section*/
    202250
  • wp-directory-listing/trunk/assets/front/css/style.css

    r2086656 r2086671  
    3535}
    3636
    37 
    38 .wpdl-form .wpdl-form-group {
    39     margin-top: 10px;
    40     margin-bottom: 20px;
    41 }
    42 
    4337.wpdl-form .wpdl-form-group label {
    4438    display: inline-block;
     
    6862    -moz-user-select: none;
    6963    -webkit-user-select: none;
     64    margin: 0 0 0 15px;
     65    padding: 0;
     66    display: inline-block;
     67    vertical-align: middle;
    7068}
    7169
  • wp-directory-listing/trunk/assets/front/js/scripts.js

    r2065758 r2086671  
    7474     */
    7575
    76     $(document).on('click', 'ul.wpdl-tabs-head > li > span', function () {
     76    $(document).on('click', 'ul.wpdl-tabs-head > li > a', function () {
    7777
    7878        if ($(this).parent().hasClass('active')) return;
     
    9494        slidesToScroll: 1,
    9595        arrows: true,
    96         prevArrow: '<i class="icofont-rounded-left"></i>',
    97         nextArrow: '<i class="icofont-rounded-right"></i>',
     96        prevArrow: '<i class="fa fa-angle-right arrow-right" aria-hidden="true"></i>',
     97        nextArrow: '<i class="fa fa-angle-left arrow-left" aria-hidden="true"></i>',
    9898        fade: true,
    9999        adaptiveHeight: true,
  • wp-directory-listing/trunk/includes/classes/class-column-directory.php

    r2073079 r2086671  
    5050        $new = array(
    5151            'cb'            => $columns['cb'],
    52             'title'         => esc_html__( 'Directory Title', TTDD ),
    53             'wpdl_type'     => esc_html__( 'Listing Type', TTDD ),
     52            'title'         => esc_html__( 'Item Title', TTDD ),
     53            'wpdl_type'     => esc_html__( 'Item Type', TTDD ),
    5454            'wpdl_location' => esc_html__( 'Location', TTDD ),
    5555            'wpdl_author'   => esc_html__( 'Author', TTDD ),
  • wp-directory-listing/trunk/includes/classes/class-directory.php

    r2073079 r2086671  
    374374
    375375
    376     /**
    377      * Get Directory Full Price with Interval
    378      *
    379      * @filter wpdl_filters_directory_full_price
    380      * @return string
    381      */
    382     function get_full_price() {
    383 
    384         global $wpdl;
    385 
    386         $price         = "";
    387         $item_price    = $this->get_price();
    388         $_dir_interval = $this->get_meta( '_dir_interval' );
    389         $_dir_interval = empty( $_dir_interval ) ? '' : $_dir_interval;
    390 
    391         if ( ! empty( $_dir_interval ) ) {
    392             $price = sprintf( __( '%s %s / %s' ), $wpdl->get_currency_symbol(), $item_price, $_dir_interval );
    393         } else {
    394             $price = sprintf( __( '%s %s' ), $wpdl->get_currency_symbol(), $item_price );
    395         }
    396 
    397         return apply_filters( 'wpdl_filters_directory_full_price', $price, $this->ID, $this );
    398     }
    399 
    400 
    401     /**
    402      * Get Directory item flat Price
    403      *
    404      * @filter wpdl_filters_directory_price
    405      * @return string
    406      */
    407     function get_price() {
    408 
    409         $_dir_price = $this->get_meta( '_dir_price' );
    410         $_dir_price = empty( $_dir_price ) ? 0 : (int) $_dir_price;
    411 
    412         return apply_filters( 'wpdl_filters_directory_price', $_dir_price, $this->ID, $this );
    413     }
    414 
    415 
    416     /**
     376    /**
     377     * Get Directory Full Price with Interval
     378     *
     379     * @filter wpdl_filters_directory_full_price
     380     * @return string
     381     */
     382    function get_full_price() {
     383        global $wpdl;
     384        $price = wpdl_price( $this->get_price(), array(
     385            'currency'      => $wpdl->get_currency(),
     386            'billing_cycle' => $this->get_meta( '_dir_interval' )
     387        ) );
     388        return apply_filters( 'wpdl_filters_directory_full_price', $price, $this->ID, $this );
     389    }
     390
     391
     392    /**
     393     * Get Directory item flat Price
     394     *
     395     * @filter wpdl_filters_directory_price
     396     * @return float
     397     */
     398    function get_price() {
     399
     400        $_dir_price = $this->get_meta( '_dir_price' );
     401        $_dir_price = empty( $_dir_price ) ? 0 : (float) $_dir_price;
     402
     403        return apply_filters( 'wpdl_filters_directory_price', $_dir_price, $this->ID, $this );
     404    }
     405
     406
     407    /**
    417408     * Return boolean whether a Directory Item has Price or Not
    418409     *
    419      * @return bool
    420      */
    421     function has_price() {
    422 
    423         if ( $this->get_price() == 0 ) {
    424             return false;
    425         }
    426 
    427         return true;
    428     }
     410     * @return bool
     411     */
     412    function has_price() {
     413        return $this->get_price() != 0;
     414    }
    429415
    430416
  • wp-directory-listing/trunk/includes/classes/class-functions.php

    r2073079 r2086671  
    244244
    245245
    246     /**
    247      * Return Currency Symbol
    248      *
    249      * @return mixed|void
    250      */
    251     function get_currency_symbol() {
    252 
    253         $currency        = $this->get_currency();
    254         $currency_sybmol = '';
    255 
    256         if ( $currency == 'USD' ) {
    257             $currency_sybmol = '&#36;';
    258         }
    259 
    260         return apply_filters( 'wpdl_filters_currency_symbol', $currency_sybmol );
    261     }
    262 
    263 
    264     /**
    265      * Return Currency default
    266      *
    267      * @return mixed|void
    268      */
    269     function get_currency() {
    270 
    271         $currency_default = get_option( 'wpdl_currency_default' );
    272 
    273         if ( empty( $currency_default ) ) {
    274             $currency_default = 'USD';
    275         }
    276 
    277         return apply_filters( 'wpdl_filters_default_currency', $currency_default );
    278     }
     246    /**
     247     * Return Currency Symbol
     248     *
     249     * @return string
     250     */
     251    function get_currency_symbol() {
     252        $currency_sybmol = wpdl_get_currency_symbols( $this->get_currency() );
     253        return apply_filters( 'wpdl_filters_currency_symbol', $currency_sybmol );
     254    }
     255
     256
     257    /**
     258     * Return Currency default
     259     *
     260     * @return string
     261     */
     262    function get_currency() {
     263        $currency = get_option( 'wpdl_currency' );
     264        if( empty( $currency ) ) $currency = apply_filters( 'wpdl_filters_default_currency', 'USD' );
     265        return $currency;
     266    }
    279267
    280268
  • wp-directory-listing/trunk/includes/classes/class-post-meta.php

    r2073079 r2086671  
    172172                    array(
    173173                        'id'      => '_dir_interval',
    174                         'details' => __( 'Set interval period for the above price. Leave empty to ignore this and keep the flat price as Final price.', TTDD ),
     174                        'title'   => __( 'Billing Cycle', TTDD ),
     175                        'details' => __( 'Set interval period for the above price (for subscription based item). Leave empty to ignore this and keep the flat price as Final price.', TTDD ),
    175176                        'type'    => 'select',
    176                         'args'    => apply_filters( 'wpdl_filters_interval', array(
    177                             'daily'       => __( 'Daily', TTDD ),
    178                             'weekly'      => __( 'Weekly', TTDD ),
    179                             'bi_weekly'   => __( 'Bi-Weekly', TTDD ),
    180                             'monthly'     => __( 'Monthly', TTDD ),
    181                             'quarter'     => __( 'Per 3 Month', TTDD ),
    182                             'half_yearly' => __( 'Half Yearly', TTDD ),
    183                             'yearly'      => __( 'Yearly', TTDD ),
    184                         ) ),
     177                        'args'    => wpdl_billing_cycle( 'all' ),
    185178                    ),
    186179
  • wp-directory-listing/trunk/includes/classes/class-post-types.php

    r2073079 r2086671  
    5454            return;
    5555        }
     56
     57        $args = apply_filters( 'wpdl_filters_register_post_type_' . $post_type, $args );
    5658
    5759        $singular = isset( $args['singular'] ) ? $args['singular'] : '';
  • wp-directory-listing/trunk/includes/functions-settings.php

    r2065758 r2086671  
    99if( ! function_exists( 'wpdl_add_plugin_menu_page' ) ) {
    1010    function wpdl_add_plugin_menu_page(){
    11 
     11        // dynamic meta configuration page
    1212        $meta_generator = array(
    1313            'page_nav'  => __( 'Configure Meta', TTDD ),
    1414            'show_submit' => true,
    1515        );
    16 
     16        // Page Settings
    1717        $options = array(
    18             'page_nav'  => __( 'Options', TTDD ),
     18            'page_nav'  => __( 'Page Options', TTDD ),
    1919            'page_settings' => array(
    2020
     
    4141            ),
    4242        );
    43 
     43        // Core Query & Loop Settings
    4444        $settings = array(
    4545            'page_nav'  => __( 'Settings', TTDD ),
     
    6262                            'type'      => 'select',
    6363                            'args'   => array(
    64                                 '2' => __( '2 Directory Items', TTDD ),
    65                                 '3' => __( '3 Directory Items', TTDD ),
    66                                 '4' => __( '4 Directory Items', TTDD ),
     64                                '2' => __( '2 Items', TTDD ),
     65                                '3' => __( '3 Items', TTDD ),
     66                                '4' => __( '4 Items', TTDD ),
    6767                            ),
    6868                        ),
     
    7272            ),
    7373        );
     74        // Currency Settings
     75        $currency = array(
     76            'page_nav'  => __( 'Currency', TTDD ),
     77            'page_settings' => array(
     78                'section_pages' => array(
     79                    'title' => __('Currency Settings', TTDD),
     80                    'options' => array(
     81                        array(
     82                            'id'        => 'wpdl_currency',
     83                            'title'     => __('Currency', TTDD ),
     84                            'details'   => __('This controls what currency prices are listed at in the catalog and which currency gateways will take payments in.', TTDD ),
     85                            'type'      => 'select2',
     86                            'args'      => wpdl_currencies(),
     87                            'value'     => empty( get_option( 'wpdl_currency' ) ) ? apply_filters( 'wpdl_filters_default_currency', 'USD' ) : get_option( 'wpdl_currency' ),
     88                        ),
     89                        array(
     90                            'id'        => 'wpdl_currency_pos',
     91                            'title'     => __('Currency Position', TTDD ),
     92                            'details'   => __('This controls the position of the currency symbol.', TTDD ),
     93                            'type'      => 'select',
     94                            'args'      => array(
     95                                'left'        => __( 'Left', TTDD ),
     96                                'right'       => __( 'Right', TTDD ),
     97                                'left_space'  => __( 'Left with space', TTDD ),
     98                                'right_space' => __( 'Right with space', TTDD ),
     99                            ),
     100                            'value'     => empty( get_option( 'wpdl_currency_pos' ) ) ? 'left' : get_option( 'wpdl_currency_pos' ),
     101                        ),
     102                        array(
     103                            'id'        => 'wpdl_price_thousand_sep',
     104                            'title'     => __('Thousand separator', TTDD ),
     105                            'details'   => __('This sets the thousand separator of displayed prices.', TTDD ),
     106                            'type'      => 'text',
     107                            'value'     => empty( get_option( 'wpdl_price_thousand_sep' ) ) ? '' : get_option( 'wpdl_price_thousand_sep' ),
     108                        ),
     109                        array(
     110                            'id'        => 'wpdl_price_decimal_sep',
     111                            'title'     => __('Decimal separator', TTDD ),
     112                            'details'   => __('This sets the decimal separator of displayed prices.', TTDD ),
     113                            'type'      => 'text',
     114                            'value'     => empty( get_option( 'wpdl_price_decimal_sep' ) ) ? '.' : get_option( 'wpdl_price_decimal_sep' ),
     115                        ),
     116                        array(
     117                            'id'        => 'wpdl_price_num_decimals',
     118                            'title'     => __('Number of decimals', TTDD ),
     119                            'details'   => __('This sets the number of decimal points shown in displayed prices.', TTDD ),
     120                            'type'      => 'number',
     121                            'value'     => false === get_option( 'wpdl_price_num_decimals' ) || get_option( 'wpdl_price_num_decimals' ) === '' ? 2 : abs( (int) get_option( 'wpdl_price_num_decimals' ) ),
     122                        ),
     123                    ),
     124                ),
    74125
    75         $pages = array(
    76             'wpdl_meta'      => apply_filters( 'wpdl_filters_settings_wpdl_meta', $meta_generator ),
    77             'wpdl_options'   => apply_filters( 'wpdl_filters_settings_wpdl_options', $options ),
    78             'wpdl_settings'   => apply_filters( 'wpdl_filters_settings_wpdl_settings', $settings ),
    79         );
     126            ),
     127        );
     128
     129        $pages = array(
     130            'wpdl_meta'      => apply_filters( 'wpdl_filters_settings_wpdl_meta', $meta_generator ),
     131            'wpdl_options'   => apply_filters( 'wpdl_filters_settings_wpdl_options', $options ),
     132            'wpdl_settings'   => apply_filters( 'wpdl_filters_settings_wpdl_settings', $settings ),
     133            'wpdl_currency'   => apply_filters( 'wpdl_settings_currency', $currency ),
     134        );
    80135
    81136        new WP_Settings( array(
  • wp-directory-listing/trunk/includes/functions.php

    r2065758 r2086671  
    543543}
    544544
    545 
    546 /**
    547  * Get Single Directory Object
    548  * @global WPDL_Directory $directory
    549  *
    550  * @param int|WPDL_Directory|null $directory_id
    551  *
    552  * @return WPDL_Directory
    553  */
    554 
    555545if ( ! function_exists( 'wpdl_get_directory' ) ) {
     546    /**
     547     * Get Single Directory Object
     548     * @global WPDL_Directory $directory
     549     *
     550     * @param int|WPDL_Directory|null $directory_id
     551     *
     552     * @return WPDL_Directory
     553     */
    556554    function wpdl_get_directory( $directory_id = '' ) {
    557555
     
    566564    }
    567565}
     566
     567/**
     568 * Get full list of currency codes.
     569 * @since  1.0.5
     570 * @return array
     571 */
     572function wpdl_currencies() {
     573    static $currencies;
     574    if ( ! isset( $currencies ) ) {
     575        $currencies = array_unique( apply_filters( 'wpdl_currencies', array(
     576            'AED' => __( 'United Arab Emirates dirham', TTDD ),
     577            'AFN' => __( 'Afghan afghani', TTDD ),
     578            'ALL' => __( 'Albanian lek', TTDD ),
     579            'AMD' => __( 'Armenian dram', TTDD ),
     580            'ANG' => __( 'Netherlands Antillean guilder', TTDD ),
     581            'AOA' => __( 'Angolan kwanza', TTDD ),
     582            'ARS' => __( 'Argentine peso', TTDD ),
     583            'AUD' => __( 'Australian dollar', TTDD ),
     584            'AWG' => __( 'Aruban florin', TTDD ),
     585            'AZN' => __( 'Azerbaijani manat', TTDD ),
     586            'BAM' => __( 'Bosnia and Herzegovina convertible mark', TTDD ),
     587            'BBD' => __( 'Barbadian dollar', TTDD ),
     588            'BDT' => __( 'Bangladeshi taka', TTDD ),
     589            'BGN' => __( 'Bulgarian lev', TTDD ),
     590            'BHD' => __( 'Bahraini dinar', TTDD ),
     591            'BIF' => __( 'Burundian franc', TTDD ),
     592            'BMD' => __( 'Bermudian dollar', TTDD ),
     593            'BND' => __( 'Brunei dollar', TTDD ),
     594            'BOB' => __( 'Bolivian boliviano', TTDD ),
     595            'BRL' => __( 'Brazilian real', TTDD ),
     596            'BSD' => __( 'Bahamian dollar', TTDD ),
     597            'BTC' => __( 'Bitcoin', TTDD ),
     598            'BTN' => __( 'Bhutanese ngultrum', TTDD ),
     599            'BWP' => __( 'Botswana pula', TTDD ),
     600            'BYR' => __( 'Belarusian ruble (old)', TTDD ),
     601            'BYN' => __( 'Belarusian ruble', TTDD ),
     602            'BZD' => __( 'Belize dollar', TTDD ),
     603            'CAD' => __( 'Canadian dollar', TTDD ),
     604            'CDF' => __( 'Congolese franc', TTDD ),
     605            'CHF' => __( 'Swiss franc', TTDD ),
     606            'CLP' => __( 'Chilean peso', TTDD ),
     607            'CNY' => __( 'Chinese yuan', TTDD ),
     608            'COP' => __( 'Colombian peso', TTDD ),
     609            'CRC' => __( 'Costa Rican col&oacute;n', TTDD ),
     610            'CUC' => __( 'Cuban convertible peso', TTDD ),
     611            'CUP' => __( 'Cuban peso', TTDD ),
     612            'CVE' => __( 'Cape Verdean escudo', TTDD ),
     613            'CZK' => __( 'Czech koruna', TTDD ),
     614            'DJF' => __( 'Djiboutian franc', TTDD ),
     615            'DKK' => __( 'Danish krone', TTDD ),
     616            'DOP' => __( 'Dominican peso', TTDD ),
     617            'DZD' => __( 'Algerian dinar', TTDD ),
     618            'EGP' => __( 'Egyptian pound', TTDD ),
     619            'ERN' => __( 'Eritrean nakfa', TTDD ),
     620            'ETB' => __( 'Ethiopian birr', TTDD ),
     621            'EUR' => __( 'Euro', TTDD ),
     622            'FJD' => __( 'Fijian dollar', TTDD ),
     623            'FKP' => __( 'Falkland Islands pound', TTDD ),
     624            'GBP' => __( 'Pound sterling', TTDD ),
     625            'GEL' => __( 'Georgian lari', TTDD ),
     626            'GGP' => __( 'Guernsey pound', TTDD ),
     627            'GHS' => __( 'Ghana cedi', TTDD ),
     628            'GIP' => __( 'Gibraltar pound', TTDD ),
     629            'GMD' => __( 'Gambian dalasi', TTDD ),
     630            'GNF' => __( 'Guinean franc', TTDD ),
     631            'GTQ' => __( 'Guatemalan quetzal', TTDD ),
     632            'GYD' => __( 'Guyanese dollar', TTDD ),
     633            'HKD' => __( 'Hong Kong dollar', TTDD ),
     634            'HNL' => __( 'Honduran lempira', TTDD ),
     635            'HRK' => __( 'Croatian kuna', TTDD ),
     636            'HTG' => __( 'Haitian gourde', TTDD ),
     637            'HUF' => __( 'Hungarian forint', TTDD ),
     638            'IDR' => __( 'Indonesian rupiah', TTDD ),
     639            'ILS' => __( 'Israeli new shekel', TTDD ),
     640            'IMP' => __( 'Manx pound', TTDD ),
     641            'INR' => __( 'Indian rupee', TTDD ),
     642            'IQD' => __( 'Iraqi dinar', TTDD ),
     643            'IRR' => __( 'Iranian rial', TTDD ),
     644            'IRT' => __( 'Iranian toman', TTDD ),
     645            'ISK' => __( 'Icelandic kr&oacute;na', TTDD ),
     646            'JEP' => __( 'Jersey pound', TTDD ),
     647            'JMD' => __( 'Jamaican dollar', TTDD ),
     648            'JOD' => __( 'Jordanian dinar', TTDD ),
     649            'JPY' => __( 'Japanese yen', TTDD ),
     650            'KES' => __( 'Kenyan shilling', TTDD ),
     651            'KGS' => __( 'Kyrgyzstani som', TTDD ),
     652            'KHR' => __( 'Cambodian riel', TTDD ),
     653            'KMF' => __( 'Comorian franc', TTDD ),
     654            'KPW' => __( 'North Korean won', TTDD ),
     655            'KRW' => __( 'South Korean won', TTDD ),
     656            'KWD' => __( 'Kuwaiti dinar', TTDD ),
     657            'KYD' => __( 'Cayman Islands dollar', TTDD ),
     658            'KZT' => __( 'Kazakhstani tenge', TTDD ),
     659            'LAK' => __( 'Lao kip', TTDD ),
     660            'LBP' => __( 'Lebanese pound', TTDD ),
     661            'LKR' => __( 'Sri Lankan rupee', TTDD ),
     662            'LRD' => __( 'Liberian dollar', TTDD ),
     663            'LSL' => __( 'Lesotho loti', TTDD ),
     664            'LYD' => __( 'Libyan dinar', TTDD ),
     665            'MAD' => __( 'Moroccan dirham', TTDD ),
     666            'MDL' => __( 'Moldovan leu', TTDD ),
     667            'MGA' => __( 'Malagasy ariary', TTDD ),
     668            'MKD' => __( 'Macedonian denar', TTDD ),
     669            'MMK' => __( 'Burmese kyat', TTDD ),
     670            'MNT' => __( 'Mongolian t&ouml;gr&ouml;g', TTDD ),
     671            'MOP' => __( 'Macanese pataca', TTDD ),
     672            'MRO' => __( 'Mauritanian ouguiya', TTDD ),
     673            'MUR' => __( 'Mauritian rupee', TTDD ),
     674            'MVR' => __( 'Maldivian rufiyaa', TTDD ),
     675            'MWK' => __( 'Malawian kwacha', TTDD ),
     676            'MXN' => __( 'Mexican peso', TTDD ),
     677            'MYR' => __( 'Malaysian ringgit', TTDD ),
     678            'MZN' => __( 'Mozambican metical', TTDD ),
     679            'NAD' => __( 'Namibian dollar', TTDD ),
     680            'NGN' => __( 'Nigerian naira', TTDD ),
     681            'NIO' => __( 'Nicaraguan c&oacute;rdoba', TTDD ),
     682            'NOK' => __( 'Norwegian krone', TTDD ),
     683            'NPR' => __( 'Nepalese rupee', TTDD ),
     684            'NZD' => __( 'New Zealand dollar', TTDD ),
     685            'OMR' => __( 'Omani rial', TTDD ),
     686            'PAB' => __( 'Panamanian balboa', TTDD ),
     687            'PEN' => __( 'Peruvian nuevo sol', TTDD ),
     688            'PGK' => __( 'Papua New Guinean kina', TTDD ),
     689            'PHP' => __( 'Philippine peso', TTDD ),
     690            'PKR' => __( 'Pakistani rupee', TTDD ),
     691            'PLN' => __( 'Polish z&#x142;oty', TTDD ),
     692            'PRB' => __( 'Transnistrian ruble', TTDD ),
     693            'PYG' => __( 'Paraguayan guaran&iacute;', TTDD ),
     694            'QAR' => __( 'Qatari riyal', TTDD ),
     695            'RON' => __( 'Romanian leu', TTDD ),
     696            'RSD' => __( 'Serbian dinar', TTDD ),
     697            'RUB' => __( 'Russian ruble', TTDD ),
     698            'RWF' => __( 'Rwandan franc', TTDD ),
     699            'SAR' => __( 'Saudi riyal', TTDD ),
     700            'SBD' => __( 'Solomon Islands dollar', TTDD ),
     701            'SCR' => __( 'Seychellois rupee', TTDD ),
     702            'SDG' => __( 'Sudanese pound', TTDD ),
     703            'SEK' => __( 'Swedish krona', TTDD ),
     704            'SGD' => __( 'Singapore dollar', TTDD ),
     705            'SHP' => __( 'Saint Helena pound', TTDD ),
     706            'SLL' => __( 'Sierra Leonean leone', TTDD ),
     707            'SOS' => __( 'Somali shilling', TTDD ),
     708            'SRD' => __( 'Surinamese dollar', TTDD ),
     709            'SSP' => __( 'South Sudanese pound', TTDD ),
     710            'STD' => __( 'S&atilde;o Tom&eacute; and Pr&iacute;ncipe dobra', TTDD ),
     711            'SYP' => __( 'Syrian pound', TTDD ),
     712            'SZL' => __( 'Swazi lilangeni', TTDD ),
     713            'THB' => __( 'Thai baht', TTDD ),
     714            'TJS' => __( 'Tajikistani somoni', TTDD ),
     715            'TMT' => __( 'Turkmenistan manat', TTDD ),
     716            'TND' => __( 'Tunisian dinar', TTDD ),
     717            'TOP' => __( 'Tongan pa&#x2bb;anga', TTDD ),
     718            'TRY' => __( 'Turkish lira', TTDD ),
     719            'TTD' => __( 'Trinidad and Tobago dollar', TTDD ),
     720            'TWD' => __( 'New Taiwan dollar', TTDD ),
     721            'TZS' => __( 'Tanzanian shilling', TTDD ),
     722            'UAH' => __( 'Ukrainian hryvnia', TTDD ),
     723            'UGX' => __( 'Ugandan shilling', TTDD ),
     724            'USD' => __( 'United States (US) dollar', TTDD ),
     725            'UYU' => __( 'Uruguayan peso', TTDD ),
     726            'UZS' => __( 'Uzbekistani som', TTDD ),
     727            'VEF' => __( 'Venezuelan bol&iacute;var', TTDD ),
     728            'VND' => __( 'Vietnamese &#x111;&#x1ed3;ng', TTDD ),
     729            'VUV' => __( 'Vanuatu vatu', TTDD ),
     730            'WST' => __( 'Samoan t&#x101;l&#x101;', TTDD ),
     731            'XAF' => __( 'Central African CFA franc', TTDD ),
     732            'XCD' => __( 'East Caribbean dollar', TTDD ),
     733            'XOF' => __( 'West African CFA franc', TTDD ),
     734            'XPF' => __( 'CFP franc', TTDD ),
     735            'YER' => __( 'Yemeni rial', TTDD ),
     736            'ZAR' => __( 'South African rand', TTDD ),
     737            'ZMW' => __( 'Zambian kwacha', TTDD ),
     738        ) ) );
     739    }
     740    return $currencies;
     741}
     742
     743/**
     744 * Get Base Currency Code.
     745 * @since  1.0.5
     746 * @return string
     747 */
     748function wpdl_get_currency() {
     749    return apply_filters( 'wpdl_currency', get_option( 'wpdl_currency' ) );
     750}
     751/**
     752 * Get Currency symbol.
     753 * @since  1.0.5
     754 * @param string $currency Currency. (default: '').
     755 * @return string
     756 */
     757function wpdl_get_currency_symbols( $currency = '' ) {
     758    if ( ! $currency ) $currency = wpdl_get_currency();
     759    $symbols = apply_filters( 'wpdl_currency_symbols', array(
     760        'AED' => '&#x62f;.&#x625;',
     761        'AFN' => '&#x60b;',
     762        'ALL' => 'L',
     763        'AMD' => 'AMD',
     764        'ANG' => '&fnof;',
     765        'AOA' => 'Kz',
     766        'ARS' => '&#36;',
     767        'AUD' => '&#36;',
     768        'AWG' => 'Afl.',
     769        'AZN' => 'AZN',
     770        'BAM' => 'KM',
     771        'BBD' => '&#36;',
     772        'BDT' => '&#2547;&nbsp;',
     773        'BGN' => '&#1083;&#1074;.',
     774        'BHD' => '.&#x62f;.&#x628;',
     775        'BIF' => 'Fr',
     776        'BMD' => '&#36;',
     777        'BND' => '&#36;',
     778        'BOB' => 'Bs.',
     779        'BRL' => '&#82;&#36;',
     780        'BSD' => '&#36;',
     781        'BTC' => '&#3647;',
     782        'BTN' => 'Nu.',
     783        'BWP' => 'P',
     784        'BYR' => 'Br',
     785        'BYN' => 'Br',
     786        'BZD' => '&#36;',
     787        'CAD' => '&#36;',
     788        'CDF' => 'Fr',
     789        'CHF' => '&#67;&#72;&#70;',
     790        'CLP' => '&#36;',
     791        'CNY' => '&yen;',
     792        'COP' => '&#36;',
     793        'CRC' => '&#x20a1;',
     794        'CUC' => '&#36;',
     795        'CUP' => '&#36;',
     796        'CVE' => '&#36;',
     797        'CZK' => '&#75;&#269;',
     798        'DJF' => 'Fr',
     799        'DKK' => 'DKK',
     800        'DOP' => 'RD&#36;',
     801        'DZD' => '&#x62f;.&#x62c;',
     802        'EGP' => 'EGP',
     803        'ERN' => 'Nfk',
     804        'ETB' => 'Br',
     805        'EUR' => '&euro;',
     806        'FJD' => '&#36;',
     807        'FKP' => '&pound;',
     808        'GBP' => '&pound;',
     809        'GEL' => '&#x20be;',
     810        'GGP' => '&pound;',
     811        'GHS' => '&#x20b5;',
     812        'GIP' => '&pound;',
     813        'GMD' => 'D',
     814        'GNF' => 'Fr',
     815        'GTQ' => 'Q',
     816        'GYD' => '&#36;',
     817        'HKD' => '&#36;',
     818        'HNL' => 'L',
     819        'HRK' => 'kn',
     820        'HTG' => 'G',
     821        'HUF' => '&#70;&#116;',
     822        'IDR' => 'Rp',
     823        'ILS' => '&#8362;',
     824        'IMP' => '&pound;',
     825        'INR' => '&#8377;',
     826        'IQD' => '&#x639;.&#x62f;',
     827        'IRR' => '&#xfdfc;',
     828        'IRT' => '&#x062A;&#x0648;&#x0645;&#x0627;&#x0646;',
     829        'ISK' => 'kr.',
     830        'JEP' => '&pound;',
     831        'JMD' => '&#36;',
     832        'JOD' => '&#x62f;.&#x627;',
     833        'JPY' => '&yen;',
     834        'KES' => 'KSh',
     835        'KGS' => '&#x441;&#x43e;&#x43c;',
     836        'KHR' => '&#x17db;',
     837        'KMF' => 'Fr',
     838        'KPW' => '&#x20a9;',
     839        'KRW' => '&#8361;',
     840        'KWD' => '&#x62f;.&#x643;',
     841        'KYD' => '&#36;',
     842        'KZT' => 'KZT',
     843        'LAK' => '&#8365;',
     844        'LBP' => '&#x644;.&#x644;',
     845        'LKR' => '&#xdbb;&#xdd4;',
     846        'LRD' => '&#36;',
     847        'LSL' => 'L',
     848        'LYD' => '&#x644;.&#x62f;',
     849        'MAD' => '&#x62f;.&#x645;.',
     850        'MDL' => 'MDL',
     851        'MGA' => 'Ar',
     852        'MKD' => '&#x434;&#x435;&#x43d;',
     853        'MMK' => 'Ks',
     854        'MNT' => '&#x20ae;',
     855        'MOP' => 'P',
     856        'MRO' => 'UM',
     857        'MUR' => '&#x20a8;',
     858        'MVR' => '.&#x783;',
     859        'MWK' => 'MK',
     860        'MXN' => '&#36;',
     861        'MYR' => '&#82;&#77;',
     862        'MZN' => 'MT',
     863        'NAD' => '&#36;',
     864        'NGN' => '&#8358;',
     865        'NIO' => 'C&#36;',
     866        'NOK' => '&#107;&#114;',
     867        'NPR' => '&#8360;',
     868        'NZD' => '&#36;',
     869        'OMR' => '&#x631;.&#x639;.',
     870        'PAB' => 'B/.',
     871        'PEN' => 'S/.',
     872        'PGK' => 'K',
     873        'PHP' => '&#8369;',
     874        'PKR' => '&#8360;',
     875        'PLN' => '&#122;&#322;',
     876        'PRB' => '&#x440;.',
     877        'PYG' => '&#8370;',
     878        'QAR' => '&#x631;.&#x642;',
     879        'RMB' => '&yen;',
     880        'RON' => 'lei',
     881        'RSD' => '&#x434;&#x438;&#x43d;.',
     882        'RUB' => '&#8381;',
     883        'RWF' => 'Fr',
     884        'SAR' => '&#x631;.&#x633;',
     885        'SBD' => '&#36;',
     886        'SCR' => '&#x20a8;',
     887        'SDG' => '&#x62c;.&#x633;.',
     888        'SEK' => '&#107;&#114;',
     889        'SGD' => '&#36;',
     890        'SHP' => '&pound;',
     891        'SLL' => 'Le',
     892        'SOS' => 'Sh',
     893        'SRD' => '&#36;',
     894        'SSP' => '&pound;',
     895        'STD' => 'Db',
     896        'SYP' => '&#x644;.&#x633;',
     897        'SZL' => 'L',
     898        'THB' => '&#3647;',
     899        'TJS' => '&#x405;&#x41c;',
     900        'TMT' => 'm',
     901        'TND' => '&#x62f;.&#x62a;',
     902        'TOP' => 'T&#36;',
     903        'TRY' => '&#8378;',
     904        'TTD' => '&#36;',
     905        'TWD' => '&#78;&#84;&#36;',
     906        'TZS' => 'Sh',
     907        'UAH' => '&#8372;',
     908        'UGX' => 'UGX',
     909        'USD' => '&#36;',
     910        'UYU' => '&#36;',
     911        'UZS' => 'UZS',
     912        'VEF' => 'Bs F',
     913        'VND' => '&#8363;',
     914        'VUV' => 'Vt',
     915        'WST' => 'T',
     916        'XAF' => 'CFA',
     917        'XCD' => '&#36;',
     918        'XOF' => 'CFA',
     919        'XPF' => 'Fr',
     920        'YER' => '&#xfdfc;',
     921        'ZAR' => '&#82;',
     922        'ZMW' => 'ZK',
     923    ) );
     924    $currency_symbol = isset( $symbols[ $currency ] ) ? $symbols[ $currency ] : '';
     925    return apply_filters( 'wpdl_currency_symbol', $currency_symbol, $currency );
     926}
     927
     928/**
     929 * Get the price format depending on the currency position.
     930 * @since  1.0.5
     931 * @return string
     932 */
     933function wpdl_get_price_format() {
     934    $currency_pos = get_option( 'wpdl_currency_pos' );
     935    // default is left
     936    $format       = '%1$s%2$s';
     937    switch ( $currency_pos ) {
     938        case 'left':
     939            $format = '%1$s%2$s';
     940            break;
     941        case 'right':
     942            $format = '%2$s%1$s';
     943            break;
     944        case 'left_space':
     945            $format = '%1$s&nbsp;%2$s';
     946            break;
     947        case 'right_space':
     948            $format = '%2$s&nbsp;%1$s';
     949            break;
     950    }
     951    return apply_filters( 'wpdl_price_format', $format, $currency_pos );
     952}
     953
     954/**
     955 * Return the thousand separator for prices.
     956 *
     957 * @since  1.0.5
     958 * @return string
     959 */
     960function wpdl_get_price_thousand_separator() {
     961    return stripslashes( apply_filters( 'wpdl_get_price_thousand_separator', get_option( 'wpdl_price_thousand_sep' ) ) );
     962}
     963
     964/**
     965 * Return the decimal separator for prices.
     966 *
     967 * @since  1.0.5
     968 * @return string
     969 */
     970function wpdl_get_price_decimal_separator() {
     971    $separator = apply_filters( 'wpdl_get_price_decimal_separator', get_option( 'wpdl_price_decimal_sep' ) );
     972    return $separator ? stripslashes( $separator ) : '.';
     973}
     974
     975/**
     976 * Return the number of decimals after the decimal point.
     977 *
     978 * @since  1.0.5
     979 * @return int
     980 */
     981function wpdl_get_price_decimals() {
     982    $num_decim = apply_filters( 'wpdl_get_price_decimals', get_option( 'wpdl_price_num_decimals' ) );
     983    return $num_decim === '' ? 2 : absint( $num_decim );
     984}
     985
     986/**
     987 * Trim trailing zeros off prices.
     988 * @since  1.0.5
     989 * @param string|float|int $price Price.
     990 * @return string
     991 */
     992function wpdl_trim_zeros( $price ) {
     993    return preg_replace( '/' . preg_quote( wpdl_get_price_decimal_separator(), '/' ) . '0++$/', '', $price );
     994}
     995
     996/**
     997 * Format the price with a currency symbol.
     998 * @since  1.0.5
     999 * @param  float $price Raw price.
     1000 * @param  array $args  Arguments to format a price {
     1001 *     Array of arguments.
     1002 *     Defaults to empty array.
     1003 *
     1004 *     @type string $currency           Currency code.
     1005 *                                      Defaults to empty string (Use the result from get_wpdl_currency()).
     1006 *     @type string $decimal_separator  Decimal separator.
     1007 *                                      Defaults the result of wpdl_get_price_decimal_separator().
     1008 *     @type string $thousand_separator Thousand separator.
     1009 *                                      Defaults the result of wpdl_get_price_thousand_separator().
     1010 *     @type string $decimals           Number of decimals.
     1011 *                                      Defaults the result of wpdl_get_price_decimals().
     1012 *     @type string $price_format       Price format depending on the currency position.
     1013 *                                      Defaults the result of get_wpdl_price_format().
     1014 *     @type string $plan_seperator     Pricing plan separator.
     1015 *                                      Defaults / (slash).
     1016 *     @type string $plan               Pricing plan for current price.
     1017 *                                      Defaults empty.
     1018 * }
     1019 * @return string
     1020 */
     1021function wpdl_price( $price, $args = array() ) {
     1022    $args = apply_filters( 'wpdl_price_args', wp_parse_args( $args, array(
     1023        'currency'                  => '',
     1024        'decimal_separator'         => wpdl_get_price_decimal_separator(),
     1025        'thousand_separator'        => wpdl_get_price_thousand_separator(),
     1026        'decimals'                  => wpdl_get_price_decimals(),
     1027        'price_format'              => wpdl_get_price_format(),
     1028        'billing_cycle_separator'   => '/',
     1029        'billing_cycle'             => '',
     1030    ) ) );
     1031
     1032    $unformatted_price = $price;
     1033    $negative          = $price < 0;
     1034    $price             = apply_filters( 'wpdl_raw_price', floatval( $negative ? $price * -1 : $price ) );
     1035    $price             = apply_filters( 'wpdl_formatted_price', number_format( $price, $args['decimals'], $args['decimal_separator'], $args['thousand_separator'] ), $price, $args['decimals'], $args['decimal_separator'], $args['thousand_separator'] );
     1036
     1037    if ( apply_filters( 'wpdl_price_trim_zeros', false ) && $args['decimals'] > 0 ) {
     1038        $price = wpdl_trim_zeros( $price );
     1039    }
     1040
     1041    $formatted_price = ( $negative ? '-' : '' ) . sprintf( $args['price_format'], '<span class="wpdl-currency-symbol">' . wpdl_get_currency_symbols( $args['currency'] ) . '</span>', $price );
     1042    $output          = '<span class="wpdl-price">' . $formatted_price . '</span>';
     1043    $billing_cycle = wpdl_billing_cycle( $args['billing_cycle'] );
     1044    if( ! empty( $billing_cycle ) ) {
     1045        if( ! empty( $args['billing_cycle_separator'] ) ) $output .= sprintf( '<span class="wpdl-billing-cycle-separator">%s</span>', esc_html( $args['billing_cycle_separator'] ) );
     1046        $output .= sprintf( '<span class="wpdl-billing-cycle">%s</span>', $billing_cycle );
     1047    }
     1048
     1049    /**
     1050     * Filters the string of price markup.
     1051     *
     1052     * @param string $output            Price HTML markup.
     1053     * @param string $price             Formatted price.
     1054     * @param array  $args              Pass on the args.
     1055     * @param float  $unformatted_price Price as float to allow plugins custom formatting. Since 3.2.0.
     1056     */
     1057    return apply_filters( 'wpdl_price', $output, $price, $args, $unformatted_price );
     1058}
     1059
     1060/**
     1061 * Get Billing Cycle/s
     1062 * @since 1.0.5
     1063 * @param string $cycle
     1064 * @return string[]|string
     1065 */
     1066function wpdl_billing_cycle( $cycle = 'all' ) {
     1067    $cycles = apply_filters( 'wpdl_billing_cycles', array(
     1068        'daily'       => __( 'Daily', TTDD ),
     1069        'weekly'      => __( 'Weekly', TTDD ),
     1070        'bi_weekly'   => __( 'Bi-Weekly', TTDD ),
     1071        'monthly'     => __( 'Monthly', TTDD ),
     1072        'quarter'     => __( 'Per 3 Month', TTDD ),
     1073        'half_yearly' => __( 'Half Yearly', TTDD ),
     1074        'yearly'      => __( 'Yearly', TTDD ),
     1075    ) );
     1076    if( $cycle === 'all' ) return $cycles;
     1077    $cycle = ( isset( $cycles[$cycle] ) ) ? $cycles[$cycle] : '';
     1078    return apply_filters( 'wpdl_billing_cycle', $cycle );
     1079}
  • wp-directory-listing/trunk/readme.txt

    r2073079 r2086671  
    44    Tags: Directory, directory listing, listify
    55    Requires at least: 3.8
    6     Tested up to: 5.1.1
     6    Tested up to: 5.2
    77    Requires PHP: 5.6
    8     Stable tag: 1.0.4
     8    Stable tag: 1.0.5
    99    License: GPLv2 or later
    1010    License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    5757
    5858    = 1.0.0 =
    59         * 08/02/2019 Initial release.
     59        * 08/02/2019 Initial Release.
    6060
    6161    = 1.0.2 =
    6262        * 16/02/2019 Bug Fixed
     63
     64    = 1.0.5 =
     65        * 13/05/2019 Currency Options Added
    6366
    6467
  • wp-directory-listing/trunk/templates/loop/thumbnail.php

    r2065758 r2086671  
    2323    <?php if( $directory->is_featured() ) : ?>
    2424        <div class="directory-item-featured">
    25             <span aria-label="<?php esc_html_e( 'Featured Listing', 'kutir' ); ?>" class="tt--hint tt--top">
     25            <span aria-label="<?php esc_html_e( 'Featured Listing', 'softly' ); ?>" class="tt--hint tt--top">
    2626                <i class="fa fa-heart" aria-hidden="true"></i>
    2727            </span>
  • wp-directory-listing/trunk/templates/single-directory/head-meta.php

    r2086656 r2086671  
    2323
    2424
    25     <span class="listing-for"><?php echo $directory->get_listing_for(); ?></span>
     25    <span class="listing-for"><?php echo $directory->get_acquisition_type(); ?></span>
    2626
    2727    <span class="listing-author">
  • wp-directory-listing/trunk/templates/single-directory/review-form.php

    r2065758 r2086671  
    1414?>
    1515
    16 <h3><?php esc_html_e('Create a new review', TTDD); ?></h3>
     16<h4><?php esc_html_e('Create a new review', TTDD); ?></h4>
    1717
    1818<?php do_action( 'wpdl_before_directory_review_form' ); ?>
     
    3030
    3131    <div class='wpdl-form-group'>
     32        <label for="review"><?php esc_html_e( 'Your Rating', TTDD); ?></label>
    3233        <input required type="hidden" value="" name="wpdl_directory_review_rating">
    3334        <ul class='wpdl-rating-field'>
     
    4344
    4445    <div class="wpdl-form-group">
    45         <label for="review"><?php esc_html_e( 'Review', TTDD); ?></label>
     46        <label for="review"><?php esc_html_e( 'Review content', TTDD); ?></label>
    4647        <textarea required name="wpdl_directory_review_details" rows="5" id="review" class="wpdl-form-field" placeholder="<?php esc_html_e('Your Review', TTDD); ?>"></textarea>
    4748    </div>
  • wp-directory-listing/trunk/templates/single-directory/tabs/reviews.php

    r2065758 r2086671  
    1515?>
    1616
     17<?php do_action( 'wpdl_before_reviews' ); ?>
     18
    1719<div class="wpdl-directory-reviews">
    1820
     
    2527</div>
    2628
     29<?php do_action( 'wpdl_after_reviews' ); ?>
     30
    2731<?php do_action( 'wpdl_before_directory_review_form_wrapper' ); ?>
    2832
  • wp-directory-listing/trunk/wp-directory-listing.php

    r2073079 r2086671  
    44    Plugin URI: https://pluginrox.com/plugin/wp-directory-listing/
    55    Description: Directory Listing Plugin for WordPress
    6     Version: 1.0.4
     6    Version: 1.0.5
    77    Author: PluginRox
    88    Author URI: https://pluginrox.com/
     
    2323        $this->load_defines();
    2424        $this->load_scripts();
     25        $this->load_functions();
    2526        $this->load_classes();
    26         $this->load_functions();
    2727    }
    2828
Note: See TracChangeset for help on using the changeset viewer.