Spade

Mini Shell

Directory:~$ /home/lmsyaran/public_html/joomla4/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ /home/lmsyaran/public_html/joomla4/barrating.zip

PKn��[�#o,,img/index.htmlnu�[���<html><body
bgcolor="#FFFFFF"></body></html>PKn��[��E��img/star.pngnu�[����PNG


IHDR0���sBIT|d�	pHYs��~�tEXtSoftwareAdobe
Fireworks
CS6輲��IDATX��q�0E�=�'��3.��5����W�ր�݁�]���@��D0�h�qf�g4��w	`��v��p��O��Hf�P��d��ԉ>��B%�
�����$W�ZA�8v�@$���*�b��9w|r`J�nG=��<���m�ɮ��o�R�l�'���_�H:D��@u."�[P
�NDL�~��/D���E~`�$���B"��F8:~����X��:h����h̔@>C
3%��!�9��ԍv{����SB̸�\,�
X�H)"%]�UJl�
'U���ià����\%	��x��6�G";)z,�c.}��1Eݘcb>�/�g@vL�
�H���H�IUD�AQ7�|��j싾��Y�O�"���D��j���-括V�0�E~`_��#	Df��C��_�~���eR+�Ui�*��E��$_d�2V��Y�Z�b��b�(��8�j�����ߛ�nJ���ӵ�'�E�T�^ޗ�IEND�B`�PKn��[#��^��img/star.svgnu�[���<?xml
version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg  PUBLIC '-//W3C//DTD SVG 1.1//EN' 
'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'>
<svg width="24" height="48"
clip-rule="evenodd" fill-rule="evenodd"
image-rendering="optimizeQuality"
shape-rendering="geometricPrecision"
text-rendering="geometricPrecision" version="1.1"
viewBox="0 0 203 406" xml:space="preserve"
xmlns="http://www.w3.org/2000/svg">
 <defs>
  <style type="text/css">
   <![CDATA[
    .fil1 {fill:#E3E3E3}
    .fil0 {fill:#45A7D4}
   ]]>
  </style>
 </defs>
  <polygon class="fil0" points="102 203 130 275 203 281
147 331 164 406 102 366 39 406 56 331 0 281 74 275"/>
  <polygon class="fil1" points="102 2 129 72 202 78 146
127 163 202 102 161 40 202 57 127 2 78 74 72"/>
</svg>
PKn��[����img/star@2x.pngnu�[����PNG


IHDR0`[��psBIT|d�	pHYs��~�tEXtSoftwareAdobe
Fireworks
CS6輲��IDATx��1R�H�?��/�*�X�r��
���7�#ho�
�uH�d�l�s��O�j�0��#��VY%J�L�7�{�����P(�2�"T�o�V�,B���f��J�@0|d�{�"�����������.�%�5�T!D�?�z�_�{|W
�4�oٯ�
>+��/ʲL�e��L��
_�4�����>`�wU����eYF@�W@������
���x�'��Oʲ�R��d�d�h�үGy�\����q\�C��^w��<T��.���82�!X�Hq	�g�1�X���mT_�6��d��Ѽ$����eyC���vHfl�DD�/�|�逄ӪD+y�$>1�䡧�8��aG/td;Ƀ��;�y0v�a&�.�
$��J�^-�n���#��	���SW���0�u
�;�K"g&�a�uVgp�_�0�
U�[�ZD2ɀk܄�c�\lY>u�z���DD.,�LtW��g���Ƚ%����/��z�tG�������
)h���	ֿ��Ş��6"W�M�Ƚ�DTW:�;b��*
���q�N�H�R�9��	
X\^�oC׎4֕e�y:U�݁�	��:�/�Y��_���0Y��/ԆF�k����FK�k���j�'�5�Wa��0d���*L~!��r����9{c�i&��|T�|��/�����2����r=
��*�?�B��k�	�_h�����X�Ҹ��P�B9l��b~��<�l����B�4�逄ӪD+y�$>1�䡧�8��aG/td;Ƀ��;�y0v�a&�.�
$��J��z}�v�����S��������6�E=�k�u��^�q�J�S�͗k�_���Ӟ�/�Jc~!�v��Vi|o	�����Y�������R��_h��g����P!���#糐혭�
H�/��L�
��F$��g��o�M���_hD��g��{Ms~IEND�B`�PKo��[{��?��img/star@2x.svgnu�[���<?xml
version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg  PUBLIC '-//W3C//DTD SVG 1.1//EN' 
'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'>
<svg width="48" height="96"
clip-rule="evenodd" fill-rule="evenodd"
image-rendering="optimizeQuality"
shape-rendering="geometricPrecision"
text-rendering="geometricPrecision" version="1.1"
viewBox="0 0 203 406" xml:space="preserve"
xmlns="http://www.w3.org/2000/svg">
 <defs>
  <style type="text/css">
   <![CDATA[
    .fil1 {fill:#E3E3E3}
    .fil0 {fill:#45A7D4}
   ]]>
  </style>
 </defs>
  <polygon class="fil0" points="102 203 130 275 203 281
147 331 164 406 102 366 39 406 56 331 0 281 74 275"/>
  <polygon class="fil1" points="102 2 129 72 202 78 146
127 163 202 102 161 40 202 57 127 2 78 74 72"/>
</svg>
PKo��[�#o,,
index.htmlnu�[���<html><body
bgcolor="#FFFFFF"></body></html>PKo��[xBJ�<M<Mjquery.barrating.jsnu�[���/**
 * jQuery Bar Rating Plugin v1.2.2
 *
 * http://github.com/antennaio/jquery-bar-rating
 *
 * Copyright (c) 2012-2016 Kazik Pietruszewski
 *
 * This plugin is available under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */
(function (factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD
        define(['jquery'], factory);
    } else if (typeof module === 'object' &&
module.exports) {
        // Node/CommonJS
        module.exports = factory(require('jquery'));
    } else {
        // browser globals
        factory(jQuery);
    }
}(function ($) {

    var BarRating = (function() {

        function BarRating() {
            var self = this;

            // wrap element in a wrapper div
            var wrapElement = function() {
                var classes = ['br-wrapper'];

                if (self.options.theme !== '') {
                    classes.push('br-theme-' +
self.options.theme);
                }

                self.$elem.wrap($('<div />', {
                    'class': classes.join(' ')
                }));
            };

            // unwrap element
            var unwrapElement = function() {
                self.$elem.unwrap();
            };

            // find option by value
            var findOption = function(value) {
                if ($.isNumeric(value)) {
                    value = Math.floor(value);
                }

                return $('option[value="' + value  +
'"]', self.$elem);
            };

            // get initial option
            var getInitialOption = function() {
                var initialRating = self.options.initialRating;

                if (!initialRating) {
                    return $('option:selected', self.$elem);
                }

                return findOption(initialRating);
            };

            // get empty option
            var getEmptyOption = function() {
                var $emptyOpt =
self.$elem.find('option[value="' + self.options.emptyValue +
'"]');

                if (!$emptyOpt.length && self.options.allowEmpty) {
                    $emptyOpt = $('<option />', {
'value': self.options.emptyValue });

                    return $emptyOpt.prependTo(self.$elem);
                }

                return $emptyOpt;
            };

            // get data
            var getData = function(key) {
                var data = self.$elem.data('barrating');

                if (typeof key !== 'undefined') {
                    return data[key];
                }

                return data;
            };

            // set data
            var setData = function(key, value) {
                if (value !== null && typeof value ===
'object') {
                    self.$elem.data('barrating', value);
                } else {
                    self.$elem.data('barrating')[key] = value;
                }
            };

            // save data on element
            var saveDataOnElement = function() {
                var $opt = getInitialOption();
                var $emptyOpt = getEmptyOption();

                var value = $opt.val();
                var text = $opt.data('html') ?
$opt.data('html') : $opt.text();

                // if the allowEmpty option is not set let's check if
empty option exists in the select field
                var allowEmpty = (self.options.allowEmpty !== null) ?
                    self.options.allowEmpty :
                    !!$emptyOpt.length;

                var emptyValue = ($emptyOpt.length) ? $emptyOpt.val() :
null;
                var emptyText = ($emptyOpt.length) ? $emptyOpt.text() :
null;

                setData(null, {
                    userOptions: self.options,

                    // initial rating based on the OPTION value
                    ratingValue: value,
                    ratingText: text,

                    // rating will be restored by calling clear method
                    originalRatingValue: value,
                    originalRatingText: text,

                    // allow empty ratings?
                    allowEmpty: allowEmpty,

                    // rating value and text of the empty OPTION
                    emptyRatingValue: emptyValue,
                    emptyRatingText: emptyText,

                    // read-only state
                    readOnly: self.options.readonly,

                    // did the user already select a rating?
                    ratingMade: false
                });
            };

            // remove data on element
            var removeDataOnElement = function() {
                self.$elem.removeData('barrating');
            };

            // return current rating text
            var ratingText = function() {
                return getData('ratingText');
            };

            // return current rating value
            var ratingValue = function() {
                return getData('ratingValue');
            };

            // build widget and return jQuery element
            var buildWidget = function() {
                var $w = $('<div />', { 'class':
'br-widget' });

                // create A elements that will replace OPTIONs
                self.$elem.find('option').each(function() {
                    var val, text, html, $a;

                    val = $(this).val();

                    // create ratings - but only if val is not defined as
empty
                    if (val !== getData('emptyRatingValue')) {
                        text = $(this).text();
                        html = $(this).data('html');
                        if (html) { text = html; }

                        $a = $('<a />', {
                            'href': '#',
                            'data-rating-value': val,
                            'data-rating-text': text,
                            'html': (self.options.showValues) ?
text : ''
                        });

                        $w.append($a);
                    }

                });

                // append .br-current-rating div to the widget
                if (self.options.showSelectedRating) {
                    $w.append($('<div />', {
'text': '', 'class':
'br-current-rating' }));
                }

                // additional classes for the widget
                if (self.options.reverse) {
                    $w.addClass('br-reverse');
                }

                if (self.options.readonly) {
                    $w.addClass('br-readonly');
                }

                return $w;
            };

            // return a jQuery function name depending on the
'reverse' setting
            var nextAllorPreviousAll = function() {
                if (getData('userOptions').reverse) {
                    return 'nextAll';
                } else {
                    return 'prevAll';
                }
            };

            // set the value of the select field
            var setSelectFieldValue = function(value) {
                // change selected option
                findOption(value).prop('selected', true);

                self.$elem.change();
            };

            // reset select field
            var resetSelectField = function() {
                $('option',
self.$elem).prop('selected', function() {
                    return this.defaultSelected;
                });

                self.$elem.change();
            };

            // display the currently selected rating
            var showSelectedRating = function(text) {
                // text undefined?
                text = text ? text : ratingText();

                // special case when the selected rating is defined as
empty
                if (text == getData('emptyRatingText')) {
                    text = '';
                }

                // update .br-current-rating div
                if (self.options.showSelectedRating) {
                   
self.$elem.parent().find('.br-current-rating').text(text);
                }
            };

            // return rounded fraction of a value (14.4 -> 40, 0.99
-> 90)
            var fraction = function(value) {
                return Math.round(((Math.floor(value * 10) / 10) % 1) *
100);
            };

            // remove all classes from elements
            var resetStyle = function() {
                // remove all classes starting with br-*
               
self.$widget.find('a').removeClass(function(index, classes) {
                    return (classes.match(/(^|\s)br-\S+/g) ||
[]).join(' ');
                });
            };

            // apply style by setting classes on elements
            var applyStyle = function() {
                var $a =
self.$widget.find('a[data-rating-value="' + ratingValue() +
'"]');
                var initialRating =
getData('userOptions').initialRating;
                var baseValue = $.isNumeric(ratingValue()) ? ratingValue()
: 0;
                var f = fraction(initialRating);
                var $all, $fractional;

                resetStyle();

                // add classes
                $a.addClass('br-selected
br-current')[nextAllorPreviousAll()]()
                    .addClass('br-selected');

                if (!getData('ratingMade') &&
$.isNumeric(initialRating)) {
                    if ((initialRating <= baseValue) || !f) {
                        return;
                    }

                    $all = self.$widget.find('a');

                    $fractional = ($a.length) ?
                        $a[(getData('userOptions').reverse) ?
'prev' : 'next']() :
                        $all[(getData('userOptions').reverse) ?
'last' : 'first']();

                    $fractional.addClass('br-fractional');
                    $fractional.addClass('br-fractional-' + f);
                }
            };

            // check if the element is deselectable?
            var isDeselectable = function($element) {
                if (!getData('allowEmpty') ||
!getData('userOptions').deselectable) {
                    return false;
                }

                return (ratingValue() ==
$element.attr('data-rating-value'));
            };

            // handle click events
            var attachClickHandler = function($elements) {
                $elements.on('click.barrating', function(event) {
                    var $a = $(this),
                        options = getData('userOptions'),
                        value,
                        text;

                    event.preventDefault();

                    value = $a.attr('data-rating-value');
                    text = $a.attr('data-rating-text');

                    // is current and deselectable?
                    if (isDeselectable($a)) {
                        value = getData('emptyRatingValue');
                        text = getData('emptyRatingText');
                    }

                    // remember selected rating
                    setData('ratingValue', value);
                    setData('ratingText', text);
                    setData('ratingMade', true);

                    setSelectFieldValue(value);
                    showSelectedRating(text);

                    applyStyle();

                    // onSelect callback
                    options.onSelect.call(
                        self,
                        ratingValue(),
                        ratingText(),
                        event
                    );

                    return false;
                });
            };

            // handle mouseenter events
            var attachMouseEnterHandler = function($elements) {
                $elements.on('mouseenter.barrating', function() {
                    var $a = $(this);

                    resetStyle();

                   
$a.addClass('br-active')[nextAllorPreviousAll()]()
                        .addClass('br-active');

                   
showSelectedRating($a.attr('data-rating-text'));
                });
            };

            // handle mouseleave events
            var attachMouseLeaveHandler = function($elements) {
                self.$widget.on('mouseleave.barrating
blur.barrating', function() {
                    showSelectedRating();
                    applyStyle();
                });
            };

            // somewhat primitive way to remove 300ms click delay on touch
devices
            // for a more advanced solution consider setting `fastClicks`
option to false
            // and using a library such as fastclick
(https://github.com/ftlabs/fastclick)
            var fastClicks = function($elements) {
                $elements.on('touchstart.barrating',
function(event) {
                    event.preventDefault();
                    event.stopPropagation();

                    $(this).click();
                });
            };

            // disable clicks
            var disableClicks = function($elements) {
                $elements.on('click.barrating', function(event) {
                    event.preventDefault();
                });
            };

            var attachHandlers = function($elements) {
                // attach click event handler
                attachClickHandler($elements);

                if (self.options.hoverState) {
                    // attach mouseenter event handler
                    attachMouseEnterHandler($elements);

                    // attach mouseleave event handler
                    attachMouseLeaveHandler($elements);
                }
            };

            var detachHandlers = function($elements) {
                // remove event handlers in the ".barrating"
namespace
                $elements.off('.barrating');
            };

            var setupHandlers = function(readonly) {
                var $elements = self.$widget.find('a');

                if (fastClicks) {
                    fastClicks($elements);
                }

                if (readonly) {
                    detachHandlers($elements);
                    disableClicks($elements);
                } else {
                    attachHandlers($elements);
                }
            };

            this.show = function() {
                // run only once
                if (getData()) return;

                // wrap element
                wrapElement();

                // save data
                saveDataOnElement();

                // build & append widget to the DOM
                self.$widget = buildWidget();
                self.$widget.insertAfter(self.$elem);

                applyStyle();

                showSelectedRating();

                setupHandlers(self.options.readonly);

                // hide the select field
                self.$elem.hide();
            };

            this.readonly = function(state) {
                if (typeof state !== 'boolean' ||
getData('readOnly') == state) return;

                setupHandlers(state);
                setData('readOnly', state);
                self.$widget.toggleClass('br-readonly');
            };

            this.set = function(value) {
                var options = getData('userOptions');

                if (self.$elem.find('option[value="' + value
+ '"]').length === 0) return;

                // set data
                setData('ratingValue', value);
                setData('ratingText',
self.$elem.find('option[value="' + value +
'"]').text());
                setData('ratingMade', true);

                setSelectFieldValue(ratingValue());
                showSelectedRating(ratingText());

                applyStyle();

                // onSelect callback
                if (!options.silent) {
                    options.onSelect.call(
                        this,
                        ratingValue(),
                        ratingText()
                    );
                }
            };

            this.clear = function() {
                var options = getData('userOptions');

                // restore original data
                setData('ratingValue',
getData('originalRatingValue'));
                setData('ratingText',
getData('originalRatingText'));
                setData('ratingMade', false);

                resetSelectField();
                showSelectedRating(ratingText());

                applyStyle();

                // onClear callback
                options.onClear.call(
                    this,
                    ratingValue(),
                    ratingText()
                );
            };

            this.destroy = function() {
                var value = ratingValue();
                var text = ratingText();
                var options = getData('userOptions');

                // detach handlers
                detachHandlers(self.$widget.find('a'));

                // remove widget
                self.$widget.remove();

                // remove data
                removeDataOnElement();

                // unwrap the element
                unwrapElement();

                // show the element
                self.$elem.show();

                // onDestroy callback
                options.onDestroy.call(
                    this,
                    value,
                    text
                );
            };
        }

        BarRating.prototype.init = function (options, elem) {
            this.$elem = $(elem);
            this.options = $.extend({}, $.fn.barrating.defaults, options);

            return this.options;
        };

        return BarRating;
    })();

    $.fn.barrating = function (method, options) {
        return this.each(function () {
            var plugin = new BarRating();

            // plugin works with select fields
            if (!$(this).is('select')) {
                $.error('Sorry, this plugin only works with select
fields.');
            }

            // method supplied
            if (plugin.hasOwnProperty(method)) {
                plugin.init(options, this);
                if (method === 'show') {
                    return plugin.show(options);
                } else {
                    // plugin exists?
                    if (plugin.$elem.data('barrating')) {
                        plugin.$widget =
$(this).next('.br-widget');
                        return plugin[method](options);
                    }
                }

            // no method supplied or only options supplied
            } else if (typeof method === 'object' || !method) {
                options = method;
                plugin.init(options, this);
                return plugin.show();

            } else {
                $.error('Method ' + method + ' does not
exist on jQuery.barrating');
            }
        });
    };

    $.fn.barrating.defaults = {
        theme:'',
        initialRating:null, // initial rating
        allowEmpty:null, // allow empty ratings?
        emptyValue:'', // this is the expected value of the empty
rating
        showValues:false, // display rating values on the bars?
        showSelectedRating:true, // append a div with a rating to the
widget?
        deselectable:true, // allow to deselect ratings?
        reverse:false, // reverse the rating?
        readonly:false, // make the rating ready-only?
        fastClicks:true, // remove 300ms click delay on touch devices?
        hoverState:true, // change state on hover?
        silent:false, // supress callbacks when controlling ratings
programatically
        onSelect:function (value, text, event) {
        }, // callback fired when a rating is selected
        onClear:function (value, text) {
        }, // callback fired when a rating is cleared
        onDestroy:function (value, text) {
        } // callback fired when a widget is destroyed
    };

    $.fn.barrating.BarRating = BarRating;

}));
PKo��["�#�&&jquery.barrating.min.jsnu�[���!function(t){"function"==typeof
define&&define.amd?define(["jquery"],t):"object"==typeof
module&&module.exports?module.exports=t(require("jquery")):t(jQuery)}(function(t){var
e=function(){function e(){var e=this,n=function(){var
n=["br-wrapper"];""!==e.options.theme&&n.push("br-theme-"+e.options.theme),e.$elem.wrap(t("<div
/>",{"class":n.join("
")}))},i=function(){e.$elem.unwrap()},a=function(n){return
t.isNumeric(n)&&(n=Math.floor(n)),t('option[value="'+n+'"]',e.$elem)},r=function(){var
n=e.options.initialRating;return
n?a(n):t("option:selected",e.$elem)},o=function(){var
n=e.$elem.find('option[value="'+e.options.emptyValue+'"]');return!n.length&&e.options.allowEmpty?(n=t("<option
/>",{value:e.options.emptyValue}),n.prependTo(e.$elem)):n},l=function(t){var
n=e.$elem.data("barrating");return"undefined"!=typeof
t?n[t]:n},s=function(t,n){null!==n&&"object"==typeof
n?e.$elem.data("barrating",n):e.$elem.data("barrating")[t]=n},u=function(){var
t=r(),n=o(),i=t.val(),a=t.data("html")?t.data("html"):t.text(),l=null!==e.options.allowEmpty?e.options.allowEmpty:!!n.length,u=n.length?n.val():null,d=n.length?n.text():null;s(null,{userOptions:e.options,ratingValue:i,ratingText:a,originalRatingValue:i,originalRatingText:a,allowEmpty:l,emptyRatingValue:u,emptyRatingText:d,readOnly:e.options.readonly,ratingMade:!1})},d=function(){e.$elem.removeData("barrating")},c=function(){return
l("ratingText")},f=function(){return
l("ratingValue")},g=function(){var n=t("<div
/>",{"class":"br-widget"});return
e.$elem.find("option").each(function(){var
i,a,r,o;i=t(this).val(),i!==l("emptyRatingValue")&&(a=t(this).text(),r=t(this).data("html"),r&&(a=r),o=t("<a
/>",{href:"#","data-rating-value":i,"data-rating-text":a,html:e.options.showValues?a:""}),n.append(o))}),e.options.showSelectedRating&&n.append(t("<div
/>",{text:"","class":"br-current-rating"})),e.options.reverse&&n.addClass("br-reverse"),e.options.readonly&&n.addClass("br-readonly"),n},p=function(){return
l("userOptions").reverse?"nextAll":"prevAll"},h=function(t){a(t).prop("selected",!0),e.$elem.change()},m=function(){t("option",e.$elem).prop("selected",function(){return
this.defaultSelected}),e.$elem.change()},v=function(t){t=t?t:c(),t==l("emptyRatingText")&&(t=""),e.options.showSelectedRating&&e.$elem.parent().find(".br-current-rating").text(t)},y=function(t){return
Math.round(Math.floor(10*t)/10%1*100)},b=function(){e.$widget.find("a").removeClass(function(t,e){return(e.match(/(^|\s)br-\S+/g)||[]).join("
")})},w=function(){var
n,i,a=e.$widget.find('a[data-rating-value="'+f()+'"]'),r=l("userOptions").initialRating,o=t.isNumeric(f())?f():0,s=y(r);if(b(),a.addClass("br-selected
br-current")[p()]().addClass("br-selected"),!l("ratingMade")&&t.isNumeric(r)){if(o>=r||!s)return;n=e.$widget.find("a"),i=a.length?a[l("userOptions").reverse?"prev":"next"]():n[l("userOptions").reverse?"last":"first"](),i.addClass("br-fractional"),i.addClass("br-fractional-"+s)}},$=function(t){return
l("allowEmpty")&&l("userOptions").deselectable?f()==t.attr("data-rating-value"):!1},x=function(n){n.on("click.barrating",function(n){var
i,a,r=t(this),o=l("userOptions");return
n.preventDefault(),i=r.attr("data-rating-value"),a=r.attr("data-rating-text"),$(r)&&(i=l("emptyRatingValue"),a=l("emptyRatingText")),s("ratingValue",i),s("ratingText",a),s("ratingMade",!0),h(i),v(a),w(),o.onSelect.call(e,f(),c(),n),!1})},R=function(e){e.on("mouseenter.barrating",function(){var
e=t(this);b(),e.addClass("br-active")[p()]().addClass("br-active"),v(e.attr("data-rating-text"))})},V=function(t){e.$widget.on("mouseleave.barrating
blur.barrating",function(){v(),w()})},O=function(e){e.on("touchstart.barrating",function(e){e.preventDefault(),e.stopPropagation(),t(this).click()})},C=function(t){t.on("click.barrating",function(t){t.preventDefault()})},S=function(t){x(t),e.options.hoverState&&(R(t),V(t))},T=function(t){t.off(".barrating")},j=function(t){var
n=e.$widget.find("a");O&&O(n),t?(T(n),C(n)):S(n)};this.show=function(){l()||(n(),u(),e.$widget=g(),e.$widget.insertAfter(e.$elem),w(),v(),j(e.options.readonly),e.$elem.hide())},this.readonly=function(t){"boolean"==typeof
t&&l("readOnly")!=t&&(j(t),s("readOnly",t),e.$widget.toggleClass("br-readonly"))},this.set=function(t){var
n=l("userOptions");0!==e.$elem.find('option[value="'+t+'"]').length&&(s("ratingValue",t),s("ratingText",e.$elem.find('option[value="'+t+'"]').text()),s("ratingMade",!0),h(f()),v(c()),w(),n.silent||n.onSelect.call(this,f(),c()))},this.clear=function(){var
t=l("userOptions");s("ratingValue",l("originalRatingValue")),s("ratingText",l("originalRatingText")),s("ratingMade",!1),m(),v(c()),w(),t.onClear.call(this,f(),c())},this.destroy=function(){var
t=f(),n=c(),a=l("userOptions");T(e.$widget.find("a")),e.$widget.remove(),d(),i(),e.$elem.show(),a.onDestroy.call(this,t,n)}}return
e.prototype.init=function(e,n){return
this.$elem=t(n),this.options=t.extend({},t.fn.barrating.defaults,e),this.options},e}();t.fn.barrating=function(n,i){return
this.each(function(){var a=new
e;if(t(this).is("select")||t.error("Sorry, this plugin only
works with select
fields."),a.hasOwnProperty(n)){if(a.init(i,this),"show"===n)return
a.show(i);if(a.$elem.data("barrating"))return
a.$widget=t(this).next(".br-widget"),a[n](i)}else{if("object"==typeof
n||!n)return i=n,a.init(i,this),a.show();t.error("Method
"+n+" does not exist on
jQuery.barrating")}})},t.fn.barrating.defaults={theme:"",initialRating:null,allowEmpty:null,emptyValue:"",showValues:!1,showSelectedRating:!0,deselectable:!0,reverse:!1,readonly:!1,fastClicks:!0,hoverState:!0,silent:!1,onSelect:function(t,e,n){},onClear:function(t,e){},onDestroy:function(t,e){}},t.fn.barrating.BarRating=e});PKo��[�C��##themes/css-stars.cssnu�[���/*.br-theme-css-stars
.br-widget {
  height: 40px;
  white-space: nowrap;
  margin-top: -15px;
}
.br-theme-css-stars .br-widget a {
  text-decoration: none;
  height: 30px;
  width: 30px;
  float: left;
  font-size: 35px;
  margin-right: 0px;
}
.br-theme-css-stars .br-widget a:after {
  content: "\2605";
  color: #d2d2d2;
}
.br-theme-css-stars .br-widget a.br-active:after {
  color: #45A7D4;
}
.br-theme-css-stars .br-widget a.br-selected:after {
  color: #45A7D4;
}
.br-theme-css-stars .br-widget .br-current-rating {
  display: none;
}
.br-theme-css-stars .br-readonly a {
  cursor: default;
}
@media print {
  .br-theme-css-stars .br-widget a:after {
    content: "\2606";
    color: black;
  }
  .br-theme-css-stars .br-widget a.br-active:after,
  .br-theme-css-stars .br-widget a.br-selected:after {
    content: "\2605";
    color: black;
  }
}*/

/* Backward compatibility with templates*/
.ph-rating .br-widget {
    height: 24px;
}

.ph-rating .br-widget a {
    /*background: url('../img/star.png');*/
    background: url(../img/star.svg);
    width: 24px;
    height: 24px;
    display: block;
    float: left;
}

.ph-rating .br-widget a:hover,
.ph-rating .br-widget a.br-active,
.ph-rating .br-widget a.br-selected {
    background-position: 0 24px;
}

@media
only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-device-pixel-ratio : 1.5),
(min-resolution: 192dpi) {
    .ph-rating .br-widget a {
        /*background: url('../img/star@2x.png');*/
		background: url('../img/star@2x.svg');
        background-size: 24px 48px;
    }
}
PKo��[�#o,,themes/index.htmlnu�[���<html><body
bgcolor="#FFFFFF"></body></html>PKn��[�#o,,img/index.htmlnu�[���PKn��[��E��jimg/star.pngnu�[���PKn��[#��^��*img/star.svgnu�[���PKn��[����eimg/star@2x.pngnu�[���PKo��[{��?��$img/star@2x.svgnu�[���PKo��[�#o,,
bindex.htmlnu�[���PKo��[xBJ�<M<M�jquery.barrating.jsnu�[���PKo��["�#�&&G\jquery.barrating.min.jsnu�[���PKo��[�C��##�rthemes/css-stars.cssnu�[���PKo��[�#o,,ythemes/index.htmlnu�[���PK

�y