Introduction
Introduction Statistics Contact Development Disclaimer Help
Merges in a patch to support multiple masks per job, fixes some minor bugs, sti…
Log
Files
Refs
README
---
commit 235e8064ff4e47777e2dd770ea7ee424ceece55b
parent c73e4d6004f5f7dc05796e73842ad117756b9d8c
Author: HD Moore <[email protected]>
Date: Tue, 31 Mar 2009 05:05:41 +0000
Merges in a patch to support multiple masks per job, fixes some minor bugs, sti…
Diffstat:
M lib/warvox/jobs/dialer.rb | 2 +-
M lib/warvox/phone.rb | 42 ++++++++++++++++++-----------…
M web/app/controllers/dial_jobs_cont… | 2 +-
M web/app/models/dial_job.rb | 2 +-
M web/app/views/dial_jobs/edit.html.… | 2 +-
M web/app/views/dial_jobs/index.html… | 2 +-
M web/app/views/dial_jobs/new.html.e… | 2 +-
7 files changed, 30 insertions(+), 24 deletions(-)
---
diff --git a/lib/warvox/jobs/dialer.rb b/lib/warvox/jobs/dialer.rb
@@ -90,7 +90,7 @@ class Dialer < Base
end
def start_dialing
- dest = File.join(WarVOX::Config.data_path, "#{@name}-#{@range}…
+ dest = File.join(WarVOX::Config.data_path, "#{@name}")
FileUtils.mkdir_p(dest)
@nums_total = @nums.length
diff --git a/lib/warvox/phone.rb b/lib/warvox/phone.rb
@@ -2,28 +2,34 @@ module WarVOX
class Phone
# Convert 123456XXXX to an array of expanded numbers
- def self.crack_mask(mask)
+ def self.crack_mask(masks)
res = {}
-
- incdigits = 0
- mask.each_char do |c|
- incdigits += 1 if c =~ /^[X#]$/i
- end
-
- max = (10**incdigits)-1
-
- (0..max).each do |num|
- number = mask.dup # copy the mask
- numstr = sprintf("%0#{incdigits}d", num) # stringify o…
- j = 0 # index for numstr
- for i in 0..number.length-1 do # step through the numb…
- if number[i].chr =~ /^[X#]$/i
- number[i] = numstr[j] # replaced maske…
- j += 1
+ masks.each do |mask|
+ mask = mask.strip
+ incdigits = 0
+ mask.each_char do |c|
+ incdigits += 1 if c =~ /^[X#]$/i
+ end
+
+ max = (10**incdigits)-1
+
+ (0..max).each do |num|
+ number = mask.dup # copy the mask
+ numstr = sprintf("%0#{incdigits}d", num) # str…
+ j = 0 # index for numstr
+ for i in 0..number.length-1 do # step through …
+ if number[i].chr =~ /^[X#]$/i
+ number[i] = numstr[j] # replac…
+ j += 1
+ end
end
+ res[number] = {}
end
- res[number] = {}
+
end
+ res.each { |key, value|
+ print "DEBUG: key=",key," -> ",value,"\n"
+ }
return res.keys.sort
end
diff --git a/web/app/controllers/dial_jobs_controller.rb b/web/app/controllers/…
@@ -70,7 +70,7 @@ class DialJobsController < ApplicationController
@dial_job.progress = 0
@dial_job.started_at = nil
@dial_job.completed_at = nil
- @dial_job.range.gsub!(/[^0-9X]/, '')
+ @dial_job.range.gsub!(/[^0-9X,\n]/, '')
@dial_job.cid_mask.gsub!(/[^0-9X]/, '') if @dial_job.cid_mask != "SELF"
respond_to do |format|
diff --git a/web/app/models/dial_job.rb b/web/app/models/dial_job.rb
@@ -6,7 +6,7 @@ class DialJob < ActiveRecord::Base
validates_numericality_of :seconds, :less_than => 301, :greater_than =…
def validate
- if(range.gsub(/[^0-9X]/, '').empty?)
+ if(range.gsub(/[^0-9X,\n]/, '').empty?)
errors.add(:range, "The range must be at least 1 chara…
end
diff --git a/web/app/views/dial_jobs/edit.html.erb b/web/app/views/dial_jobs/ed…
@@ -5,7 +5,7 @@
<p>
<%= f.label :range %><br />
- <%= f.text_field :range %>
+ <%= f.text_area :range, :size => "35x5" %>
</p>
<p>
<%= f.label :seconds %><br />
diff --git a/web/app/views/dial_jobs/index.html.erb b/web/app/views/dial_jobs/i…
@@ -78,7 +78,7 @@
<%= f.error_messages %>
<p>
<%= f.label :range, 'The target telephone range (1-123-456-XXXX)' %><br />
- <%= f.text_field :range %>
+ <%= f.text_area :range, :size => "35x5" %>
</p>
<p>
<%= f.label :seconds, 'Seconds of audio to capture' %><br />
diff --git a/web/app/views/dial_jobs/new.html.erb b/web/app/views/dial_jobs/new…
@@ -4,7 +4,7 @@
<%= f.error_messages %>
<p>
<%= f.label :range, 'The target telephone range (1-123-456-XXXX)' %><br />
- <%= f.text_field :range %>
+ <%= f.text_area :range, :size => "35x5" %>
</p>
<p>
<%= f.label :seconds, 'Seconds of audio to capture' %><br />
You are viewing proxied material from jay.scot. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.