mobilepronto 0.2.0 → 0.3.0

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.
@@ -0,0 +1,19 @@
1
+ # encoding: UTF-8
2
+
3
+ class MobilePronto
4
+ class Abbreviation
5
+ class << self
6
+ def abbr(name, limit = nil)
7
+ limit ||= name.size
8
+ words = name.to_s.split(' ')
9
+ name = [words.shift]
10
+
11
+ while(words.size > 0 && (name + words).join(' ').size > limit) do
12
+ name << "#{words.shift[0.1]}."
13
+ end
14
+
15
+ name.concat(words).join(' ')
16
+ end
17
+ end
18
+ end
19
+ end
@@ -41,8 +41,21 @@ class MobilePronto
41
41
  }
42
42
 
43
43
  params.symbolize_keys!
44
- if params.delete(:transliterate) and params.include?(:message)
45
- params[:message] = ActiveSupport::Inflector.transliterate(params[:message])
44
+
45
+ if params.include?(:message)
46
+ if params.delete(:transliterate)
47
+ params[:message] = ActiveSupport::Inflector.transliterate(params[:message])
48
+ end
49
+
50
+ limit = 160
51
+ limit = limit - ((params[:project_name] || "" ).size + 1) if params[:send_project]
52
+
53
+ msg = /(.*)\[abbr\](.*)\[\/abbr\](.*)/.match(params[:message])
54
+ if msg and msg[1..3].join('').size > limit
55
+ size = limit - (msg[1..3].join('').size - msg[2].size)
56
+ abbr = Abbreviation.abbr(msg[2], size)
57
+ params[:message] = "#{msg[1]}#{abbr}#{msg[3]}"
58
+ end
46
59
  end
47
60
 
48
61
  unless params[:send_project].nil?
data/lib/mobilepronto.rb CHANGED
@@ -10,6 +10,7 @@ require File.dirname(__FILE__) + '/mobilepronto/version'
10
10
  require File.dirname(__FILE__) + '/mobilepronto/errors'
11
11
  require File.dirname(__FILE__) + '/mobilepronto/result'
12
12
  require File.dirname(__FILE__) + '/mobilepronto/basic'
13
+ require File.dirname(__FILE__) + '/mobilepronto/abbreviation'
13
14
 
14
15
  class MobilePronto
15
16
  extend Basic
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mobilepronto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-01-31 00:00:00.000000000Z
12
+ date: 2012-02-03 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
- requirement: &70361245438880 !ruby/object:Gem::Requirement
16
+ requirement: &70172996081160 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70361245438880
24
+ version_requirements: *70172996081160
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: webmock
27
- requirement: &70361245438380 !ruby/object:Gem::Requirement
27
+ requirement: &70172996061580 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70361245438380
35
+ version_requirements: *70172996061580
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: minitest
38
- requirement: &70361245437960 !ruby/object:Gem::Requirement
38
+ requirement: &70172996051360 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70361245437960
46
+ version_requirements: *70172996051360
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: step-up
49
- requirement: &70361245437460 !ruby/object:Gem::Requirement
49
+ requirement: &70172996047020 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,13 +54,14 @@ dependencies:
54
54
  version: 0.7.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70361245437460
57
+ version_requirements: *70172996047020
58
58
  description:
59
59
  email: nuxlli@gmail.com.br
60
60
  executables: []
61
61
  extensions: []
62
62
  extra_rdoc_files: []
63
63
  files:
64
+ - lib/mobilepronto/abbreviation.rb
64
65
  - lib/mobilepronto/basic.rb
65
66
  - lib/mobilepronto/errors.rb
66
67
  - lib/mobilepronto/result.rb