Using created_at instead of legacy 'uploaddatetime' field
This commit is contained in:
parent
48ca75cb64
commit
3eeb9a63dc
6 changed files with 22 additions and 13 deletions
|
|
@ -2,7 +2,7 @@ class Screenshot < ActiveRecord::Base
|
||||||
belongs_to :package, :inverse_of=>:screenshots
|
belongs_to :package, :inverse_of=>:screenshots
|
||||||
|
|
||||||
default_scope {
|
default_scope {
|
||||||
order('uploaddatetime DESC')
|
order('created_at DESC')
|
||||||
}
|
}
|
||||||
|
|
||||||
has_attached_file :image,
|
has_attached_file :image,
|
||||||
|
|
@ -29,7 +29,11 @@ class Screenshot < ActiveRecord::Base
|
||||||
|
|
||||||
# Calculate how many days ago this screenshot has been uploaded
|
# Calculate how many days ago this screenshot has been uploaded
|
||||||
def age_days
|
def age_days
|
||||||
seconds = Time.now-self.uploaddatetime
|
if self.created_at
|
||||||
|
seconds = Time.now - self.created_at
|
||||||
|
else
|
||||||
|
seconds = 0
|
||||||
|
end
|
||||||
days = (seconds/86400).to_i
|
days = (seconds/86400).to_i
|
||||||
days ? "#{days} days ago" : 'today'
|
days ? "#{days} days ago" : 'today'
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
] Delete screenshot
|
] Delete screenshot
|
||||||
|
|
||||||
p Uploader IP=#{screenshot.uploaderip}
|
p Uploader IP=#{screenshot.uploaderip}
|
||||||
p Uploaded #{screenshot.age_days} (#{screenshot.uploaddatetime})
|
p Uploaded #{screenshot.age_days} (#{screenshot.created_at})
|
||||||
p Status: #{screenshot.status}
|
p Status: #{screenshot.status}
|
||||||
|
|
||||||
- else
|
- else
|
||||||
|
|
|
||||||
6
db/migrate/20160304140037_rename_uploaddatetime.rb
Normal file
6
db/migrate/20160304140037_rename_uploaddatetime.rb
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
class RenameUploaddatetime < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
remove_column :screenshots, :created_at
|
||||||
|
rename_column :screenshots, :uploaddatetime, :created_at
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 20160302135740) do
|
ActiveRecord::Schema.define(version: 20160304140037) do
|
||||||
|
|
||||||
# These are extensions that must be enabled in order to support this database
|
# These are extensions that must be enabled in order to support this database
|
||||||
enable_extension "plpgsql"
|
enable_extension "plpgsql"
|
||||||
|
|
@ -45,14 +45,13 @@ ActiveRecord::Schema.define(version: 20160302135740) do
|
||||||
create_table "screenshots", force: :cascade do |t|
|
create_table "screenshots", force: :cascade do |t|
|
||||||
t.integer "package_id"
|
t.integer "package_id"
|
||||||
t.string "version", limit: 50
|
t.string "version", limit: 50
|
||||||
t.datetime "uploaddatetime"
|
t.datetime "created_at"
|
||||||
t.string "uploaderhash", limit: 72
|
t.string "uploaderhash", limit: 72
|
||||||
t.string "uploaderip", limit: 15
|
t.string "uploaderip", limit: 15
|
||||||
t.boolean "approved"
|
t.boolean "approved"
|
||||||
t.boolean "markedfordelete"
|
t.boolean "markedfordelete"
|
||||||
t.string "delete_reason", limit: 100
|
t.string "delete_reason", limit: 100
|
||||||
t.string "description", limit: 40
|
t.string "description", limit: 40
|
||||||
t.datetime "created_at"
|
|
||||||
t.datetime "updated_at"
|
t.datetime "updated_at"
|
||||||
t.string "image_file_name"
|
t.string "image_file_name"
|
||||||
t.string "image_content_type"
|
t.string "image_content_type"
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ namespace :debshots do
|
||||||
|
|
||||||
loop do
|
loop do
|
||||||
destroyed = 0
|
destroyed = 0
|
||||||
Screenshot.select(:package_id, :image_fingerprint).group(:package_id, :image_fingerprint, :uploaddatetime).having("count(*) > 1").each do |ss|
|
Screenshot.select(:package_id, :image_fingerprint).group(:package_id, :image_fingerprint, :created_at).having("count(*) > 1").each do |ss|
|
||||||
# Look again for screenshots of this fingerprint.
|
# Look again for screenshots of this fingerprint.
|
||||||
# This extra step may seem stupid but the above query lead to package_id=NULL results sometimes.
|
# This extra step may seem stupid but the above query lead to package_id=NULL results sometimes.
|
||||||
del = Screenshot.find_by(image_fingerprint: ss.image_fingerprint)
|
del = Screenshot.find_by(image_fingerprint: ss.image_fingerprint)
|
||||||
|
|
|
||||||
12
test/fixtures/screenshots.yml
vendored
12
test/fixtures/screenshots.yml
vendored
|
|
@ -2,20 +2,20 @@
|
||||||
|
|
||||||
# one:
|
# one:
|
||||||
# version: MyString
|
# version: MyString
|
||||||
# uploaddatetime: 2013-07-27 13:29:55
|
# created_at: 2013-07-27 13:29:55
|
||||||
# uploaderhash: MyString
|
# uploaderhash: MyString
|
||||||
# uploaderip: MyString
|
# uploaderip: MyString
|
||||||
# approved:
|
# approved:
|
||||||
# markedfordelete:
|
# markedfordelete:
|
||||||
# delete_reason: MyString
|
# delete_reason: MyString
|
||||||
# description: MyString
|
# description: MyString
|
||||||
|
|
||||||
# two:
|
# two:
|
||||||
# version: MyString
|
# version: MyString
|
||||||
# uploaddatetime: 2013-07-27 13:29:55
|
# created_at: 2013-07-27 13:29:55
|
||||||
# uploaderhash: MyString
|
# uploaderhash: MyString
|
||||||
# uploaderip: MyString
|
# uploaderip: MyString
|
||||||
# approved:
|
# approved:
|
||||||
# markedfordelete:
|
# markedfordelete:
|
||||||
# delete_reason: MyString
|
# delete_reason: MyString
|
||||||
# description: MyString
|
# description: MyString
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue