wco_models 3.1.0.155 → 3.1.0.157

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7087d1bed892c6923940fc6d1c8ba234ad9e9773e490e4bce6d92808625ad211
4
- data.tar.gz: f88b3cb63acf8f2253156ec1fd45b53d1ff6e9d14886a19233142e7e026efc0d
3
+ metadata.gz: f1d7c8e819f70c838d7784f3c628844e554e86f33b473c78db9552d7a1fbd7b0
4
+ data.tar.gz: 513a0bcd49ce21e5bdf59c776d97656969b39783d2cb54e946642ca7f0ef6aba
5
5
  SHA512:
6
- metadata.gz: da0b670caac9e737d49dbbf02633554617cd18c9abdc8def6dc8b65ad20e62038aa984e01f010bed84a2efa1b06b9e31db609acb418d9587b7681d071026813b
7
- data.tar.gz: a828cddbe1e4662d249167c24ec8e5c0abf29beb1811deb3c780c10e013b148004884ea9a5fa30ac4756d823ab8bb26b712ea5ec64cc97587b95cb165fb94339
6
+ metadata.gz: a03e9edbd32ffc5a3844fab246ea8aca3c3b88a206b2aebb65d9b92ab6162cee11bd66d94e54e35503701e0b705578079fb0886e45ab1cc1140826de6725f6c9
7
+ data.tar.gz: 0ebd890f1f25d37bf40395098185f532d50e0e566e65fffadc9f6e41861ada1e33e388c53b08eebb6f2334ac75209063c881d2de1ac1b0d71a22a79d55dad17f
@@ -188,6 +188,16 @@ textarea.monospace {
188
188
  width: calc( 100% - 1em );
189
189
  }
190
190
 
191
+ /* R */
192
+
193
+ label.required {
194
+ &:after {
195
+ content: ' *';
196
+ color: red;
197
+ }
198
+ }
199
+
200
+
191
201
  /* S */
192
202
  .spacer-small {
193
203
  height: 20px;
@@ -56,32 +56,13 @@ class Wco::InvoicesController < Wco::ApplicationController
56
56
  @invoice = Wco::Invoice.new params[:invoice].permit!
57
57
  authorize! :create, @invoice
58
58
 
59
- stripe_invoice = Stripe::Invoice.create({
60
- customer: @invoice.leadset.customer_id,
61
- collection_method: 'send_invoice',
62
- days_until_due: 0,
63
- # collection_method: 'charge_automatically',
64
- pending_invoice_items_behavior: 'exclude',
65
- })
66
- params[:invoice][:items].each do |item|
67
- stripe_price = Wco::Price.find( item[:price_id] ).price_id
68
- puts! stripe_price, 'stripe_price'
69
- invoice_item = Stripe::InvoiceItem.create({
70
- customer: @invoice.leadset.customer_id,
71
- price: stripe_price,
72
- invoice: stripe_invoice.id,
73
- quantity: item[:quantity],
74
- })
75
- end
76
- Stripe::Invoice.finalize_invoice( stripe_invoice[:id] )
77
- if params[:do_send]
78
- Stripe::Invoice.send_invoice(stripe_invoice[:id])
79
- flash_notice "Scheduled to send the invoice via stripe."
80
- end
81
- @invoice.update_attributes({ invoice_id: stripe_invoice[:id] })
82
-
83
59
  if @invoice.save
84
60
  flash_notice "Created the invoice."
61
+
62
+ if params[:do_send]
63
+ Stripe::Invoice.send_invoice(@invoice[:invoice_id])
64
+ end
65
+
85
66
  redirect_to action: :show, id: @invoice.id
86
67
  else
87
68
  flash_alert "Cannot create invoice: #{@invoice.errors.messages}"
@@ -1,14 +1,23 @@
1
1
 
2
2
  class Wco::LeadsController < Wco::ApplicationController
3
-
4
3
  before_action :set_lists
5
4
 
6
5
  def create
7
- params[:lead][:tags].delete ''
8
- params[:lead][:leadset] = nil if params[:lead][:leadset].blank?
6
+ params[:lead][:tag_ids]&.delete ''
7
+ params[:lead].delete :leadset_id if params[:lead][:leadset_id].blank?
9
8
 
10
9
  @lead = Wco::Lead.new params[:lead].permit!
11
10
  authorize! :create, @lead
11
+
12
+ if params[:lead][:photo]
13
+ photo = Wco::Photo.new photo: params[:lead][:photo]
14
+ photo.is_public = true
15
+ if photo.save
16
+ @lead.photo = photo
17
+ end
18
+ params[:lead].delete :photo
19
+ end
20
+
12
21
  if @lead.save
13
22
  flash_notice 'ok'
14
23
  else
@@ -26,8 +35,6 @@ class Wco::LeadsController < Wco::ApplicationController
26
35
  authorize! :index, Wco::Lead
27
36
  @leads = Wco::Lead.all
28
37
 
29
-
30
-
31
38
  if params[:q].present?
32
39
  q = params[:q].downcase
33
40
  @leads = @leads.any_of(
@@ -41,19 +48,6 @@ class Wco::LeadsController < Wco::ApplicationController
41
48
  end
42
49
  end
43
50
 
44
- # if params[:q_tag_ids].present?
45
- # carry = nil
46
- # params[:q_tag_ids].each do |term_id|
47
- # lts = LeadTag.where({ term_id: term_id }).map(&:lead_id)
48
- # if carry
49
- # carry = carry & lts
50
- # else
51
- # carry = lts
52
- # end
53
- # end
54
- # @leads = Lead.where({ :id.in => carry })
55
- # end
56
-
57
51
  @leads = @leads.page( params[:leads_page ] ).per( current_profile.per_page )
58
52
  end
59
53
 
@@ -77,11 +71,21 @@ class Wco::LeadsController < Wco::ApplicationController
77
71
  end
78
72
 
79
73
  def update
80
- params[:lead][:tags].delete ''
81
- params[:lead].delete :leadset if params[:lead][:leadset].blank?
74
+ params[:lead][:tag_ids]&.delete ''
75
+ params[:lead].delete :leadset_id if params[:lead][:leadset_id].blank?
82
76
 
83
77
  @lead = Wco::Lead.find params[:id]
84
78
  authorize! :update, @lead
79
+
80
+ if params[:lead][:photo]
81
+ photo = Wco::Photo.new photo: params[:lead][:photo]
82
+ photo.is_public = true
83
+ if photo.save
84
+ @lead.photo = photo
85
+ end
86
+ params[:lead].delete :photo
87
+ end
88
+
85
89
  if @lead.update params[:lead].permit!
86
90
  flash_notice 'ok'
87
91
  else
@@ -14,6 +14,8 @@ class Wco::Invoice
14
14
  include Mongoid::Paranoia
15
15
  store_in collection: 'ish_invoice'
16
16
 
17
+ attr_accessor :is_stripe
18
+
17
19
  field :email, type: String
18
20
 
19
21
  field :invoice_id, type: String # stripe
@@ -35,7 +37,29 @@ class Wco::Invoice
35
37
  field :description, type: String
36
38
  field :items, type: Array # used by stripe
37
39
 
38
-
40
+ before_validation :create_stripe, on: :create
41
+ def create_stripe
42
+ if is_stripe
43
+ stripe_invoice = Stripe::Invoice.create({
44
+ customer: leadset.customer_id,
45
+ collection_method: 'send_invoice',
46
+ days_until_due: 0,
47
+ # collection_method: 'charge_automatically',
48
+ pending_invoice_items_behavior: 'exclude',
49
+ })
50
+ items.each do |item|
51
+ stripe_price = Wco::Price.find( item[:price_id] ).price_id
52
+ invoice_item = Stripe::InvoiceItem.create({
53
+ customer: leadset.customer_id,
54
+ price: stripe_price,
55
+ invoice: stripe_invoice.id,
56
+ quantity: item[:quantity],
57
+ })
58
+ end
59
+ Stripe::Invoice.finalize_invoice( stripe_invoice[:id] )
60
+ self.invoice_id = stripe_invoice[:id]
61
+ end
62
+ end
39
63
 
40
64
  ## Prawn/pdf unit of measure is 1/72"
41
65
  ## Canvas width: 612, height: 792
@@ -0,0 +1,257 @@
1
+
2
+ # require 'ish/premium_item'
3
+ require 'ish/utils'
4
+
5
+ class WcoGame::Location
6
+ include Mongoid::Document
7
+ include Mongoid::Timestamps
8
+ # include Ish::PremiumItem
9
+ include Mongoid::Paranoia
10
+ include Wco::Utils
11
+ store_in collection: 'gameui_maps'
12
+
13
+ field :name
14
+
15
+ field :newsitems_page_size, default: 25
16
+
17
+ field :slug
18
+ validates :slug, uniqueness: true, presence: true
19
+
20
+ field :description
21
+
22
+ has_many :markers, :class_name => '::Gameui::Marker', inverse_of: :map
23
+ has_many :from_markers, :class_name => '::Gameui::Marker', inverse_of: :destination
24
+
25
+ has_many :newsitems, inverse_of: :map, order: :created_at.desc
26
+
27
+ # @TODO: remove field, replace with relation. _vp_ 2022-09-13
28
+ field :parent_slug
29
+ belongs_to :parent, class_name: '::Gameui::Map', inverse_of: :childs, optional: true
30
+ has_many :childs, class_name: '::Gameui::Map', inverse_of: :parent
31
+
32
+ has_one :image, class_name: '::Ish::ImageAsset', inverse_of: :location
33
+ belongs_to :creator_profile, class_name: '::Ish::UserProfile', inverse_of: :my_maps
34
+
35
+ has_and_belongs_to_many :bookmarked_profiles, class_name: '::Ish::UserProfile', inverse_of: :bookmarked_location
36
+
37
+ # shareable, nonpublic
38
+ field :is_public, type: Boolean, default: true
39
+ scope :public, ->{ where( is_public: true ) }
40
+ has_and_belongs_to_many :shared_profiles, :class_name => 'Ish::UserProfile', :inverse_of => :shared_locations
41
+
42
+ field :version, type: String, default: '0.0.0'
43
+
44
+ ## @TODO: or self, right? and refactor this, seems N+1. _vp_ 2022-09-13
45
+ field :map_slug
46
+ def map
47
+ ::Gameui::Map.where( slug: map_slug ).first
48
+ end
49
+
50
+ RATED_OPTIONS = [ 'pg-13', 'r', 'nc-17' ]
51
+ field :rated, default: 'pg-13' # 'r', 'nc-17'
52
+
53
+ ## Possible keys: description, map, markers, newsitems,
54
+ field :labels, type: Object, default: <<~AOL
55
+ { "description":"Description", "map":"Map", "markers":"Markers", "newsitems":"Newsitems"
56
+ }
57
+ AOL
58
+
59
+ ## Possible keys:
60
+ ## config.description.collapsible
61
+ field :config, type: Object, default: <<~AOL
62
+ { "map_panel_type": "ThreePanelV1",
63
+ "studio": { "hasFloor": true, "studioLength": 2500, "studioWidth": 2500 }
64
+ }
65
+ AOL
66
+
67
+ # @deprecated, dont use!
68
+ field :img_path
69
+
70
+ ## Not used! See config.map_panel_type instead.
71
+ # MAP_TYPES = [ :map_2d, :map_3d, :map_geospatial, :map_gallery, :map_toc ] ## Mostly not implemented. _vp_ 2022-09-06
72
+ # field :map_type, default: :map_2d
73
+
74
+ ## Make sure to use x,y,z and w,h as appropriate.
75
+ ## @TODO: abstract this into a module
76
+ field :x, type: Float
77
+ field :y, type: Float
78
+ field :z, type: Float
79
+
80
+ ## Make sure to use x,y,z and w,h as appropriate.
81
+ field :w, type: Integer
82
+ validates :w, presence: true
83
+ field :h, type: Integer
84
+ validates :h, presence: true
85
+ # @TODO: this is shared between map and marker, move to a concern.
86
+ before_validation :compute_w_h
87
+ def compute_w_h
88
+ return if !image ## @TODO: test this
89
+
90
+ begin
91
+ geo = Paperclip::Geometry.from_file(Paperclip.io_adapters.for(image.image))
92
+ self.w = geo.width
93
+ self.h = geo.height
94
+ rescue Paperclip::Errors::NotIdentifiedByImageMagickError => e
95
+ puts! e, 'Could not #compute_w_h'
96
+ # @TODO: do something with this
97
+ end
98
+ end
99
+
100
+ ORDERING_TYPE_ALPHABETIC = 'alphabetic'
101
+ ORDERING_TYPE_CUSTOM = 'custom'
102
+ ORDERING_TYPE_TIMESTAMP = 'timestamp'
103
+ ORDERING_TYPES = [ ORDERING_TYPE_ALPHABETIC, ORDERING_TYPE_CUSTOM, ORDERING_TYPE_TIMESTAMP ]
104
+ field :ordering_type, type: String, default: 'custom' # timestamp, alphabetic, custom
105
+ validates :ordering_type, presence: true
106
+
107
+ def self.list conditions = { is_trash: false }
108
+ out = self.order_by( created_at: :desc )
109
+ [[nil, nil]] + out.map { |item| [ item.name, item.id.to_s ] }
110
+ end
111
+
112
+ def breadcrumbs
113
+ out = [{ name: self.name, slug: self.slug, link: false }]
114
+ p = self.parent
115
+ while p
116
+ out.push({ name: p.name, slug: p.slug })
117
+ p = p.parent
118
+ end
119
+ out.reverse
120
+ end
121
+
122
+ ##
123
+ ## @TODO: move the export func, below, to a module. _vp_ 2022-09-20
124
+ ##
125
+
126
+ def empty_export
127
+ return {
128
+ galleries: {},
129
+ image_assets: {},
130
+ maps: {}, markers: {},
131
+ newsitems: {},
132
+ photos: {}, profiles: {},
133
+ reports: {},
134
+ videos: {},
135
+ }
136
+ end
137
+ def self.empty_export; Gameui::Map.new.empty_export; end
138
+
139
+ def empty_export_arr
140
+ return {
141
+ galleries: [],
142
+ image_assets: [],
143
+ maps: [], markers: [],
144
+ newsitems: [],
145
+ photos: [], profiles: [],
146
+ reports: [],
147
+ videos: [],
148
+ }
149
+ end
150
+
151
+ def export_key_to_class
152
+ return {
153
+ galleries: 'Gallery',
154
+ image_assets: 'Ish::ImageAsset',
155
+ maps: 'Gameui::Map',
156
+ markers: 'Gameui::Marker',
157
+ newsitems: 'Newsitem',
158
+ photos: 'Photo',
159
+ profiles: 'Ish::UserProfile',
160
+ reports: 'Report',
161
+ videos: 'Video',
162
+ # 'galleries' => 'Gallery',
163
+ # 'image_assets' => 'Ish::ImageAsset',
164
+ # 'maps' => 'Gameui::Map',
165
+ # 'markers' => 'Gameui::Marker',
166
+ # 'newsitems' => 'Newsitem',
167
+ # 'photos' => 'Photo',
168
+ # 'profiles' => 'Ish::UserProfile',
169
+ # 'reports' => 'Report',
170
+ # 'videos' => 'Video',
171
+ }.with_indifferent_access
172
+ end
173
+ def self.export_key_to_class
174
+ Map.new.export_key_to_class
175
+ end
176
+
177
+ def export_fields
178
+ %w|
179
+ creator_profile_id config
180
+ deleted_at description
181
+ h
182
+ is_public
183
+ labels
184
+ map_slug
185
+ name
186
+ ordering_type
187
+ parent_slug
188
+ rated
189
+ slug
190
+ version
191
+ w
192
+ |
193
+ end
194
+
195
+ ## This is the starting point _vp_ 2022-03-12
196
+ ##
197
+ def export_subtree
198
+ collected = collect(empty_export)
199
+ exportable = empty_export_arr
200
+ collected.map do |k, v|
201
+ if v.present?
202
+ v.map do |id|
203
+ id = id[0]
204
+ item = export_key_to_class[k].constantize.unscoped.find id
205
+ export = item.export
206
+ exportable[k].push( export )
207
+ end
208
+ end
209
+ end
210
+ JSON.pretty_generate exportable
211
+ end
212
+
213
+ def collect export_object
214
+ map = self
215
+ export_object[:maps][map.id.to_s] = map.id.to_s
216
+
217
+ if map.markers.present?
218
+ map.markers.map do |marker|
219
+ id = marker.id.to_s
220
+ if !export_object[:markers][id]
221
+ marker.collect( export_object )
222
+ end
223
+ export_object[:markers][id] = id
224
+ end
225
+ end
226
+
227
+ if map.newsitems.present?
228
+ map.newsitems.map do |newsitem|
229
+ id = newsitem.id.to_s
230
+ export_object[:newsitems][id] = id
231
+ newsitem.collect export_object
232
+ end
233
+ end
234
+
235
+ ## @TODO: maybe implement this later, maybe not. _vp_ 2022-03-12
236
+ # if map.childs.present?
237
+ # export_object[:maps].push( map.childs.map &:id )
238
+ # map.childs.map do |child|
239
+ # child.collect export_object
240
+ # end
241
+ # end
242
+
243
+ if map.creator_profile.present?
244
+ export_object[:profiles][map.creator_profile.id.to_s] = map.creator_profile.id.to_s
245
+ end
246
+
247
+ if map.image.present?
248
+ export_object[:image_assets][map.image.id.to_s] = map.image.id.to_s
249
+ end
250
+
251
+ export_object
252
+ end
253
+
254
+ ## endExport
255
+
256
+
257
+ end
@@ -0,0 +1,9 @@
1
+
2
+ class WcoGame::Marker
3
+ include Mongoid::Document
4
+ include Mongoid::Timestamps
5
+ include Mongoid::Paranoia
6
+ include Wco::Utils
7
+ store_in collection: 'gameui_markers'
8
+
9
+ end
@@ -6,8 +6,9 @@
6
6
  = f.text_field :name
7
7
 
8
8
  .field
9
- = f.label :email
10
- = f.text_field :email
9
+ %label.required Email
10
+ = f.text_field :email, required: true
11
+ .small.gray Required to create a leadset
11
12
 
12
13
  .field
13
14
  = f.label :phone
@@ -19,7 +20,7 @@
19
20
 
20
21
  .field
21
22
  = f.label "Leadset (company)"
22
- = f.select :leadset, options_for_select(@leadsets_list, selected: lead.leadset_id), {}, { class: :select2 }
23
+ = f.select :leadset_id, options_for_select(@leadsets_list, selected: lead.leadset_id), {}, { class: :select2 }
23
24
 
24
25
  -# .field
25
26
  -# %label Rating
@@ -31,10 +32,10 @@
31
32
 
32
33
  .field
33
34
  = f.label "Tags"
34
- = f.select :tags, options_for_select(@tags_list, selected: lead.tag_ids ), {}, { class: :select2, multiple: true }
35
+ = f.select :tag_ids, options_for_select(@tags_list, selected: lead.tag_ids ), {}, { class: :select2, multiple: true }
35
36
 
36
37
  .field
37
- = f.label :photo
38
+ %label Photo
38
39
  = f.file_field :photo
39
40
 
40
41
  .actions
@@ -0,0 +1,16 @@
1
+
2
+ %ul.leads--list
3
+ - leads.each do |lead|
4
+ %li.item
5
+ = image_tag lead.photo.photo.url(:thumb)
6
+ = link_to lead, lead_path(lead)
7
+ = link_to '[~]', edit_lead_path(lead)
8
+
9
+ -# \(#{lead.scheduled_email_actions.length} sch
10
+ -# %span.expand-next [+]
11
+ -# .expand-hide= render 'ish_manager/scheduled_actions/form_mini'
12
+ -# \)
13
+
14
+ - if defined?( wco_email )
15
+ %span.expand-next [reply]
16
+ .expand-hide= render '/wco_email/contexts/form_reply_mini', lead: lead
@@ -39,7 +39,7 @@
39
39
  = link_to '[~]', edit_lead_path( lead )
40
40
  = link_to "#{lead.name} <#{lead.email}>", lead_path( lead )
41
41
  %td
42
- = image_tag lead.photo.url(:thumb) if lead.photo
42
+ = image_tag lead.photo.photo.url(:thumb) if lead.photo
43
43
  %td.company
44
44
  = lead.leadset.company_url
45
45
  %td
@@ -14,4 +14,4 @@
14
14
  (#{@leads.length})
15
15
  = link_to raw("<i class='fa fa-plus-square'></i>"), new_lead_path
16
16
 
17
- = render 'index', leads: @leads, search_path: leads_path
17
+ = render '/wco/leads/table', leads: @leads, search_path: leads_path
@@ -22,16 +22,16 @@
22
22
  %li Address: #{@lead.address}
23
23
  -# - if @lead.comment
24
24
  -# %li Comment: #{raw @lead.comment}
25
- - if @lead.photo
26
- %li
27
- = image_tag Photo.find( @lead.photo_id ).photo.url(:small)
28
25
 
29
26
  .col-md-6
27
+ - if @lead.photo
28
+ = image_tag @lead.photo.photo.url(:thumb2)
29
+
30
30
  %h5 Tags
31
31
  %ul
32
32
  - @lead.tags.each do |tag|
33
33
  %li
34
- = link_to tag.name, tag_path(tag)
34
+ = link_to tag, tag_path(tag)
35
35
 
36
36
  .row
37
37
  .col-md-6.ctxs
@@ -10,4 +10,5 @@
10
10
  <b>N reports:</b> #{tag.reports.length}
11
11
  <b>N videos:</b> #{tag.videos.length}
12
12
  <b>N stubs:</b> #{tag.message_stubs.length}
13
+ <b>N leads:</b> #{tag.leads.length}
13
14
  <b>N logs:</b> #{tag.logs.length}
@@ -1,7 +1,7 @@
1
1
 
2
2
  .tags-index.maxwidth
3
3
  .header
4
- %h5.title Tags
4
+ %h5.title Tags (#{@tags.length})
5
5
 
6
6
  = render 'index', tags: @tags
7
7
 
@@ -14,12 +14,17 @@
14
14
  <b>Message Stubs (#{@tag.message_stubs.length}):&nbsp;</b>
15
15
  = render '/wco_email/message_stubs/index', stubs: @tag.message_stubs
16
16
 
17
+ %li.d-flex
18
+ <b>Galleries (#{@galleries.length}):&nbsp;</b>
19
+ = render 'wco/galleries/index', galleries: @galleries, config: { skip_tags: true }
17
20
  %li.d-flex
18
21
  <b>Headlines (#{@tag.headlines.length}):&nbsp;</b>
19
22
  = render '/wco/headlines/index', headlines: @tag.headlines
23
+
20
24
  %li.d-flex
21
- <b>Galleries (#{@galleries.length}):&nbsp;</b>
22
- = render 'wco/galleries/index', galleries: @galleries, config: { skip_tags: true }
25
+ <b>Leads (#{@tag.leads.length}):&nbsp;</b>
26
+ = render 'wco/leads/list', leads: @tag.leads
27
+
23
28
  %li.d-flex
24
29
  <b>Reports (#{@reports.length}):&nbsp;</b>
25
30
  = render 'wco/reports/index', reports: @reports, config: { skip_tags: true }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wco_models
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0.155
4
+ version: 3.1.0.157
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Pudeyev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-25 00:00:00.000000000 Z
11
+ date: 2024-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-s3
@@ -473,6 +473,8 @@ files:
473
473
  - app/models/wco_email/message_stub.rb
474
474
  - app/models/wco_email/obfuscated_redirect.rb
475
475
  - app/models/wco_email/unsubscribe.rb
476
+ - app/models/wco_game/location.rb
477
+ - app/models/wco_game/marker.rb
476
478
  - app/models/wco_hosting/appliance.rb
477
479
  - app/models/wco_hosting/appliance_tmpl.rb
478
480
  - app/models/wco_hosting/domain.rb
@@ -529,8 +531,8 @@ files:
529
531
  - app/views/wco/leads/_form.haml
530
532
  - app/views/wco/leads/_form_import.haml
531
533
  - app/views/wco/leads/_header.haml
532
- - app/views/wco/leads/_index.haml
533
- - app/views/wco/leads/_index_rows.haml
534
+ - app/views/wco/leads/_list.haml
535
+ - app/views/wco/leads/_table.haml
534
536
  - app/views/wco/leads/edit.haml
535
537
  - app/views/wco/leads/index.haml
536
538
  - app/views/wco/leads/new.haml
@@ -561,7 +563,7 @@ files:
561
563
  - app/views/wco/office_actions/index.haml
562
564
  - app/views/wco/office_actions/new.haml
563
565
  - app/views/wco/office_actions/show.haml
564
- - app/views/wco/photos/_form.haml
566
+ - app/views/wco/photos/_form.haml-trash
565
567
  - app/views/wco/photos/_index_thumbs.haml
566
568
  - app/views/wco/photos/_meta.haml
567
569
  - app/views/wco/photos/_meta_manager.haml
@@ -1,11 +0,0 @@
1
-
2
- .leads--index-rows
3
- - leads.each do |lead|
4
- .item
5
- = link_to lead.email, lead_path(lead)
6
- \(#{lead.scheduled_email_actions.length} sch
7
- %span.expand-next [+]
8
- .expand-hide= render 'ish_manager/scheduled_actions/form_mini'
9
- \)
10
- %span.expand-next [reply]
11
- .expand-hide= render 'ish_manager/email_contexts/form_reply', lead: lead