synoptik 0.0.1

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.
data/.gitignore ADDED
@@ -0,0 +1,4 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in synoptik.gemspec
4
+ gemspec
5
+
6
+ gem 'gtk2'
7
+ gem 'nokogiri'
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
data/bin/synoptik ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # encoding: utf-8
4
+ require 'synoptik'
5
+
6
+ Synoptik::start()
data/lib/synoptik.rb ADDED
@@ -0,0 +1,38 @@
1
+ # encoding: utf-8
2
+
3
+ require "synoptik/version"
4
+
5
+ require "net/http"
6
+ require "nokogiri"
7
+ require "gtk2"
8
+
9
+ module Synoptik
10
+ $uri = URI.parse("http://www.spr.by/pogoda/kamenets-i-kamenetskiy-rayon/")
11
+
12
+ def on_timer
13
+ http = Net::HTTP.new($uri.host)
14
+ req = Net::HTTP::Get.new($uri.path)
15
+ res = http.request(req)
16
+
17
+ html = Nokogiri.HTML(res.body, nil, 'UTF-8')
18
+ temp = html.css('span[style="font-size:44px;"]')[0].text
19
+ $status_icon.tooltip = "Температура в Каменце #{@temp}"
20
+
21
+
22
+ tt = temp.partition(/\d{2}/)[1].to_i
23
+ if tt > 18
24
+ $status_icon.pixbuf = $solnyshko
25
+ else
26
+ $status_icon.pixbuf = $sneg
27
+ end
28
+ end
29
+
30
+ def start
31
+ $status_icon = Gtk::StatusIcon.new()
32
+ $solnyshko = Gdk::Pixbuf.new('solnyshko.png')
33
+ $sneg = Gdk::Pixbuf.new('snejinka.png')
34
+ $status_icon.pixbuf = $solnyshko
35
+ GLib::Timeout.add(5000) { on_timer }
36
+ Gtk.main()
37
+ end
38
+ end
@@ -0,0 +1,3 @@
1
+ module Synoptik
2
+ VERSION = "0.0.1"
3
+ end
data/synoptik.gemspec ADDED
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "synoptik/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "synoptik"
7
+ s.version = Synoptik::VERSION
8
+ s.authors = ["Chemeris P.Taras"]
9
+ s.email = ["chemt79@gmail.com"]
10
+ s.homepage = "http://www.taras.com"
11
+ s.summary = %q{Программа для отображения температуры}
12
+ s.description = %q{Погода}
13
+
14
+ s.rubyforge_project = "synoptik"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ # specify any dependencies here; for example:
22
+ # s.add_development_dependency "rspec"
23
+ # s.add_runtime_dependency "rest-client"
24
+ end
metadata ADDED
@@ -0,0 +1,53 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: synoptik
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Chemeris P.Taras
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-06-27 00:00:00.000000000Z
13
+ dependencies: []
14
+ description: Погода
15
+ email:
16
+ - chemt79@gmail.com
17
+ executables:
18
+ - synoptik
19
+ extensions: []
20
+ extra_rdoc_files: []
21
+ files:
22
+ - .gitignore
23
+ - Gemfile
24
+ - Rakefile
25
+ - bin/synoptik
26
+ - lib/synoptik.rb
27
+ - lib/synoptik/version.rb
28
+ - synoptik.gemspec
29
+ homepage: http://www.taras.com
30
+ licenses: []
31
+ post_install_message:
32
+ rdoc_options: []
33
+ require_paths:
34
+ - lib
35
+ required_ruby_version: !ruby/object:Gem::Requirement
36
+ none: false
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ required_rubygems_version: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ requirements: []
48
+ rubyforge_project: synoptik
49
+ rubygems_version: 1.8.17
50
+ signing_key:
51
+ specification_version: 3
52
+ summary: Программа для отображения температуры
53
+ test_files: []