Class: PageInformation
Instance Attribute Summary
#entries, #exits, #groupBox1, #groupBox2, #groupBox3, #hits, #nextPageList, #openButton, #pageURL, #refererList, #splitter5, #textLabel1, #textLabel11, #textLabel5, #textLabel8, #visitorList
Instance Method Summary
collapse
#browseURL
Constructor Details
#initialize(page, parent = nil, name = nil) ⇒ PageInformation
Returns a new instance of PageInformation.
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# File 'lib/PageInformation.rb', line 26
def initialize(page, parent = nil, name = nil)
super(parent, name)
$windowList.push(self)
@page = page
setCaption("Page Information - %s" % page.url)
@visitorListCSLV = CSListView.new(@visitorList)
@visitorList.setSorting(1, false)
@visitorListCSLV.setColumnWidth(0, 400)
@refererListCSLV = CSListView.new(@refererList)
@refererList.setSorting(1, false)
@refererListCSLV.setColumnWidth(0, 400)
@nextPageListCSLV = CSListView.new(@nextPageList)
@nextPageList.setSorting(1, false)
@nextPageListCSLV.setColumnWidth(0, 400)
connect(@visitorList, SIGNAL('clicked(QListViewItem*)'),
SLOT('hostClicked(QListViewItem*)'))
connect(@refererList, SIGNAL('clicked(QListViewItem*)'),
SLOT('refererClicked(QListViewItem*)'))
connect(@nextPageList, SIGNAL('clicked(QListViewItem*)'),
SLOT('nextPageClicked(QListViewItem*)'))
connect(@openButton, SIGNAL('clicked()'), SLOT('openPage()'))
if $globals.getSetting("PageWindowW") > 0 &&
$globals.getSetting("PageWindowH") > 0
resize($globals.getSetting("PageWindowW"),
$globals.getSetting("PageWindowH"))
end
updateWindow
show
end
|
Instance Method Details
#close(dummy) ⇒ Object
139
140
141
142
143
144
|
# File 'lib/PageInformation.rb', line 139
def close(dummy)
$globals.setSetting("PageWindowW", width())
$globals.setSetting("PageWindowH", height())
$windowList.delete(self)
super(true)
end
|
#hostClicked(item) ⇒ Object
115
116
117
118
|
# File 'lib/PageInformation.rb', line 115
def hostClicked(item)
return if item == nil
VisitorInformation.new($visitors[item.text(2) + "|" + item.text(3)])
end
|
#nextPageClicked(item) ⇒ Object
130
131
132
133
|
# File 'lib/PageInformation.rb', line 130
def nextPageClicked(item)
return if item == nil || !$pages.has_key?(item.text(0))
PageInformation.new($pages[item.text(0)])
end
|
#openPage ⇒ Object
135
136
137
|
# File 'lib/PageInformation.rb', line 135
def openPage
browseURL(@page.url)
end
|
#refererClicked(item) ⇒ Object
120
121
122
123
124
125
126
127
128
|
# File 'lib/PageInformation.rb', line 120
def refererClicked(item)
return if item == nil
referer = $referers[item.text(0)]
if referer.external?
RefererInformation.new(referer)
else
PageInformation.new($pages[item.text(0)])
end
end
|
#updateWindow ⇒ Object
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
# File 'lib/PageInformation.rb', line 64
def updateWindow
if !$pages[@page.url]
close(true)
return
end
@pageURL.setText(@page.url)
@hits.setText(@page.hitCount().to_s)
@entries.setText(@page.entryCount().to_s)
@exits.setText(@page.exitCount().to_s)
visitors = {}
referers = Hash.new(0)
@page.hits.each do |h|
visitors[h.visitor] = true
next if h.referer == nil
referers[h.referer] += 1
end
@visitorListCSLV.startUpdate
showRobots = $globals.getSetting("ShowRobots") != 0
showSurfers = $globals.getSetting("ShowSurfers") != 0
visitors.each_key do |v|
if (v.robot && !showRobots) || (!v.robot && !showSurfers)
next
end
@visitorListCSLV.insertItem(v, v.host, v.pageCount, v.ip, v.browser)
end
@visitorListCSLV.finishUpdate
@refererListCSLV.startUpdate
referers.each do |r, count|
@refererListCSLV.insertItem(r, r.url, count)
end
@refererListCSLV.finishUpdate
showRegularPages = $globals.getSetting("ShowRegularPages") != 0
showAuxPages = $globals.getSetting("ShowAuxPages") != 0
@nextPageListCSLV.startUpdate
@page.nextPages.each do |p, count|
if ($pages[p].isPage && !showRegularPages) ||
(!$pages[p].isPage && !showAuxPages)
next
end
@nextPageListCSLV.insertItem(p, p, count)
end
@nextPageListCSLV.finishUpdate
end
|