Sha256: f3d9e0a63e287804a0d36c40c4f8b82130fae808447ad2a2649b88cc11c01d61

Contents?: true

Size: 1.55 KB

Versions: 252

Compression:

Stored size: 1.55 KB

Contents

##
## $Release: 2.7.0 $
## copyright(c) 2006-2011 kuwata-lab.com all rights reserved.
##

require 'erubis/engine'
require 'erubis/enhancer'


module Erubis


  module PhpGenerator
    include Generator

    def self.supported_properties()  # :nodoc:
      return []
    end

    def init_generator(properties={})
      super
      @escapefunc ||= 'htmlspecialchars'
    end

    def add_preamble(src)
      # empty
    end

    def escape_text(text)
      return text.gsub!(/<\?xml\b/, '<<?php ?>?xml') || text
    end

    def add_text(src, text)
      src << escape_text(text)
    end

    def add_expr_literal(src, code)
      code.strip!
      src << "<?php echo #{code}; ?>"
    end

    def add_expr_escaped(src, code)
      add_expr_literal(src, escaped_expr(code))
    end

    def add_expr_debug(src, code)
      code.strip!
      s = code.gsub(/\'/, "\\'")
      src << "<?php error_log('*** debug: #{s}='.(#{code}), 0); ?>"
    end

    def add_stmt(src, code)
      src << "<?php"
      src << " " if code[0] != ?\ #
      if code[-1] == ?\n
        code.chomp!
        src << code << "?>\n"
      else
        src << code << "?>"
      end
    end

    def add_postamble(src)
      # empty
    end

  end


  ##
  ## engine for PHP
  ##
  class Ephp < Basic::Engine
    include PhpGenerator
  end


  class EscapedEphp < Ephp
    include EscapeEnhancer
  end


  #class XmlEphp < Ephp
  #  include EscapeEnhancer
  #end


  class PI::Ephp < PI::Engine
    include PhpGenerator

    def init_converter(properties={})
      @pi = 'php'
      super(properties)
    end

  end


end

Version data entries

252 entries across 212 versions & 42 rubygems

Version Path
initforthe-cookies-0.0.1 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
rails-uploader-0.0.4 vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.6.1 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/rails-uploader-0.0.1/vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
rails-uploader-0.0.1 vendor/bundle/ruby/1.9.1/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.6.0 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.5.4 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.5.3 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.5.2 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.5.1 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.5.0 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.4.1 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb
challah-0.4.0 vendor/bundle/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb