403Webshell
Server IP : 104.21.80.248  /  Your IP : 172.71.28.156
Web Server : Apache/2.4.25 (Win32) OpenSSL/1.0.2j PHP/5.6.30
System : Windows NT WIN-ECQAAA40806 6.2 build 9200 (Windows Server 2012 Standard Edition) i586
User : SYSTEM ( 0)
PHP Version : 5.6.30
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  E:/Inetpub/www/news/elearning/admin/assets/plugins/Font-Awesome/src/_plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : E:/Inetpub/www/news/elearning/admin/assets/plugins/Font-Awesome/src/_plugins/site.rb
##
# Provide an icons attribute on the site object

require 'yaml'
require 'forwardable'

module Jekyll

  class Icon

    attr_reader :name, :id, :unicode, :created, :categories

    def initialize(icon_object)
      @icon_object = icon_object

      # Class name used in CSS and HTML
      @icon_object['class'] = icon_object['id']
      # Normalize the aliases
      @icon_object['aliases'] ||= []

      @name = icon_object['name']
      @id = icon_object['id']
      @class = icon_object['class']
      @aliases = icon_object['aliases']
      @unicode = icon_object['unicode']
      @created = icon_object['created']
      @categories = icon_object['categories']
    end

    def to_liquid
      return @icon_object
    end

  end

  class IconList
    ##
    # A list of icons
    #
    include Enumerable
    extend Forwardable

    def_delegators :@icon_array, :each, :<<

    def initialize(icon_array)
      @original_icon_array = icon_array
      @icon_array = []

      icon_array.each { |icon_object|
        @icon_array << Icon.new(icon_object)
      }
    end

    def [](k)
      @icon_array[k]
    end

    def to_liquid
      @original_icon_array
    end

  end

  module IconFilters
    def expand_aliases(icons)
      expanded = []

      icons.each { |icon|
        # Remove the aliases since we are expanding them
        expanded << icon.reject{ |k| k == 'aliases'}

        icon['aliases'].each { |alias_id|
          alias_icon = expanded[-1].dup
          alias_icon['class'] = alias_id
          alias_icon['alias_of'] = icon

          expanded << alias_icon
        }
      }

      return expanded
    end

    def category(icons, cat)
      icons.select { |icon| icon['categories'].include?(cat) }
    end

    def version(icons, version)
      icons.select { |icon| icon['created'] == version }
    end

    def sort_by(icons, sort_key)
      icons.sort_by! { |icon| icon[sort_key] }
    end
  end

  Liquid::Template.register_filter(IconFilters)

  class Site

    attr_reader :icons

    def process
      self.reset_icons
      self.reset
      self.read
      self.generate
      self.render
      self.cleanup
      self.write

      self.build
    end

    ##
    # Reads the YAML file that stores all data about icons
    def reset_icons
      @icons = IconList.new(YAML.load_file(self.config['icon_meta'])['icons'])
    end

    ##
    # After generation, runs a build of Font-Awesome
    def build
      system("make build", :chdir => self.config['destination'], :out => :err)
    end

    def site_payload
      {
        "site"       => self.config.merge({
          "time"       => self.time,
          "posts"      => self.posts.sort { |a, b| b <=> a },
          "pages"      => self.pages,
          "html_pages" => self.pages.reject { |page| !page.html? },
          "categories" => post_attr_hash('categories'),
          "tags"       => post_attr_hash('tags')}),
        "icons"      => @icons,
      }
    end

  end

end

Youez - 2016 - github.com/yon3zu
LinuXploit