Skip to content

Commit

Permalink
fix the upcoming logger
Browse files Browse the repository at this point in the history
  • Loading branch information
andey committed May 17, 2015
1 parent 44931b9 commit a5be664
Show file tree
Hide file tree
Showing 3 changed files with 112 additions and 96 deletions.
6 changes: 6 additions & 0 deletions db/migrate/20150517013830_add_wikipedia_to_upcomings.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
class AddWikipediaToUpcomings < ActiveRecord::Migration
def change
add_column :upcomings, :wikipedia, :string
add_column :upcomings, :name, :string
end
end
182 changes: 92 additions & 90 deletions db/schema.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,19 @@
#
# It's strongly recommended that you check this file into your version control system.

ActiveRecord::Schema.define(version: 20140405031313) do
ActiveRecord::Schema.define(version: 20150517013830) do

# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
enable_extension "hstore"

create_table "active_admin_comments", force: true do |t|
t.string "namespace"
create_table "active_admin_comments", force: :cascade do |t|
t.string "namespace", limit: 255
t.text "body"
t.string "resource_id", null: false
t.string "resource_type", null: false
t.string "resource_id", limit: 255, null: false
t.string "resource_type", limit: 255, null: false
t.integer "author_id"
t.string "author_type"
t.string "author_type", limit: 255
t.datetime "created_at"
t.datetime "updated_at"
end
Expand All @@ -32,49 +32,49 @@
add_index "active_admin_comments", ["namespace"], name: "index_active_admin_comments_on_namespace", using: :btree
add_index "active_admin_comments", ["resource_type", "resource_id"], name: "index_active_admin_comments_on_resource_type_and_resource_id", using: :btree

create_table "admin_users", force: true do |t|
t.string "email", default: "", null: false
t.string "encrypted_password", default: "", null: false
t.string "reset_password_token"
create_table "admin_users", force: :cascade do |t|
t.string "email", limit: 255, default: "", null: false
t.string "encrypted_password", limit: 255, default: "", null: false
t.string "reset_password_token", limit: 255
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer "sign_in_count", default: 0, null: false
t.integer "sign_in_count", default: 0, null: false
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string "current_sign_in_ip"
t.string "last_sign_in_ip"
t.string "current_sign_in_ip", limit: 255
t.string "last_sign_in_ip", limit: 255
t.datetime "created_at"
t.datetime "updated_at"
end

add_index "admin_users", ["email"], name: "index_admin_users_on_email", unique: true, using: :btree
add_index "admin_users", ["reset_password_token"], name: "index_admin_users_on_reset_password_token", unique: true, using: :btree

create_table "amas", force: true do |t|
t.string "key", null: false
t.datetime "date", null: false
t.string "title", null: false
create_table "amas", force: :cascade do |t|
t.string "key", limit: 255, null: false
t.datetime "date", null: false
t.string "title", limit: 255, null: false
t.text "content"
t.integer "karma", default: 0
t.integer "user_id", null: false
t.string "permalink"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "comments", default: 0
t.integer "responses", default: 0
t.integer "karma", default: 0
t.integer "user_id", null: false
t.string "permalink", limit: 255
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "comments", default: 0
t.integer "responses", default: 0
end

add_index "amas", ["date"], name: "index_amas_on_date", using: :btree
add_index "amas", ["key"], name: "index_amas_on_key", unique: true, using: :btree

create_table "amas_users", id: false, force: true do |t|
create_table "amas_users", id: false, force: :cascade do |t|
t.integer "ama_id"
t.integer "user_id"
end

add_index "amas_users", ["ama_id", "user_id"], name: "index_amas_users_on_ama_id_and_user_id", unique: true, using: :btree

create_table "archives", force: true do |t|
create_table "archives", force: :cascade do |t|
t.integer "ama_id"
t.datetime "created_at"
t.datetime "updated_at"
Expand All @@ -83,18 +83,18 @@

add_index "archives", ["ama_id"], name: "index_archives_on_ama_id", using: :btree

create_table "comments", force: true do |t|
t.integer "ama_id", null: false
t.string "key", null: false
t.integer "user_id", null: false
create_table "comments", force: :cascade do |t|
t.integer "ama_id", null: false
t.string "key", limit: 255, null: false
t.integer "user_id", null: false
t.text "content"
t.string "parent_key", null: false
t.datetime "date", null: false
t.integer "karma", default: 0
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.boolean "relevant", default: false
t.boolean "relevant_child", default: false
t.string "parent_key", limit: 255, null: false
t.datetime "date", null: false
t.integer "karma", default: 0
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.boolean "relevant", default: false
t.boolean "relevant_child", default: false
end

add_index "comments", ["ama_id"], name: "index_comments_on_ama_id", using: :btree
Expand All @@ -103,114 +103,116 @@
add_index "comments", ["relevant"], name: "index_comments_on_relevant", using: :btree
add_index "comments", ["user_id"], name: "index_comments_on_user_id", using: :btree

create_table "meta", force: true do |t|
t.string "name", null: false
t.string "value", null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
create_table "meta", force: :cascade do |t|
t.string "name", limit: 255, null: false
t.string "value", limit: 255, null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end

add_index "meta", ["name"], name: "index_meta_on_name", unique: true, using: :btree

create_table "ops", force: true do |t|
t.string "name", null: false
create_table "ops", force: :cascade do |t|
t.string "name", limit: 255, null: false
t.text "content"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "slug", null: false
t.string "avatar_file_name"
t.string "avatar_content_type"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "slug", limit: 255, null: false
t.string "avatar_file_name", limit: 255
t.string "avatar_content_type", limit: 255
t.integer "avatar_file_size"
t.datetime "avatar_updated_at"
t.integer "wikipedia_hits", default: 0
t.integer "link_karma", default: 0
t.integer "comment_karma", default: 0
t.string "avatar_source"
t.integer "wikipedia_hits", default: 0
t.integer "link_karma", default: 0
t.integer "comment_karma", default: 0
t.string "avatar_source", limit: 255
end

add_index "ops", ["slug"], name: "index_ops_on_slug", unique: true, using: :btree
add_index "ops", ["wikipedia_hits", "comment_karma", "link_karma", "name"], name: "ops_sortable_columns", using: :btree

create_table "ops_links", force: true do |t|
create_table "ops_links", force: :cascade do |t|
t.integer "op_id"
t.integer "site_id"
t.string "link", null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "link", limit: 255, null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end

create_table "ops_users", id: false, force: true do |t|
create_table "ops_users", id: false, force: :cascade do |t|
t.integer "op_id"
t.integer "user_id"
end

add_index "ops_users", ["op_id", "user_id"], name: "index_ops_users_on_op_id_and_user_id", unique: true, using: :btree

create_table "taggings", force: true do |t|
create_table "taggings", force: :cascade do |t|
t.integer "tag_id"
t.integer "taggable_id"
t.string "taggable_type"
t.string "taggable_type", limit: 255
t.integer "tagger_id"
t.string "tagger_type"
t.string "tagger_type", limit: 255
t.string "context", limit: 128
t.datetime "created_at"
t.integer "karma"
end

add_index "taggings", ["tag_id", "taggable_id", "taggable_type", "context", "tagger_id", "tagger_type"], name: "taggings_idx", unique: true, using: :btree

create_table "tags", force: true do |t|
t.string "name"
t.string "description"
t.string "wikipedia_url"
create_table "tags", force: :cascade do |t|
t.string "name", limit: 255
t.string "description", limit: 255
t.string "wikipedia_url", limit: 255
t.boolean "meaningless"
t.string "image_file_name"
t.string "image_content_type"
t.string "image_file_name", limit: 255
t.string "image_content_type", limit: 255
t.integer "image_file_size"
t.datetime "image_updated_at"
t.string "image_source"
t.string "redirect_tag_name"
t.string "image_source", limit: 255
t.string "redirect_tag_name", limit: 255
t.integer "redirect_tag_id"
t.datetime "updated_at", default: '2014-01-26 03:27:52'
t.integer "taggings_count", default: 0
t.datetime "updated_at", default: '2014-01-26 03:27:52'
t.integer "taggings_count", default: 0
end

add_index "tags", ["name"], name: "index_tags_on_name", unique: true, using: :btree

create_table "trashes", force: true do |t|
t.string "key", null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
create_table "trashes", force: :cascade do |t|
t.string "key", limit: 255, null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end

add_index "trashes", ["key"], name: "index_trashes_on_key", unique: true, using: :btree

create_table "upcomings", force: true do |t|
t.string "title"
create_table "upcomings", force: :cascade do |t|
t.string "title", limit: 255
t.datetime "date"
t.string "description"
t.string "url"
t.string "description", limit: 255
t.string "url", limit: 255
t.datetime "created_at"
t.datetime "updated_at"
t.string "wikipedia"
t.string "name"
end

add_index "upcomings", ["date"], name: "index_upcomings_on_date", using: :btree

create_table "users", force: true do |t|
t.string "username", null: false
t.integer "comment_karma", default: 0
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "link_karma", default: 0
create_table "users", force: :cascade do |t|
t.string "username", limit: 255, null: false
t.integer "comment_karma", default: 0
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "link_karma", default: 0
end

add_index "users", ["username"], name: "index_users_on_username", using: :btree

create_table "versions", force: true do |t|
t.string "item_type", null: false
t.integer "item_id", null: false
t.string "event", null: false
t.string "whodunnit"
create_table "versions", force: :cascade do |t|
t.string "item_type", limit: 255, null: false
t.integer "item_id", null: false
t.string "event", limit: 255, null: false
t.string "whodunnit", limit: 255
t.text "object"
t.datetime "created_at"
end
Expand Down
20 changes: 14 additions & 6 deletions lib/tasks/update.rake
Original file line number Diff line number Diff line change
Expand Up @@ -49,18 +49,26 @@ namespace :update do
end

task :upcoming => :environment do
google = 'http://www.google.com/calendar/feeds/amaverify@gmail.com/public/full?orderby=starttime&max-results=100&singleevents=true&sortorder=ascending&futureevents=true&alt=json'
google = 'http://www.google.com/calendar/feeds/amaverify@gmail.com/public/basic?orderby=starttime&sortorder=ascending&futureevents=true&alt=json'
http = Net::HTTP.new("www.google.com")
request = Net::HTTP::Get.new(google)
response = http.request(request)
json = JSON.parse(response.read_body)

json["feed"]["entry"].each do |entry|
url = entry['id']['$t'].to_s
title = entry['title']['$t'].to_s
content = entry['content']['$t'].to_s
date = entry['gd$when'][0]['startTime']
Upcoming.create(:title => title, :description => content, :date => date, :url => url)

u = Upcoming.new
u.url = entry['id']['$t'].to_s
u.description = entry['content']['$t'].to_s
u.title = entry['title']['$t'].to_s

if u.title =~ /\[([^\]]*)\]\(([^\)]*)\)/
match = u.title.match(/\[([^\]]*)\]\(([^\)]*)\)/)
u.name = match[1]
u.wikipedia = match[2]
end

u.save
end
end

Expand Down

0 comments on commit a5be664

Please sign in to comment.