Method: ActFunc::Fileupload.imageupload

Defined in:
lib/act_func/fileupload.rb

.imageupload(imgfile, filepath = "", rule = "jpg|jpeg", minsize = 0, maxsize = 2000, w = 0, h = 0) ⇒ Object

image upload params: file->file stream; filepath->file save path; rule->can upload file format(“jpg|xls”); minsize and maxsize->minsize<file’s size<maxsize; w->new image width, h->new image height return: true, result: “new filename” or false, result: “error message”



73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/act_func/fileupload.rb', line 73

def Fileupload.imageupload(imgfile, filepath="", rule="jpg|jpeg", minsize=0, maxsize=2000, w=0, h=0)
  result = Fileupload.rule_validata(imgfile, rule, minsize, maxsize)
  if result[:state]
    sname = Fileupload.getname(imgfile, filepath)
    begin
      unless Dir::exist?(filepath)
        unless system("mkdir -p #{filepath}")
          return {state: false, result: "目录创建失败,请于管理员联系"}
        end
      end
      File.open(filepath+sname, "wb") do |f|
        f.write(imgfile.read)
      end
      Fileupload.resize(filepath + sname, w, h)
      return {state: true, result: sname}
    rescue
      return {state: false, result: "写入图片失败:#{$!}"}
    end
  else
    return {state: false, result: result[:message]}
  end
end