struggle 1.4.3 → 1.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3b3234fb48390ef6765003f0f93ec05346fe7c3e
4
- data.tar.gz: e08effef3119d9d165ea364debf2e06de60f4c1a
3
+ metadata.gz: 956bbcdc489c15f0599b1a6a4702b79724850b4e
4
+ data.tar.gz: 302ccf32d2892df12c185e801c3a5d76faf96323
5
5
  SHA512:
6
- metadata.gz: 66ba574a945f1a82a9a76ff0a4ec5480a45a9e42c5c8ae47706d3546b1c8e21b21d6ba45dd46aad1fc268a2839e2d54d86a949849f6eed6271db88a62b692b8e
7
- data.tar.gz: 0438399a7095fbe4f41b2bf1d78884822320c09da49e6d9936d4f5a656d9cc7f8dc0eb0fc8bab29ab0e38fb1a8aeeb006853ec8b44871b4dce2fabf79d2e9a51
6
+ metadata.gz: 8d82cc833c79ca70a4451f966ee8dbff370b3133d81ff4f11632e849c227c69e7069bcec5d2b764a23163bf43c7e1b076581be0543c10b7cb33cc27b9a060622
7
+ data.tar.gz: fbed4c8b69d9d1a19608f7aaf62083e03dae766f29793d0e50a90182cad6433f7e13ae86372a93e7e43068f1e70aa0ad72d7b802e9fc660da941b0f1a75897c3
@@ -1,12 +1,12 @@
1
1
  module Struggle
2
- class Fileupload
2
+ class Tfile
3
3
  #file upload
4
4
  #params: file->file stream,filepath->file save path,rule->can upload file format("jpg|xls"),minsize and maxsize->minsize<file's size<maxsize
5
5
  #return: {state: true, result: "new filename"} or {state: false, result: "error message"}
6
- def Fileupload.upload(file, filepath="", rule="jpg|xls", minsize=1, maxsize=4000)
7
- result = Fileupload.rule_validata(file, rule, minsize, maxsize)
6
+ def Tfile.upload(file, filepath="", rule="jpg|xls", minsize=1, maxsize=4000)
7
+ result = Tfile.rule_validata(file, rule, minsize, maxsize)
8
8
  if result[:state]
9
- sname = Fileupload.getname(file, filepath)
9
+ sname = Tfile.getname(file, filepath)
10
10
  begin
11
11
  unless Dir::exist?(filepath)
12
12
  unless system("mkdir -p #{filepath}")
@@ -25,11 +25,42 @@ module Struggle
25
25
  end
26
26
  end
27
27
 
28
+ #before unpack init
29
+ def Tfile.unpack_init
30
+ soft = ""
31
+ if system("unzip").nil?
32
+ soft += "unzip "
33
+ elsif system("unrar").nil?
34
+ soft += "unrar "
35
+ elsif system("tar").nil?
36
+ soft += "tar "
37
+ end
38
+ unless soft.blank?
39
+ system("sudo apt-get install #{soft}")
40
+ end
41
+ end
42
+ #file unpack
43
+ #file->file path
44
+ #path->unpacked path
45
+ #return->true, false, nil. nil not cmd
46
+ def Tfile.unpack(file, path)
47
+ format = Tfile.file_format(file)
48
+ cmd = ""
49
+ if format==".gz" || format==".bz2" || format==".tar"
50
+ cmd="tar -zxvf #{file} -C #{path}"
51
+ elsif format==".zip"
52
+ cmd="unzip #{file} -d #{path}"
53
+ elsif format==".rar"
54
+ cmd="unrar e #{file} #{path}"
55
+ end
56
+ system cmd
57
+ end
58
+
28
59
  #validate file
29
60
  #params:file->file stream,rule->can upload file format,minsize<file's size<maxsize
30
61
  #return:{state: true} or return {state: false, message: "error message"}
31
- def Fileupload.rule_validata(file, rule, minsize, maxsize)
32
- rule_for = Fileupload.filename_validata(file, rule)
62
+ def Tfile.rule_validata(file, rule, minsize, maxsize)
63
+ rule_for = Tfile.filename_validata(file, rule)
33
64
  unless rule_for
34
65
  return {state: false, message: "错误:文件格式不对,只允许上传#{rule}格式!\\n"}
35
66
  end
@@ -42,15 +73,15 @@ module Struggle
42
73
  #validate file format
43
74
  #params: file-> file stream; rule-> validate rule ("jpg|xls")
44
75
  #return: validate result -> true | false
45
- def Fileupload.filename_validata(file, rule)
76
+ def Tfile.filename_validata(file, rule)
46
77
  !eval("/\.(#{rule})+$/").match(file.original_filename).blank?
47
78
  end
48
79
 
49
80
  #get new file's name
50
81
  #params:filestream->file stream file name,filepath->file save path
51
82
  #return:new file's name
52
- def Fileupload.getname(filestream, filepath)
53
- file_for = Fileupload.file_format(filestream.original_filename)
83
+ def Tfile.getname(filestream, filepath)
84
+ file_for = Tfile.file_format(filestream.original_filename)
54
85
  filename = Time.now.strftime("%Y%m%d%h%m%s")<<rand(99999).to_s<<file_for
55
86
  file = filepath+filename
56
87
  while File.exist?(file) do
@@ -63,17 +94,17 @@ module Struggle
63
94
  #get file format
64
95
  #params: filename->file's name
65
96
  #return: file format '.jpg','.exe'
66
- def Fileupload.file_format(filename)
97
+ def Tfile.file_format(filename)
67
98
  /\.[^\.]+$/.match(filename)[0]
68
99
  end
69
100
 
70
101
  #image upload
71
102
  #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
72
103
  #return: {state: true, result: "new filename"} or {state: false, result: "error message"}
73
- def Fileupload.imageupload(imgfile, filepath="", rule="jpg|jpeg", minsize=0, maxsize=2000, w=0, h=0)
74
- result = Fileupload.rule_validata(imgfile, rule, minsize, maxsize)
104
+ def Tfile.imageupload(imgfile, filepath="", rule="jpg|jpeg", minsize=0, maxsize=2000, w=0, h=0)
105
+ result = Tfile.rule_validata(imgfile, rule, minsize, maxsize)
75
106
  if result[:state]
76
- sname = Fileupload.getname(imgfile, filepath)
107
+ sname = Tfile.getname(imgfile, filepath)
77
108
  begin
78
109
  unless Dir::exist?(filepath)
79
110
  unless system("mkdir -p #{filepath}")
@@ -83,7 +114,7 @@ module Struggle
83
114
  File.open(filepath+sname, "wb") do |f|
84
115
  f.write(imgfile.read)
85
116
  end
86
- Fileupload.resize(filepath + sname, w, h)
117
+ Tfile.resize(filepath + sname, w, h)
87
118
  return {state: true, result: sname}
88
119
  rescue
89
120
  return {state: false, result: "写入图片失败:#{$!}"}
@@ -96,13 +127,13 @@ module Struggle
96
127
  #delete dir
97
128
  #params: dir-> dir path
98
129
  #return true or false
99
- def Fileupload.rmdir(dir)
130
+ def Tfile.rmdir(dir)
100
131
  system("rm -rf #{dir}")
101
132
  end
102
133
 
103
134
  #image resize
104
135
  #params: imagepath-> image file path; w-> new image width; h-> new image height
105
- def Fileupload.resize(imagepath, w, h)
136
+ def Tfile.resize(imagepath, w, h)
106
137
  img = Magick::Image.read(imagepath)[0]
107
138
  if w==0 || h==0
108
139
  w=img.columns
data/lib/struggle.rb CHANGED
@@ -5,7 +5,7 @@ begin
5
5
  rescue LoadError
6
6
  #do nothing
7
7
  end
8
- require 'struggle/fileupload'
8
+ require 'struggle/tfile'
9
9
  require 'struggle/func'
10
10
  require 'struggle/logistic'
11
11
  require 'struggle/pager'
data/struggle.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'struggle'
3
- s.version = '1.4.3'
4
- s.date = '2015-07-28'
3
+ s.version = '1.4.5'
4
+ s.date = '2015-07-31'
5
5
  s.summary = "struggle!"
6
- s.description = "vcode,fileupload,pager,func,logistic,pay_gateway,tmagick,html_extend;"
6
+ s.description = "vcode,tfile,pager,func,logistic,pay_gateway,tmagick,html_extend;"
7
7
  s.authors = ["lean"]
8
8
  s.email = '54850915@qq.com'
9
9
  s.files = `git ls-files`.split("\n")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: struggle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.3
4
+ version: 1.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - lean
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-28 00:00:00.000000000 Z
11
+ date: 2015-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iconv
@@ -38,7 +38,7 @@ dependencies:
38
38
  - - '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- description: vcode,fileupload,pager,func,logistic,pay_gateway,tmagick,html_extend;
41
+ description: vcode,tfile,pager,func,logistic,pay_gateway,tmagick,html_extend;
42
42
  email: 54850915@qq.com
43
43
  executables: []
44
44
  extensions: []
@@ -47,13 +47,13 @@ extra_rdoc_files:
47
47
  files:
48
48
  - README.md
49
49
  - lib/struggle.rb
50
- - lib/struggle/fileupload.rb
51
50
  - lib/struggle/func.rb
52
51
  - lib/struggle/html_extend.rb
53
52
  - lib/struggle/logistic.rb
54
53
  - lib/struggle/pager.rb
55
54
  - lib/struggle/pay_gateway.rb
56
55
  - lib/struggle/sms.rb
56
+ - lib/struggle/tfile.rb
57
57
  - lib/struggle/tmagick.rb
58
58
  - lib/struggle/vcode.rb
59
59
  - struggle.gemspec