#coding=utf-8

module Trustie
  module Utils
    class Office

      def initialize(file)
        @file = file
      end

      def office?
        %w(doc docx ppt pptx xls xlsx).any?{|word| @file.downcase.end_with?(word)}
      end

      def conver(saved_file, force=false)
        if force || !File.exist?(saved_file)
          if File.exist? @file
            if office?
              begin
                # resource = RestClient::Resource.new(
                #  'http://192.168.80.107/Any2HtmlHandler.ashx',
                #   :timeout => -1,
                #   :open_timeout => -1
                # )
                # req = resource.post :txtDes => File.new(@file, 'rb')
                req = RestClient.post 'http://192.168.80.107/Any2HtmlHandler.ashx',:txtDes => File.new(@file, 'rb')
                File.delete(saved_file) if File.exist?(saved_file)
                if req.body.length > 10 && !req.body.eql?('转换出错')
                  File.open(saved_file, "wb+") do |f|
                    f.write(req.body)
                  end
                end
                return true
              rescue =>e
                puts e.message
              end
            end
          else
            puts "can't find file #{@file}"
          end
        end
        false
      end

    end
  end
end