aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAlex Legler <alex@a3li.li>2011-09-04 22:30:52 +0200
committerAlex Legler <alex@a3li.li>2011-09-04 22:30:52 +0200
commit500df2f7486c1c15e2883b811abd7668dad6269e (patch)
tree8b4a1c4df4fafb0a1377a7b81508b84c511e1ec4 /doc
parentTest comment permission handling (diff)
downloadglsamaker-500df2f7486c1c15e2883b811abd7668dad6269e.tar.gz
glsamaker-500df2f7486c1c15e2883b811abd7668dad6269e.tar.bz2
glsamaker-500df2f7486c1c15e2883b811abd7668dad6269e.zip
Documentation update
Diffstat (limited to 'doc')
-rw-r--r--doc/README_FOR_APP14
-rw-r--r--doc/README_RCOV_PLUGIN86
-rw-r--r--doc/app/Admin.html278
-rw-r--r--doc/app/Admin/IndexController.html317
-rw-r--r--doc/app/Admin/IndexHelper.html261
-rw-r--r--doc/app/Admin/TemplatesController.html569
-rw-r--r--doc/app/Admin/TemplatesHelper.html310
-rw-r--r--doc/app/Admin/UsersController.html568
-rw-r--r--doc/app/Admin/UsersHelper.html354
-rw-r--r--doc/app/ApplicationController.html344
-rw-r--r--doc/app/ApplicationHelper.html661
-rw-r--r--doc/app/Authentication.html464
-rw-r--r--doc/app/Authorization.html435
-rw-r--r--doc/app/Bug.html423
-rw-r--r--doc/app/BugController.html383
-rw-r--r--doc/app/BugHelper.html311
-rw-r--r--doc/app/BugsController.html449
-rw-r--r--doc/app/BugsHelper.html261
-rw-r--r--doc/app/Bugzilla.html619
-rw-r--r--doc/app/Bugzilla/Bug.html859
-rw-r--r--doc/app/Bugzilla/Bugzilla.html268
-rw-r--r--doc/app/Bugzilla/Bugzilla/Bugzilla.html268
-rw-r--r--doc/app/Bugzilla/Bugzilla/Bugzilla/Change.html461
-rw-r--r--doc/app/Bugzilla/Comment.html372
-rw-r--r--doc/app/Bugzilla/History.html470
-rw-r--r--doc/app/Comment.html293
-rw-r--r--doc/app/Comment/CommentValidator.html328
-rw-r--r--doc/app/CommentsController.html459
-rw-r--r--doc/app/CommentsHelper.html261
-rw-r--r--doc/app/Cpe.html434
-rw-r--r--doc/app/Cve.html821
-rw-r--r--doc/app/CveAssignment.html269
-rw-r--r--doc/app/CveChange.html269
-rw-r--r--doc/app/CveComment.html269
-rw-r--r--doc/app/CveController.html1175
-rw-r--r--doc/app/CveHelper.html318
-rw-r--r--doc/app/CveReference.html269
-rw-r--r--doc/app/GLSAReleaseError.html269
-rw-r--r--doc/app/Glsa.html1086
-rw-r--r--doc/app/GlsaController.html1231
-rw-r--r--doc/app/GlsaHelper.html876
-rw-r--r--doc/app/GlsaMailer.html440
-rw-r--r--doc/app/Glsamaker.html388
-rw-r--r--doc/app/Glsamaker/Bugs.html279
-rw-r--r--doc/app/Glsamaker/Bugs/ArchesMixin.html310
-rw-r--r--doc/app/Glsamaker/Bugs/Bug.html376
-rw-r--r--doc/app/Glsamaker/Bugs/BugReadyMixin.html317
-rw-r--r--doc/app/Glsamaker/Bugs/Status.html580
-rw-r--r--doc/app/Glsamaker/Bugs/StatusMixin.html320
-rw-r--r--doc/app/Glsamaker/Diff.html338
-rw-r--r--doc/app/Glsamaker/HTTP.html323
-rw-r--r--doc/app/Glsamaker/Helper.html285
-rw-r--r--doc/app/Glsamaker/Mail.html498
-rw-r--r--doc/app/Glsamaker/Portage.html567
-rw-r--r--doc/app/Glsamaker/Portage/Description.html436
-rw-r--r--doc/app/Glsamaker/XML.html323
-rw-r--r--doc/app/IndexController.html487
-rw-r--r--doc/app/IndexHelper.html263
-rw-r--r--doc/app/Package.html332
-rw-r--r--doc/app/Reference.html271
-rw-r--r--doc/app/Revision.html524
-rw-r--r--doc/app/SearchController.html378
-rw-r--r--doc/app/SearchHelper.html261
-rw-r--r--doc/app/String.html435
-rw-r--r--doc/app/Template.html269
-rw-r--r--doc/app/ToolsController.html448
-rw-r--r--doc/app/ToolsHelper.html263
-rw-r--r--doc/app/User.html444
-rw-r--r--doc/app/app/controllers/admin/index_controller_rb.html52
-rw-r--r--doc/app/app/controllers/admin/templates_controller_rb.html52
-rw-r--r--doc/app/app/controllers/admin/users_controller_rb.html52
-rw-r--r--doc/app/app/controllers/application_controller_rb.html64
-rw-r--r--doc/app/app/controllers/bug_controller_rb.html64
-rw-r--r--doc/app/app/controllers/bugs_controller_rb.html63
-rw-r--r--doc/app/app/controllers/comments_controller_rb.html63
-rw-r--r--doc/app/app/controllers/cve_controller_rb.html52
-rw-r--r--doc/app/app/controllers/glsa_controller_rb.html64
-rw-r--r--doc/app/app/controllers/index_controller_rb.html64
-rw-r--r--doc/app/app/controllers/search_controller_rb.html52
-rw-r--r--doc/app/app/controllers/tools_controller_rb.html64
-rw-r--r--doc/app/app/helpers/admin/index_helper_rb.html52
-rw-r--r--doc/app/app/helpers/admin/templates_helper_rb.html52
-rw-r--r--doc/app/app/helpers/admin/users_helper_rb.html52
-rw-r--r--doc/app/app/helpers/application_helper_rb.html65
-rw-r--r--doc/app/app/helpers/bug_helper_rb.html52
-rw-r--r--doc/app/app/helpers/bugs_helper_rb.html52
-rw-r--r--doc/app/app/helpers/comments_helper_rb.html52
-rw-r--r--doc/app/app/helpers/cve_helper_rb.html52
-rw-r--r--doc/app/app/helpers/glsa_helper_rb.html64
-rw-r--r--doc/app/app/helpers/index_helper_rb.html64
-rw-r--r--doc/app/app/helpers/search_helper_rb.html52
-rw-r--r--doc/app/app/helpers/tools_helper_rb.html64
-rw-r--r--doc/app/app/mailers/glsa_mailer_rb.html52
-rw-r--r--doc/app/app/models/bug_rb.html64
-rw-r--r--doc/app/app/models/comment_rb.html64
-rw-r--r--doc/app/app/models/cpe_rb.html63
-rw-r--r--doc/app/app/models/cve_assignment_rb.html52
-rw-r--r--doc/app/app/models/cve_change_rb.html52
-rw-r--r--doc/app/app/models/cve_comment_rb.html52
-rw-r--r--doc/app/app/models/cve_rb.html65
-rw-r--r--doc/app/app/models/cve_reference_rb.html52
-rw-r--r--doc/app/app/models/glsa_rb.html64
-rw-r--r--doc/app/app/models/package_rb.html64
-rw-r--r--doc/app/app/models/reference_rb.html64
-rw-r--r--doc/app/app/models/revision_rb.html66
-rw-r--r--doc/app/app/models/template_rb.html52
-rw-r--r--doc/app/app/models/user_rb.html64
-rw-r--r--doc/app/classes/ApplicationController.html126
-rw-r--r--doc/app/classes/ApplicationHelper.html153
-rw-r--r--doc/app/classes/Array.html118
-rw-r--r--doc/app/classes/Authentication.html242
-rw-r--r--doc/app/classes/Bug.html160
-rw-r--r--doc/app/classes/Bugzilla.html171
-rw-r--r--doc/app/classes/Bugzilla/Bug.html393
-rw-r--r--doc/app/classes/Bugzilla/Change.html243
-rw-r--r--doc/app/classes/Bugzilla/Comment.html177
-rw-r--r--doc/app/classes/Bugzilla/History.html281
-rw-r--r--doc/app/classes/Comment.html117
-rw-r--r--doc/app/classes/Diff.html494
-rw-r--r--doc/app/classes/Diffable.html284
-rw-r--r--doc/app/classes/Glsa.html271
-rw-r--r--doc/app/classes/GlsaController.html450
-rw-r--r--doc/app/classes/GlsaHelper.html227
-rw-r--r--doc/app/classes/Glsamaker.html132
-rw-r--r--doc/app/classes/Glsamaker/Bugs.html105
-rw-r--r--doc/app/classes/Glsamaker/Diff.html117
-rw-r--r--doc/app/classes/Glsamaker/Diff/DiffContainer.html186
-rw-r--r--doc/app/classes/Glsamaker/HTTP.html161
-rw-r--r--doc/app/classes/Glsamaker/Portage.html156
-rw-r--r--doc/app/classes/Glsamaker/Portage/Description.html276
-rw-r--r--doc/app/classes/IndexController.html206
-rw-r--r--doc/app/classes/IndexHelper.html111
-rw-r--r--doc/app/classes/Reference.html117
-rw-r--r--doc/app/classes/Revision.html117
-rw-r--r--doc/app/classes/SparklinesController.html210
-rw-r--r--doc/app/classes/String.html118
-rw-r--r--doc/app/classes/ToolsController.html337
-rw-r--r--doc/app/classes/ToolsHelper.html111
-rw-r--r--doc/app/classes/User.html129
-rw-r--r--doc/app/created.rid57
-rw-r--r--doc/app/doc/README_FOR_APP.html260
-rw-r--r--doc/app/files/app/controllers/application_controller_rb.html118
-rw-r--r--doc/app/files/app/controllers/glsa_controller_rb.html118
-rw-r--r--doc/app/files/app/controllers/index_controller_rb.html118
-rw-r--r--doc/app/files/app/controllers/sparklines_controller_rb.html101
-rw-r--r--doc/app/files/app/controllers/tools_controller_rb.html118
-rw-r--r--doc/app/files/app/helpers/application_helper_rb.html119
-rw-r--r--doc/app/files/app/helpers/glsa_helper_rb.html119
-rw-r--r--doc/app/files/app/helpers/index_helper_rb.html118
-rw-r--r--doc/app/files/app/helpers/tools_helper_rb.html118
-rw-r--r--doc/app/files/app/models/bug_rb.html118
-rw-r--r--doc/app/files/app/models/comment_rb.html118
-rw-r--r--doc/app/files/app/models/glsa_rb.html118
-rw-r--r--doc/app/files/app/models/reference_rb.html118
-rw-r--r--doc/app/files/app/models/revision_rb.html118
-rw-r--r--doc/app/files/app/models/user_rb.html118
-rw-r--r--doc/app/files/doc/README_FOR_APP.html144
-rw-r--r--doc/app/files/lib/authentication_rb.html118
-rw-r--r--doc/app/files/lib/bugzilla_rb.html126
-rw-r--r--doc/app/files/lib/diff_rb.html101
-rw-r--r--doc/app/files/lib/glsamaker/bugs_rb.html118
-rw-r--r--doc/app/files/lib/glsamaker/diff_rb.html126
-rw-r--r--doc/app/files/lib/glsamaker/http_rb.html126
-rw-r--r--doc/app/files/lib/glsamaker/portage_rb.html125
-rw-r--r--doc/app/files/lib/glsamaker_rb.html127
-rw-r--r--doc/app/fr_class_index.html58
-rw-r--r--doc/app/fr_file_index.html50
-rw-r--r--doc/app/fr_method_index.html92
-rw-r--r--doc/app/images/brick.pngbin0 -> 452 bytes
-rw-r--r--doc/app/images/brick_link.pngbin0 -> 764 bytes
-rw-r--r--doc/app/images/bug.pngbin0 -> 774 bytes
-rw-r--r--doc/app/images/bullet_black.pngbin0 -> 211 bytes
-rw-r--r--doc/app/images/bullet_toggle_minus.pngbin0 -> 207 bytes
-rw-r--r--doc/app/images/bullet_toggle_plus.pngbin0 -> 209 bytes
-rw-r--r--doc/app/images/date.pngbin0 -> 626 bytes
-rw-r--r--doc/app/images/find.pngbin0 -> 659 bytes
-rw-r--r--doc/app/images/loadingAnimation.gifbin0 -> 5886 bytes
-rw-r--r--doc/app/images/macFFBgHack.pngbin0 -> 207 bytes
-rw-r--r--doc/app/images/package.pngbin0 -> 853 bytes
-rw-r--r--doc/app/images/page_green.pngbin0 -> 621 bytes
-rw-r--r--doc/app/images/page_white_text.pngbin0 -> 342 bytes
-rw-r--r--doc/app/images/page_white_width.pngbin0 -> 309 bytes
-rw-r--r--doc/app/images/plugin.pngbin0 -> 591 bytes
-rw-r--r--doc/app/images/ruby.pngbin0 -> 592 bytes
-rw-r--r--doc/app/images/tag_green.pngbin0 -> 613 bytes
-rw-r--r--doc/app/images/wrench.pngbin0 -> 610 bytes
-rw-r--r--doc/app/images/wrench_orange.pngbin0 -> 584 bytes
-rw-r--r--doc/app/images/zoom.pngbin0 -> 692 bytes
-rw-r--r--doc/app/index.html628
-rw-r--r--doc/app/js/darkfish.js116
-rw-r--r--doc/app/js/jquery.js32
-rw-r--r--doc/app/js/quicksearch.js114
-rw-r--r--doc/app/js/thickbox-compressed.js10
-rw-r--r--doc/app/lib/authentication_rb.html64
-rw-r--r--doc/app/lib/authorization_rb.html63
-rw-r--r--doc/app/lib/bugzilla/bug_rb.html63
-rw-r--r--doc/app/lib/bugzilla/comment_rb.html63
-rw-r--r--doc/app/lib/bugzilla/history_rb.html54
-rw-r--r--doc/app/lib/bugzilla_rb.html72
-rw-r--r--doc/app/lib/glsamaker/bugs_rb.html66
-rw-r--r--doc/app/lib/glsamaker/diff_rb.html69
-rw-r--r--doc/app/lib/glsamaker/helpers_rb.html63
-rw-r--r--doc/app/lib/glsamaker/http_rb.html68
-rw-r--r--doc/app/lib/glsamaker/mail_rb.html63
-rw-r--r--doc/app/lib/glsamaker/portage_rb.html66
-rw-r--r--doc/app/lib/glsamaker/xml_rb.html63
-rw-r--r--doc/app/lib/glsamaker_rb.html76
-rw-r--r--doc/app/lib/tasks/utils_rb.html64
-rw-r--r--doc/app/rdoc-style.css208
-rw-r--r--doc/app/rdoc.css763
210 files changed, 33702 insertions, 9881 deletions
diff --git a/doc/README_FOR_APP b/doc/README_FOR_APP
index ee9a874..f13c961 100644
--- a/doc/README_FOR_APP
+++ b/doc/README_FOR_APP
@@ -3,16 +3,22 @@
GLSAMaker is a core tool for the Gentoo Security Team.
It is used to track, create, edit and review Security announcements and drafts.
-Project website: http://security.gentoo.org
+Project website: https://redmine.a3li.li/projects/glsamaker2
==Needed libraries
-* Rails 2.3.2
+* Rails 3.1
* Nokogiri
* FasterCSV
+* JSON
+* Mechanize
+* Rcov
+* text-format
+* xmlindent
+* Sphinx
* Sparklines
==Copyright
- Copyright (C) 2009 Alex Legler <a3li@gentoo.org>
+ Copyright (C) 2009-2011 Alex Legler <a3li@gentoo.org>
Copyright (C) 2009 Pierre-Yves Rofes <py@gentoo.org>
Portions Copyright (C) 2006-2007 Jean-Philippe Lang
@@ -22,4 +28,4 @@ it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
-For more information, see the LICENSE file. \ No newline at end of file
+For more information, see the LICENSE file.
diff --git a/doc/README_RCOV_PLUGIN b/doc/README_RCOV_PLUGIN
deleted file mode 100644
index eb9d84c..0000000
--- a/doc/README_RCOV_PLUGIN
+++ /dev/null
@@ -1,86 +0,0 @@
- = rails_rcov plugin for Rails
-
-rails_rcov provides easy-to-use Rake tasks to determine the code coverage of
-your unit, functional, and integration tests using Mauricio Fernandez's rcov
-tool.
-
-== Installation
-
-First, install rcov from Mauricio's web site
-[http://eigenclass.org/hiki.rb?rcov]. Make sure it's on your system path, so
-that typing +rcov+ on the command line actually runs it. THIS PLUGIN DOESN'T DO
-ANYTHING BESIDES GENERATE ERRORS UNLESS YOU INSTALL RCOV FIRST. RCOV CONTAINS
-ALL THE MAGIC, THIS PLUGIN JUST RUNS IT.
-
-Second, install this plugin. If your project is source-controlled by Subversion
-(which it should be, really), the easiest way to install this is via Rails'
-plugin script:
-
- ./script/plugin install -x http://svn.codahale.com/rails_rcov
-
-If you're not using Subversion, or if you don't want it adding
-<tt>svn:externals</tt> in your project, remove the <tt>-x</tt> switch:
-
- ./script/plugin install http://svn.codahale.com/rails_rcov
-
-== Usage
-
-For each <tt>test:blah</tt> task you have for your Rails project, rails_rcov
-adds two more: <tt>test:blah:rcov</tt> and <tt>test:blah:clobber_rcov</tt>.
-
-Running <tt>rake test:units:rcov</tt>, for example, will run your unit tests
-through rcov and write the code coverage reports to
-<tt>your_rails_app/coverage/units</tt>.
-
-Running <tt>test:units:clobber_rcov</tt> will erase the generated report for the
-unit tests.
-
-Each rcov task takes two optional parameters: RCOV_PARAMS, whose argument is
-passed along to rcov, and SHOW_ONLY, which limits the files displayed in the
-report.
-
-RCOV_PARAMS:
- # sort by coverage
- rake test:units:rcov RCOV_PARAMS="--sort=coverage"
-
- # show callsites and hide fully covered files
- rake test:units:rcov RCOV_PARAMS="--callsites --only-uncovered"
-
-Check the rcov documentation for more details.
-
-SHOW_ONLY is a comma-separated list of the files you'd like to see. Right now
-there are four types of files rake_rcov recognizes: models, helpers,
-controllers, and lib. These can be abbreviated to their first letters:
-
- # only show files from app/models
- rake test:units:rcov SHOW_ONLY=models
-
- # only show files from app/helpers and app/controllers
- rake test:units:rcov SHOW_ONLY=helpers,controllers
-
- # only show files from app/helpers and app/controllers, with less typing
- rake test:units:rcov SHOW_ONLY=h,c
-
-Please note that rails_rcov has only been tested with a Bash shell, and any
-other environment could well explode in your face. If you're having trouble
-getting this to work on Windows, please take the time to figure out what's not
-working. Most of the time it boils down to the different ways the Window shell
-and the Bash shell escape metacharacters. Play around with the way rcov_rake
-escapes data (like on line 73, or 78) and send me a fix. I don't have a working
-Windows environment anymore, so leaving it up to me won't solve anything. ;-)
-
-== Resources
-
-=== Subversion
-
-* http://svn.codahale.com/rails_rcov
-
-=== Blog
-
-* http://blog.codahale.com
-
-== Credits
-
-Written by Coda Hale <coda.hale@gmail.com>. Thanks to Nils Franzen for a Win32
-escaping patch. Thanks to Alex Wayne for suggesting how to make SHOW_ONLY not be
-useless. \ No newline at end of file
diff --git a/doc/app/Admin.html b/doc/app/Admin.html
new file mode 100644
index 0000000..b5cdb87
--- /dev/null
+++ b/doc/app/Admin.html
@@ -0,0 +1,278 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Admin</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">MODULE</span> <a href="Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Admin/UsersController.html">Admin::UsersController</a></li>
+
+ </ul>
+ </div>
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Admin</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Admin/IndexController.html b/doc/app/Admin/IndexController.html
new file mode 100644
index 0000000..c9a5c28
--- /dev/null
+++ b/doc/app/Admin/IndexController.html
@@ -0,0 +1,317 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Admin::IndexController</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/controllers/admin/index_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/admin/index_controller.rb">app/controllers/admin/index_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="../ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-index">#index</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Admin::IndexController</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="index-method" class="method-detail ">
+ <a name="method-i-index"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">index</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="index-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/index_controller.rb, line 4</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">index</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- index-source -->
+
+ </div>
+
+
+
+
+ </div><!-- index-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Admin/IndexHelper.html b/doc/app/Admin/IndexHelper.html
new file mode 100644
index 0000000..9fbac05
--- /dev/null
+++ b/doc/app/Admin/IndexHelper.html
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Admin::IndexHelper</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/helpers/admin/index_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/admin/index_helper.rb">app/helpers/admin/index_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Admin::IndexHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Admin/TemplatesController.html b/doc/app/Admin/TemplatesController.html
new file mode 100644
index 0000000..aa5903e
--- /dev/null
+++ b/doc/app/Admin/TemplatesController.html
@@ -0,0 +1,569 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Admin::TemplatesController</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/controllers/admin/templates_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/admin/templates_controller.rb">app/controllers/admin/templates_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="../ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-create">#create</a></li>
+
+ <li><a href="#method-i-destroy">#destroy</a></li>
+
+ <li><a href="#method-i-edit">#edit</a></li>
+
+ <li><a href="#method-i-index">#index</a></li>
+
+ <li><a href="#method-i-new">#new</a></li>
+
+ <li><a href="#method-i-show">#show</a></li>
+
+ <li><a href="#method-i-update">#update</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Admin::TemplatesController</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="create-method" class="method-detail ">
+ <a name="method-i-create"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">create</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>POST /admin/templates POST /admin/templates.json</p>
+
+
+
+ <div class="method-source-code" id="create-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 44</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:template</span>])
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@template</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">admin_template_path</span>(<span class="ruby-ivar">@template</span>), <span class="ruby-value">:notice</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'Template was successfully created.'</span> }
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@template</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:created</span>, <span class="ruby-value">:location</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@template</span> }
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;new&quot;</span> }
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@template</span>.<span class="ruby-identifier">errors</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:unprocessable_entity</span> }
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- create-source -->
+
+ </div>
+
+
+
+
+ </div><!-- create-method -->
+
+
+ <div id="destroy-method" class="method-detail ">
+ <a name="method-i-destroy"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">destroy</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>DELETE /admin/templates/1 DELETE /admin/templates/1.json</p>
+
+
+
+ <div class="method-source-code" id="destroy-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 76</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-ivar">@template</span>.<span class="ruby-identifier">destroy</span>
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">admin_templates_url</span> }
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">head</span> <span class="ruby-value">:ok</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- destroy-source -->
+
+ </div>
+
+
+
+
+ </div><!-- destroy-method -->
+
+
+ <div id="edit-method" class="method-detail ">
+ <a name="method-i-edit"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">edit</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>GET /admin/templates/1/edit</p>
+
+
+
+ <div class="method-source-code" id="edit-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 38</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">edit</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- edit-source -->
+
+ </div>
+
+
+
+
+ </div><!-- edit-method -->
+
+
+ <div id="index-method" class="method-detail ">
+ <a name="method-i-index"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">index</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>GET /admin/templates GET /admin/templates.json</p>
+
+
+
+ <div class="method-source-code" id="index-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 6</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">index</span>
+ <span class="ruby-ivar">@templates</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">all</span>
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> <span class="ruby-comment"># index.html.erb</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@templates</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- index-source -->
+
+ </div>
+
+
+
+
+ </div><!-- index-method -->
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-i-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>GET /admin/templates/new GET /admin/templates/new.json</p>
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 28</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">new</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">new</span>
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> <span class="ruby-comment"># new.html.erb</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@template</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ <div id="show-method" class="method-detail ">
+ <a name="method-i-show"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">show</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>GET /admin/templates/1 GET /admin/templates/1.json</p>
+
+
+
+ <div class="method-source-code" id="show-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 17</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">show</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> <span class="ruby-comment"># show.html.erb</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@template</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- show-source -->
+
+ </div>
+
+
+
+
+ </div><!-- show-method -->
+
+
+ <div id="update-method" class="method-detail ">
+ <a name="method-i-update"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>PUT /admin/templates/1 PUT /admin/templates/1.json</p>
+
+
+
+ <div class="method-source-code" id="update-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/templates_controller.rb, line 60</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@template</span>.<span class="ruby-identifier">update_attributes</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:template</span>])
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">admin_template_path</span>(<span class="ruby-ivar">@template</span>), <span class="ruby-value">:notice</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'Template was successfully updated.'</span> }
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">head</span> <span class="ruby-value">:ok</span> }
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;edit&quot;</span> }
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@template</span>.<span class="ruby-identifier">errors</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:unprocessable_entity</span> }
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Admin/TemplatesHelper.html b/doc/app/Admin/TemplatesHelper.html
new file mode 100644
index 0000000..0bb6028
--- /dev/null
+++ b/doc/app/Admin/TemplatesHelper.html
@@ -0,0 +1,310 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Admin::TemplatesHelper</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/helpers/admin/templates_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/admin/templates_helper.rb">app/helpers/admin/templates_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-target_list">#target_list</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Admin::TemplatesHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="target_list-method" class="method-detail ">
+ <a name="method-i-target_list"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">target_list</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Generates a list of targets</p>
+
+
+
+ <div class="method-source-code" id="target_list-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/admin/templates_helper.rb, line 3</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">target_list</span>
+ <span class="ruby-constant">GLSAMAKER_TEMPLATE_TARGETS</span>.<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> [<span class="ruby-identifier">x</span>.<span class="ruby-identifier">titleize</span>, <span class="ruby-identifier">x</span>]}
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- target_list-source -->
+
+ </div>
+
+
+
+
+ </div><!-- target_list-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Admin/UsersController.html b/doc/app/Admin/UsersController.html
new file mode 100644
index 0000000..a313b89
--- /dev/null
+++ b/doc/app/Admin/UsersController.html
@@ -0,0 +1,568 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Admin::UsersController</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/controllers/admin/users_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/admin/users_controller.rb">app/controllers/admin/users_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="../ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-create">#create</a></li>
+
+ <li><a href="#method-i-destroy">#destroy</a></li>
+
+ <li><a href="#method-i-edit">#edit</a></li>
+
+ <li><a href="#method-i-index">#index</a></li>
+
+ <li><a href="#method-i-new">#new</a></li>
+
+ <li><a href="#method-i-show">#show</a></li>
+
+ <li><a href="#method-i-update">#update</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Admin::UsersController</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="create-method" class="method-detail ">
+ <a name="method-i-create"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">create</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="create-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 18</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:user</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_user_path</span>(<span class="ruby-ivar">@user</span>), <span class="ruby-value">:notice</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'User was successfully created.'</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;new&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- create-source -->
+
+ </div>
+
+
+
+
+ </div><!-- create-method -->
+
+
+ <div id="destroy-method" class="method-detail ">
+ <a name="method-i-destroy"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">destroy</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="destroy-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 58</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;That's the system account.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_users_path</span>)
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">destroy</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-string">&quot;User was successfully deleted.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_users_path</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- destroy-source -->
+
+ </div>
+
+
+
+
+ </div><!-- destroy-method -->
+
+
+ <div id="edit-method" class="method-detail ">
+ <a name="method-i-edit"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">edit</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="edit-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 32</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">edit</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;That's the system account.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_users_path</span>)
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- edit-source -->
+
+ </div>
+
+
+
+
+ </div><!-- edit-method -->
+
+
+ <div id="index-method" class="method-detail ">
+ <a name="method-i-index"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">index</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="index-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 4</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">index</span>
+ <span class="ruby-ivar">@users</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">where</span>(<span class="ruby-string">'id &gt; 0'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- index-source -->
+
+ </div>
+
+
+
+
+ </div><!-- index-method -->
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-i-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 28</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">new</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">new</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ <div id="show-method" class="method-detail ">
+ <a name="method-i-show"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">show</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="show-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 8</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">show</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;That's the system account.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_users_path</span>)
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- show-source -->
+
+ </div>
+
+
+
+
+ </div><!-- show-method -->
+
+
+ <div id="update-method" class="method-detail ">
+ <a name="method-i-update"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="update-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/admin/users_controller.rb, line 42</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;That's the system account.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_users_path</span>)
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">update_attributes</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:user</span>])
+ <span class="ruby-identifier">redirect_to</span>(<span class="ruby-identifier">admin_user_path</span>(<span class="ruby-ivar">@user</span>), <span class="ruby-value">:notice</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'User was successfully updated.'</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;edit&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Admin/UsersHelper.html b/doc/app/Admin/UsersHelper.html
new file mode 100644
index 0000000..5c4a519
--- /dev/null
+++ b/doc/app/Admin/UsersHelper.html
@@ -0,0 +1,354 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Admin::UsersHelper</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/helpers/admin/users_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/admin/users_helper.rb">app/helpers/admin/users_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-access_list">#access_list</a></li>
+
+ <li><a href="#method-i-access_string">#access_string</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Admin::UsersHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="access_list-method" class="method-detail ">
+ <a name="method-i-access_list"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">access_list</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="access_list-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/admin/users_helper.rb, line 15</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">access_list</span>
+ [<span class="ruby-value">0</span>, <span class="ruby-value">1</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>].<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> [<span class="ruby-identifier">access_string</span>(<span class="ruby-identifier">x</span>), <span class="ruby-identifier">x</span>]}
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- access_list-source -->
+
+ </div>
+
+
+
+
+ </div><!-- access_list-method -->
+
+
+ <div id="access_string-method" class="method-detail ">
+ <a name="method-i-access_string"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">access_string</span><span
+ class="method-args">(lvl)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="access_string-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/admin/users_helper.rb, line 2</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">access_string</span>(<span class="ruby-identifier">lvl</span>)
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">lvl</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">0</span>
+ <span class="ruby-string">&quot;Contributor&quot;</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">1</span>
+ <span class="ruby-string">&quot;Padawan&quot;</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">2</span>
+ <span class="ruby-string">&quot;Full member&quot;</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-value">3</span>
+ <span class="ruby-string">&quot;Confidential member&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- access_string-source -->
+
+ </div>
+
+
+
+
+ </div><!-- access_string-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/ApplicationController.html b/doc/app/ApplicationController.html
new file mode 100644
index 0000000..5637b50
--- /dev/null
+++ b/doc/app/ApplicationController.html
@@ -0,0 +1,344 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: ApplicationController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/application_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/application_controller.rb">app/controllers/application_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActionController::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-log_error">#log_error</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><a class="include" href="Authentication.html">Authentication</a></li>
+
+
+
+ <li><a class="include" href="Authorization.html">Authorization</a></li>
+
+
+
+ <li><a class="include" href="ApplicationHelper.html">ApplicationHelper</a></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">ApplicationController</h1>
+
+ <div id="description" class="description">
+
+<p>Filters added to this controller apply to all controllers in the
+application. Likewise, all the methods added will be available for all
+controllers.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="protected-instance-method-details" class="method-section section">
+ <h3 class="section-header">Protected Instance Methods</h3>
+
+
+ <div id="log_error-method" class="method-detail ">
+ <a name="method-i-log_error"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">log_error</span><span
+ class="method-args">(error)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="log_error-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/application_controller.rb, line 29</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">log_error</span>(<span class="ruby-identifier">error</span>)
+ <span class="ruby-identifier">caller</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">/`([^']*)'/</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">where</span> = <span class="ruby-node">$1</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">error</span> <span class="ruby-node">&quot;[#{where}] #{error.class}: #{error.to_s}&quot;</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-identifier">error</span>.<span class="ruby-identifier">backtrace</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&quot;\n&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- log_error-source -->
+
+ </div>
+
+
+
+
+ </div><!-- log_error-method -->
+
+
+ </div><!-- protected-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/ApplicationHelper.html b/doc/app/ApplicationHelper.html
new file mode 100644
index 0000000..fd36f36
--- /dev/null
+++ b/doc/app/ApplicationHelper.html
@@ -0,0 +1,661 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: ApplicationHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/application_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/application_helper.rb">app/helpers/application_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-box_title">#box_title</a></li>
+
+ <li><a href="#method-i-bugs_unify_cvenames">#bugs_unify_cvenames</a></li>
+
+ <li><a href="#method-i-cveify_bug_title">#cveify_bug_title</a></li>
+
+ <li><a href="#method-i-error_msg">#error_msg</a></li>
+
+ <li><a href="#method-i-get_bug_cves">#get_bug_cves</a></li>
+
+ <li><a href="#method-i-simple_format_without_paragraph">#simple_format_without_paragraph</a></li>
+
+ <li><a href="#method-i-whiteboard_to_severity">#whiteboard_to_severity</a></li>
+
+ <li><a href="#method-i-with_format">#with_format</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">ApplicationHelper</h1>
+
+ <div id="description" class="description">
+
+<p>Methods added to this helper will be available to all templates in the
+application.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="box_title-method" class="method-detail ">
+ <a name="method-i-box_title"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">box_title</span><span
+ class="method-args">(title, options = {})</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Renders a title bar for our boxes</p>
+
+
+
+ <div class="method-source-code" id="box_title-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 104</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">box_title</span>(<span class="ruby-identifier">title</span>, <span class="ruby-identifier">options</span> = {})
+ <span class="ruby-identifier">content</span> = <span class="ruby-string">&quot;&quot;</span>.<span class="ruby-identifier">html_safe</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-value">:toolbar</span>
+ <span class="ruby-identifier">span_content</span> = <span class="ruby-string">&quot;&quot;</span>.<span class="ruby-identifier">html_safe</span>
+
+ <span class="ruby-identifier">options</span>[<span class="ruby-value">:toolbar</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">toolbar_item</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">toolbar_item</span> <span class="ruby-operator">==</span> <span class="ruby-value">:sep</span>
+ <span class="ruby-identifier">span_content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">image_tag</span>(<span class="ruby-string">'separator.png'</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">toolbar_item</span>[<span class="ruby-value">:uri</span>].<span class="ruby-identifier">start_with?</span> <span class="ruby-string">'javascript:'</span>
+ <span class="ruby-identifier">span_content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">link_to_function</span>(
+ <span class="ruby-identifier">image_tag</span>(<span class="ruby-identifier">toolbar_item</span>[<span class="ruby-value">:icon</span>]),
+ <span class="ruby-identifier">toolbar_item</span>[<span class="ruby-value">:uri</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/^javascript:/</span>, <span class="ruby-string">''</span>),
+ <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">toolbar_item</span>[<span class="ruby-value">:title</span>]
+ ) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">' '</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">span_content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">link_to</span>(<span class="ruby-identifier">image_tag</span>(<span class="ruby-identifier">toolbar_item</span>[<span class="ruby-value">:icon</span>]), <span class="ruby-identifier">toolbar_item</span>[<span class="ruby-value">:uri</span>]) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">' '</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">content_tag</span>(<span class="ruby-string">&quot;span&quot;</span>, <span class="ruby-identifier">span_content</span>, <span class="ruby-value">:class</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'toolbar'</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-value">:icon</span>
+ <span class="ruby-identifier">content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">image_tag</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:icon</span>]) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; &quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">title2</span> = <span class="ruby-identifier">title</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-value">:escape</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:escape</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-identifier">title2</span> = <span class="ruby-identifier">title2</span>.<span class="ruby-identifier">html_safe</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-value">:label</span>
+ <span class="ruby-identifier">content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">content_tag</span>(<span class="ruby-string">'label'</span>, <span class="ruby-identifier">title2</span>, <span class="ruby-value">:for</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:label</span>])
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">title2</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">content_tag</span>(<span class="ruby-string">&quot;h2&quot;</span>, <span class="ruby-identifier">content</span>, <span class="ruby-value">:class</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;boxtitle&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- box_title-source -->
+
+ </div>
+
+
+
+
+ </div><!-- box_title-method -->
+
+
+ <div id="bugs_unify_cvenames-method" class="method-detail ">
+ <a name="method-i-bugs_unify_cvenames"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bugs_unify_cvenames</span><span
+ class="method-args">(cves)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Groups an array of CVE names into groups</p>
+
+
+
+ <div class="method-source-code" id="bugs_unify_cvenames-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 41</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bugs_unify_cvenames</span>(<span class="ruby-identifier">cves</span>)
+ <span class="ruby-identifier">cve_r</span> = <span class="ruby-regexp">/CVE-(\d{4})-(\d+)/</span>
+
+ <span class="ruby-identifier">years</span> = {}
+ <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">uniq</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">cve_r</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">cve</span>
+ <span class="ruby-identifier">years</span>[<span class="ruby-node">$1</span>] <span class="ruby-operator">||=</span> []
+ <span class="ruby-identifier">years</span>[<span class="ruby-node">$1</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">$2</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">title</span> = <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-identifier">years</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">year</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">title</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot;CVE-%s&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">year</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">years</span>[<span class="ruby-identifier">year</span>].<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
+ <span class="ruby-identifier">title</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot;-%s,&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">years</span>[<span class="ruby-identifier">year</span>].<span class="ruby-identifier">first</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">title</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot;-{%s},&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">years</span>[<span class="ruby-identifier">year</span>].<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">','</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">title</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">title</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bugs_unify_cvenames-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bugs_unify_cvenames-method -->
+
+
+ <div id="cveify_bug_title-method" class="method-detail ">
+ <a name="method-i-cveify_bug_title"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">cveify_bug_title</span><span
+ class="method-args">(summary, cve_ids)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Updates a bug string with the cve_ids</p>
+
+
+
+ <div class="method-source-code" id="cveify_bug_title-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 65</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">cveify_bug_title</span>(<span class="ruby-identifier">summary</span>, <span class="ruby-identifier">cve_ids</span>)
+ <span class="ruby-identifier">cve_str</span> = <span class="ruby-identifier">bugs_unify_cvenames</span>(<span class="ruby-identifier">get_bug_cves</span>(<span class="ruby-identifier">summary</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">cve_ids</span>)
+ <span class="ruby-identifier">summary</span> = <span class="ruby-identifier">summary</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/[ (]*CVE-(\d{4})([-,(){}|, \d]+)/</span>, <span class="ruby-string">''</span>)
+ <span class="ruby-identifier">summary</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/\(?CVEs? requested\)?/</span>, <span class="ruby-string">''</span>)
+ <span class="ruby-node">&quot;#{summary} (#{cve_str})&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- cveify_bug_title-source -->
+
+ </div>
+
+
+
+
+ </div><!-- cveify_bug_title-method -->
+
+
+ <div id="error_msg-method" class="method-detail ">
+ <a name="method-i-error_msg"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">error_msg</span><span
+ class="method-args">(msg)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Simplistic helper for rendering an error message. Shows a little icon
+before the message</p>
+
+
+
+ <div class="method-source-code" id="error_msg-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 97</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">error_msg</span>(<span class="ruby-identifier">msg</span>)
+ <span class="ruby-identifier">content</span> = <span class="ruby-identifier">image_tag</span>(<span class="ruby-string">'icons/error.png'</span>)
+ <span class="ruby-identifier">content</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; &quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">msg</span>
+ <span class="ruby-identifier">content</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- error_msg-source -->
+
+ </div>
+
+
+
+
+ </div><!-- error_msg-method -->
+
+
+ <div id="get_bug_cves-method" class="method-detail ">
+ <a name="method-i-get_bug_cves"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get_bug_cves</span><span
+ class="method-args">(str)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>shamelessly stolen from the old cvetools.py Extracts all CVEs from a string
+into an array</p>
+
+
+
+ <div class="method-source-code" id="get_bug_cves-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 25</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_bug_cves</span>(<span class="ruby-identifier">str</span>)
+ <span class="ruby-identifier">cve_group_all</span> = <span class="ruby-regexp">/[ (]*CVE-(\d{4})([-,(){}|, \d]+)/</span>
+ <span class="ruby-identifier">cve_group_split</span> = <span class="ruby-regexp">/(\d{4})(?:\D|$)/</span>
+
+ <span class="ruby-identifier">bug_cves</span> = []
+
+ <span class="ruby-identifier">str</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-identifier">cve_group_all</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">m</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">scan</span>(<span class="ruby-identifier">cve_group_split</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">n</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">bug_cves</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;CVE-%s-%s&quot;</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">m</span>[<span class="ruby-value">0</span>], <span class="ruby-identifier">n</span>[<span class="ruby-value">0</span>]]
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">bug_cves</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get_bug_cves-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get_bug_cves-method -->
+
+
+ <div id="simple_format_without_paragraph-method" class="method-detail ">
+ <a name="method-i-simple_format_without_paragraph"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">simple_format_without_paragraph</span><span
+ class="method-args">(text)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Same as Rails’ simple_format helper without using paragraphs</p>
+
+
+
+ <div class="method-source-code" id="simple_format_without_paragraph-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">simple_format_without_paragraph</span>(<span class="ruby-identifier">text</span>)
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">to_s</span>.
+ <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\r\n?/</span>, <span class="ruby-string">&quot;\n&quot;</span>). <span class="ruby-comment"># \r\n and \r -&gt; \n</span>
+ <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\n\n+/</span>, <span class="ruby-string">&quot;&lt;br /&gt;&lt;br /&gt;&quot;</span>). <span class="ruby-comment"># 2+ newline -&gt; 2 br</span>
+ <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/([^\n]\n)(?=[^\n])/</span>, <span class="ruby-string">'\1&lt;br /&gt;'</span>) <span class="ruby-comment"># 1 newline -&gt; br</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- simple_format_without_paragraph-source -->
+
+ </div>
+
+
+
+
+ </div><!-- simple_format_without_paragraph-method -->
+
+
+ <div id="whiteboard_to_severity-method" class="method-detail ">
+ <a name="method-i-whiteboard_to_severity"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">whiteboard_to_severity</span><span
+ class="method-args">(wb)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the appropriate severity setting for a given whiteboard string</p>
+
+
+
+ <div class="method-source-code" id="whiteboard_to_severity-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 73</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">whiteboard_to_severity</span>(<span class="ruby-identifier">wb</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-string">'normal'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">wb</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">2</span>
+
+ <span class="ruby-identifier">ev</span> = <span class="ruby-identifier">wb</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">ev</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'A0'</span>, <span class="ruby-string">'B0'</span>
+ <span class="ruby-string">'blocker'</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'A1'</span>, <span class="ruby-string">'C0'</span>
+ <span class="ruby-string">'critical'</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'A2'</span>, <span class="ruby-string">'B2'</span>, <span class="ruby-string">'C1'</span>
+ <span class="ruby-string">'major'</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'A3'</span>, <span class="ruby-string">'B3'</span>, <span class="ruby-string">'C2'</span>
+ <span class="ruby-string">'normal'</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'A4'</span>, <span class="ruby-string">'B4'</span>, <span class="ruby-string">'C3'</span>
+ <span class="ruby-string">'minor'</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'C4'</span>, <span class="ruby-string">'~0'</span>, <span class="ruby-string">'~1'</span>, <span class="ruby-string">'~2'</span>, <span class="ruby-string">'~3'</span>, <span class="ruby-string">'~4'</span>
+ <span class="ruby-string">'trivial'</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-string">'normal'</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- whiteboard_to_severity-source -->
+
+ </div>
+
+
+
+
+ </div><!-- whiteboard_to_severity-method -->
+
+
+ <div id="with_format-method" class="method-detail ">
+ <a name="method-i-with_format"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">with_format</span><span
+ class="method-args">(format, &block)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="with_format-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/application_helper.rb, line 147</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">with_format</span>(<span class="ruby-identifier">format</span>, &amp;<span class="ruby-identifier">block</span>)
+ <span class="ruby-identifier">old_formats</span> = <span class="ruby-identifier">formats</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">formats</span> = [<span class="ruby-identifier">format</span>]
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>
+ <span class="ruby-keyword">ensure</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">formats</span> = <span class="ruby-identifier">old_formats</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- with_format-source -->
+
+ </div>
+
+
+
+
+ </div><!-- with_format-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Authentication.html b/doc/app/Authentication.html
new file mode 100644
index 0000000..e7184d2
--- /dev/null
+++ b/doc/app/Authentication.html
@@ -0,0 +1,464 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Authentication</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./lib/authentication_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/authentication.rb">lib/authentication.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-included">::included</a></li>
+
+ <li><a href="#method-i-admin_access_required">#admin_access_required</a></li>
+
+ <li><a href="#method-i-current_user">#current_user</a></li>
+
+ <li><a href="#method-i-login_required">#login_required</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Authentication</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Authentication.html">Authentication</a> module</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="protected-class-method-details" class="method-section section">
+ <h3 class="section-header">Protected Class Methods</h3>
+
+
+ <div id="included-method" class="method-detail ">
+ <a name="method-c-included"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">included</span><span
+ class="method-args">(base)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Populate user to views, shamelessly stolen from restful auth. ;)</p>
+
+
+
+ <div class="method-source-code" id="included-source">
+<pre>
+<span class="ruby-comment"># File lib/authentication.rb, line 72</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">included</span>(<span class="ruby-identifier">base</span>)
+ <span class="ruby-identifier">base</span>.<span class="ruby-identifier">send</span> <span class="ruby-value">:helper_method</span>, <span class="ruby-value">:current_user</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">base</span>.<span class="ruby-identifier">respond_to?</span> <span class="ruby-value">:helper_method</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- included-source -->
+
+ </div>
+
+
+
+
+ </div><!-- included-method -->
+
+
+ </div><!-- protected-class-method-details -->
+
+ <div id="protected-instance-method-details" class="method-section section">
+ <h3 class="section-header">Protected Instance Methods</h3>
+
+
+ <div id="admin_access_required-method" class="method-detail ">
+ <a name="method-i-admin_access_required"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">admin_access_required</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Filter for admin pages</p>
+
+
+
+ <div class="method-source-code" id="admin_access_required-source">
+<pre>
+<span class="ruby-comment"># File lib/authentication.rb, line 59</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">admin_access_required</span>
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">is_el_jefe?</span>
+ <span class="ruby-identifier">deny_access</span> <span class="ruby-string">&quot;Admin interface&quot;</span>
+ <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- admin_access_required-source -->
+
+ </div>
+
+
+
+
+ </div><!-- admin_access_required-method -->
+
+
+ <div id="current_user-method" class="method-detail ">
+ <a name="method-i-current_user"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">current_user</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the ActiveRecord object of the currently logged in user</p>
+
+
+
+ <div class="method-source-code" id="current_user-source">
+<pre>
+<span class="ruby-comment"># File lib/authentication.rb, line 67</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">current_user</span>
+ <span class="ruby-constant">User</span>.<span class="ruby-identifier">find_by_login</span>(<span class="ruby-identifier">user_name</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- current_user-source -->
+
+ </div>
+
+
+
+
+ </div><!-- current_user-method -->
+
+
+ <div id="login_required-method" class="method-detail ">
+ <a name="method-i-login_required"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">login_required</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Login filter to be applied to <b>all</b> pages on GLSAMaker</p>
+
+
+
+ <div class="method-source-code" id="login_required-source">
+<pre>
+<span class="ruby-comment"># File lib/authentication.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">login_required</span>
+ <span class="ruby-comment"># Production authentication via REMOTE_USER</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">env</span>.<span class="ruby-identifier">production?</span> <span class="ruby-keyword">or</span> <span class="ruby-constant">GLSAMAKER_FORCE_PRODUCTION_AUTH</span>
+ <span class="ruby-comment"># REMOTE_USER should be there in FCGI or Passenger</span>
+ <span class="ruby-identifier">env_user_name</span> = <span class="ruby-identifier">user_name</span>
+
+ <span class="ruby-comment"># Autentication system most likely broken</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">env_user_name</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-string">&quot;Neither REMOTE_USER nor HTTP_AUTHORIZATION set in environment.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index'</span>, <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'error'</span>, <span class="ruby-value">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'system'</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">find_by_login</span>(<span class="ruby-identifier">env_user_name</span>)
+
+ <span class="ruby-comment"># User not known to GLSAMaker</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">user</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;Unknown user #{env_user_name} tried to log in from #{request.remote_ip}&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index'</span>, <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'error'</span>, <span class="ruby-value">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'user'</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># User is marked as disabled in the DB</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">disabled</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;Disabled user #{env_user_name} tried to log in from #{request.remote_ip}&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index'</span>, <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'error'</span>, <span class="ruby-value">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'disabled'</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># Auth is fine now.</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-node">&quot;Environment username: #{env_user_name}&quot;</span>
+
+ <span class="ruby-comment"># For all other environments request, HTTP auth by ourselves</span>
+ <span class="ruby-comment"># The password can be set in config/initializers/glsamaker.rb</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">authenticate_or_request_with_http_basic</span>(<span class="ruby-string">&quot;GLSAMaker testing environment&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-node">&quot;Environment username: #{username}&quot;</span>
+ <span class="ruby-identifier">check_auth</span>(<span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- login_required-source -->
+
+ </div>
+
+
+
+
+ </div><!-- login_required-method -->
+
+
+ </div><!-- protected-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Authorization.html b/doc/app/Authorization.html
new file mode 100644
index 0000000..b30f20e
--- /dev/null
+++ b/doc/app/Authorization.html
@@ -0,0 +1,435 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Authorization</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./lib/authorization_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/authorization.rb">lib/authorization.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-check_object_access">#check_object_access</a></li>
+
+ <li><a href="#method-i-check_object_access-21">#check_object_access!</a></li>
+
+ <li><a href="#method-i-deny_access">#deny_access</a></li>
+
+ <li><a href="#method-i-log_unauthorized_access">#log_unauthorized_access</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Authorization</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Authorization.html">Authorization</a> module</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="check_object_access-method" class="method-detail ">
+ <a name="method-i-check_object_access"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">check_object_access</span><span
+ class="method-args">(glsa)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Checks access to a given GLSA</p>
+
+
+
+ <div class="method-source-code" id="check_object_access-source">
+<pre>
+<span class="ruby-comment"># File lib/authorization.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">check_object_access</span>(<span class="ruby-identifier">glsa</span>)
+ <span class="ruby-comment"># Contributor, no foreign drafts</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">access</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">is_owner?</span> <span class="ruby-identifier">current_user</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">access</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">3</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">restricted</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- check_object_access-source -->
+
+ </div>
+
+
+
+
+ </div><!-- check_object_access-method -->
+
+
+ <div id="check_object_access-21-method" class="method-detail ">
+ <a name="method-i-check_object_access-21"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">check_object_access!</span><span
+ class="method-args">(glsa)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Checks access to a given GLSA, and aborts the request if the user does not
+have sufficient permissions</p>
+
+
+
+ <div class="method-source-code" id="check_object_access-21-source">
+<pre>
+<span class="ruby-comment"># File lib/authorization.rb, line 30</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-identifier">glsa</span>)
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access</span>(<span class="ruby-identifier">glsa</span>)
+ <span class="ruby-identifier">deny_access</span> <span class="ruby-node">&quot;Access to restricted GLSA #{glsa.id} (#{params[:action]})&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- check_object_access-21-source -->
+
+ </div>
+
+
+
+
+ </div><!-- check_object_access-21-method -->
+
+
+ <div id="deny_access-method" class="method-detail ">
+ <a name="method-i-deny_access"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">deny_access</span><span
+ class="method-args">(msg)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Redirects the user to a ‘Access Denied’ screen and logs the incident</p>
+
+
+
+ <div class="method-source-code" id="deny_access-source">
+<pre>
+<span class="ruby-comment"># File lib/authorization.rb, line 40</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">deny_access</span>(<span class="ruby-identifier">msg</span>)
+ <span class="ruby-identifier">log_unauthorized_access</span> <span class="ruby-identifier">msg</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'/index'</span>, <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'error'</span>, <span class="ruby-value">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'access'</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- deny_access-source -->
+
+ </div>
+
+
+
+
+ </div><!-- deny_access-method -->
+
+
+ <div id="log_unauthorized_access-method" class="method-detail ">
+ <a name="method-i-log_unauthorized_access"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">log_unauthorized_access</span><span
+ class="method-args">(msg)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Logs an unauthorized access attempt</p>
+
+
+
+ <div class="method-source-code" id="log_unauthorized_access-source">
+<pre>
+<span class="ruby-comment"># File lib/authorization.rb, line 46</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">log_unauthorized_access</span>(<span class="ruby-identifier">msg</span>)
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;[#{Time.now.rfc2822}] UNAUTHORIZED ACCESS by #{current_user.login} from #{request.remote_ip} to #{request.url}: #{msg}&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- log_unauthorized_access-source -->
+
+ </div>
+
+
+
+
+ </div><!-- log_unauthorized_access-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bug.html b/doc/app/Bug.html
new file mode 100644
index 0000000..1c2d6e8
--- /dev/null
+++ b/doc/app/Bug.html
@@ -0,0 +1,423 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Bug</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/bug_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/bug.rb">app/models/bug.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-bug_url">#bug_url</a></li>
+
+ <li><a href="#method-i-cc">#cc</a></li>
+
+ <li><a href="#method-i-update_cached_metadata">#update_cached_metadata</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><a class="include" href="Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+
+
+ <li><a class="include" href="Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+
+
+ <li><a class="include" href="Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Bug</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Bug.html">Bug</a> model</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="bug_url-method" class="method-detail ">
+ <a name="method-i-bug_url"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug_url</span><span
+ class="method-args">(secure = true)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the Gentoo <a href="Bugzilla.html">Bugzilla</a> URI for the bug.
+Set <tt>secure</tt> to false to get a HTTP instead of a HTTPS URI</p>
+
+
+
+ <div class="method-source-code" id="bug_url-source">
+<pre>
+<span class="ruby-comment"># File app/models/bug.rb, line 32</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug_url</span>(<span class="ruby-identifier">secure</span> = <span class="ruby-keyword">true</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">secure</span>
+ <span class="ruby-node">&quot;https://#{GLSAMAKER_BUGZIE_HOST}/show_bug.cgi?id=#{self.bug_id}&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-node">&quot;http://#{GLSAMAKER_BUGZIE_HOST}/show_bug.cgi?id=#{self.bug_id}&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug_url-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug_url-method -->
+
+
+ <div id="cc-method" class="method-detail ">
+ <a name="method-i-cc"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">cc</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="cc-source">
+<pre>
+<span class="ruby-comment"># File app/models/bug.rb, line 22</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">cc</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">arches</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- cc-source -->
+
+ </div>
+
+
+
+
+ </div><!-- cc-method -->
+
+
+ <div id="update_cached_metadata-method" class="method-detail ">
+ <a name="method-i-update_cached_metadata"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update_cached_metadata</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Updates the cached bug metadata</p>
+
+
+
+ <div class="method-source-code" id="update_cached_metadata-source">
+<pre>
+<span class="ruby-comment"># File app/models/bug.rb, line 41</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update_cached_metadata</span>
+ <span class="ruby-identifier">b</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug_id</span>)
+
+ <span class="ruby-identifier">update_attributes!</span>(
+ <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">summary</span>,
+ <span class="ruby-value">:whiteboard</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">status_whiteboard</span>,
+ <span class="ruby-value">:arches</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">arch_cc</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">', '</span>)
+ )
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Could not update cached metadata: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update_cached_metadata-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update_cached_metadata-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/BugController.html b/doc/app/BugController.html
new file mode 100644
index 0000000..e6aecc9
--- /dev/null
+++ b/doc/app/BugController.html
@@ -0,0 +1,383 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: BugController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/bug_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/bug_controller.rb">app/controllers/bug_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-bug">#bug</a></li>
+
+ <li><a href="#method-i-history">#history</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">BugController</h1>
+
+ <div id="description" class="description">
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="bug-method" class="method-detail ">
+ <a name="method-i-bug"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="bug-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/bug_controller.rb, line 13</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>].<span class="ruby-identifier">to_i</span>)
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">SocketError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-string">&quot;down&quot;</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">ArgumentError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug-method -->
+
+
+ <div id="history-method" class="method-detail ">
+ <a name="method-i-history"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">history</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="history-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/bug_controller.rb, line 27</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">history</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>].<span class="ruby-identifier">to_i</span>)
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">SocketError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-string">&quot;down&quot;</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">ArgumentError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- history-source -->
+
+ </div>
+
+
+
+
+ </div><!-- history-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/BugHelper.html b/doc/app/BugHelper.html
new file mode 100644
index 0000000..2c61ef9
--- /dev/null
+++ b/doc/app/BugHelper.html
@@ -0,0 +1,311 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: BugHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/bug_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/bug_helper.rb">app/helpers/bug_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-linkify_comment">#linkify_comment</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">BugHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="linkify_comment-method" class="method-detail ">
+ <a name="method-i-linkify_comment"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">linkify_comment</span><span
+ class="method-args">(text)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Creates links around common phrases like <tt>Bug 12345</tt> or <tt>Comment
+234</tt></p>
+
+
+
+ <div class="method-source-code" id="linkify_comment-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/bug_helper.rb, line 5</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">linkify_comment</span>(<span class="ruby-identifier">text</span>)
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/bug (\d+)/</span>, <span class="ruby-identifier">link_to_function</span>(<span class="ruby-string">'bug \1'</span>, <span class="ruby-string">'buginfo(\1);'</span>))
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- linkify_comment-source -->
+
+ </div>
+
+
+
+
+ </div><!-- linkify_comment-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/BugsController.html b/doc/app/BugsController.html
new file mode 100644
index 0000000..88b04d3
--- /dev/null
+++ b/doc/app/BugsController.html
@@ -0,0 +1,449 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: BugsController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/bugs_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/bugs_controller.rb">app/controllers/bugs_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-create">#create</a></li>
+
+ <li><a href="#method-i-destroy">#destroy</a></li>
+
+ <li><a href="#method-i-new">#new</a></li>
+
+ <li><a href="#method-i-show">#show</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">BugsController</h1>
+
+ <div id="description" class="description">
+
+<p><a href="BugsController.html">BugsController</a> handles bugs attached to
+GLSAs</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="create-method" class="method-detail ">
+ <a name="method-i-create"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">create</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="create-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/bugs_controller.rb, line 24</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa_id</span>].<span class="ruby-identifier">to_i</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-ivar">@added_bugs</span> = []
+ <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:addbugs</span>]).<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bugid</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@added_bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bugid</span>)
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-comment"># Silently ignore invalid bugs</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@bugs_text</span> = <span class="ruby-identifier">render_to_string</span> <span class="ruby-value">:partial</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'/glsa/edit_bug_row'</span>, <span class="ruby-value">:collection</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@added_bugs</span>, <span class="ruby-value">:as</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:bug</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-node">&quot;Error: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-string">&quot;Cannot find GLSA&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- create-source -->
+
+ </div>
+
+
+
+
+ </div><!-- create-method -->
+
+
+ <div id="destroy-method" class="method-detail ">
+ <a name="method-i-destroy"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">destroy</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="destroy-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/bugs_controller.rb, line 48</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- destroy-source -->
+
+ </div>
+
+
+
+
+ </div><!-- destroy-method -->
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-i-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/bugs_controller.rb, line 15</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-constant">Integer</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa_id</span>]))
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-constant">Bug</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ <div id="show-method" class="method-detail ">
+ <a name="method-i-show"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">show</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="show-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/bugs_controller.rb, line 51</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">show</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- show-source -->
+
+ </div>
+
+
+
+
+ </div><!-- show-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/BugsHelper.html b/doc/app/BugsHelper.html
new file mode 100644
index 0000000..43597ab
--- /dev/null
+++ b/doc/app/BugsHelper.html
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: BugsHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/bugs_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/bugs_helper.rb">app/helpers/bugs_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">BugsHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla.html b/doc/app/Bugzilla.html
new file mode 100644
index 0000000..6a47185
--- /dev/null
+++ b/doc/app/Bugzilla.html
@@ -0,0 +1,619 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Bugzilla</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./lib/bugzilla_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla.rb">lib/bugzilla.rb</a></li>
+
+ <li><a href="./lib/bugzilla/bug_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/bug.rb">lib/bugzilla/bug.rb</a></li>
+
+ <li><a href="./lib/bugzilla/history_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/history.rb">lib/bugzilla/history.rb</a></li>
+
+ <li><a href="./lib/bugzilla/comment_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/comment.rb">lib/bugzilla/comment.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">MODULE</span> <a href="Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Bugzilla/History.html">Bugzilla::History</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-add_comment">#add_comment</a></li>
+
+ <li><a href="#method-i-file_bug">#file_bug</a></li>
+
+ <li><a href="#method-i-log_in">#log_in</a></li>
+
+ <li><a href="#method-i-update_bug">#update_bug</a></li>
+
+ <li><a href="#method-i-xmlrpc_client">#xmlrpc_client</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Bugzilla</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Bugzilla/Bugzilla.html">Bugzilla</a> module</p>
+<hr style="height: 1px">
+
+<p>Encapsulates a <a href="Bugzilla/Bugzilla.html">Bugzilla</a> <a
+href="Bugzilla/Bug.html">Bug</a></p>
+<hr style="height: 1px">
+
+<p>Encapsulates a bug’s history</p>
+<hr style="height: 1px">
+
+<p>Encapsulates a comment to a <a href="Bugzilla/Bug.html">Bug</a></p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="add_comment-method" class="method-detail ">
+ <a name="method-i-add_comment"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_comment</span><span
+ class="method-args">(bug, comment)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Adds a comment to a bug. Returns the comment id on success, raises an
+exception on failure.</p>
+
+
+
+ <div class="method-source-code" id="add_comment-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla.rb, line 25</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_comment</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-identifier">comment</span>)
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">'Called Bugzilla.add_comment'</span>
+ <span class="ruby-identifier">did_retry</span> = <span class="ruby-keyword">false</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">client</span> = <span class="ruby-identifier">xmlrpc_client</span>
+
+ <span class="ruby-identifier">result</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-string">'Bug.add_comment'</span>, {
+ <span class="ruby-string">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">to_i</span>,
+ <span class="ruby-string">'comment'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">comment</span>
+ })
+ <span class="ruby-identifier">result</span>[<span class="ruby-string">'id'</span>]
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">XMLRPC</span><span class="ruby-operator">::</span><span class="ruby-constant">FaultException</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">did_retry</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Could not add the comment: #{e.faultString} (code #{e.faultCode})&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># If we need to log in first</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">faultCode</span> <span class="ruby-operator">==</span> <span class="ruby-value">410</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">&quot;Not logged in, doing that now.&quot;</span>
+ <span class="ruby-identifier">log_in</span>
+ <span class="ruby-identifier">did_retry</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">retry</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Could not add the comment: #{e.faultString} (code #{e.faultCode})&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_comment-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_comment-method -->
+
+
+ <div id="file_bug-method" class="method-detail ">
+ <a name="method-i-file_bug"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">file_bug</span><span
+ class="method-args">(data)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Files a bug, and returns the id of the filed bug</p>
+
+
+
+ <div class="method-source-code" id="file_bug-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla.rb, line 100</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">file_bug</span>(<span class="ruby-identifier">data</span>)
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">'Called Bugzilla.file_bug'</span>
+ <span class="ruby-identifier">did_retry</span> = <span class="ruby-keyword">false</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">client</span> = <span class="ruby-identifier">xmlrpc_client</span>
+
+ <span class="ruby-identifier">rpc_data</span> = {}
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'component'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:component</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:component</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'product'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:product</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:product</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'summary'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:summary</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:summary</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'version'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:version</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:version</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'description'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:comment</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:comment</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'priority'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:priority</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:priority</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'severity'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:severity</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:severity</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'alias'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:alias</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:alias</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'assigned_to'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:assignee</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:assignee</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'cc'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:cc</span>].<span class="ruby-identifier">to_a</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:cc</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'status'</span>] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:status</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:status</span>)
+
+ <span class="ruby-identifier">result</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-string">'Bug.create'</span>, <span class="ruby-identifier">rpc_data</span>)
+ <span class="ruby-identifier">result</span>[<span class="ruby-string">'id'</span>]
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">XMLRPC</span><span class="ruby-operator">::</span><span class="ruby-constant">FaultException</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">did_retry</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Could not file the bug: #{e.faultString} (code #{e.faultCode})&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># If we need to log in first</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">faultCode</span> <span class="ruby-operator">==</span> <span class="ruby-value">410</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">&quot;Not logged in, doing that now.&quot;</span>
+ <span class="ruby-identifier">log_in</span>
+ <span class="ruby-identifier">did_retry</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">retry</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Could not file the bug: #{e.faultString} (code #{e.faultCode})&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- file_bug-source -->
+
+ </div>
+
+
+
+
+ </div><!-- file_bug-method -->
+
+
+ <div id="log_in-method" class="method-detail ">
+ <a name="method-i-log_in"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">log_in</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="log_in-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla.rb, line 139</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">log_in</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">&quot;Called Bugzilla.log_in&quot;</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">GLSAMAKER_BUGZIE_USER</span> <span class="ruby-keyword">and</span> <span class="ruby-constant">GLSAMAKER_BUGZIE_PW</span>
+
+ <span class="ruby-identifier">client</span> = <span class="ruby-identifier">xmlrpc_client</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">result</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-string">'User.login'</span>, {
+ <span class="ruby-string">'login'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GLSAMAKER_BUGZIE_USER</span>,
+ <span class="ruby-string">'password'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GLSAMAKER_BUGZIE_PW</span>
+ })
+
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-node">&quot;Successfully logged in. UID: #{result['id']}&quot;</span>
+
+ <span class="ruby-identifier">cookie_file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">root</span>, <span class="ruby-string">'tmp'</span>, <span class="ruby-string">'bugzie-cookies.txt'</span>)
+ <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">rm</span>(<span class="ruby-identifier">cookie_file</span>) <span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">cookie_file</span>)
+ <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">touch</span>(<span class="ruby-identifier">cookie_file</span>)
+ <span class="ruby-constant">File</span>.<span class="ruby-identifier">chmod</span>(<span class="ruby-value">0600</span>, <span class="ruby-identifier">cookie_file</span>)
+ <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">cookie_file</span>, <span class="ruby-string">'w'</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">write</span> <span class="ruby-identifier">client</span>.<span class="ruby-identifier">cookie</span> }
+
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">XMLRPC</span><span class="ruby-operator">::</span><span class="ruby-constant">FaultException</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;Failure logging in: #{e.message}&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- log_in-source -->
+
+ </div>
+
+
+
+
+ </div><!-- log_in-method -->
+
+
+ <div id="update_bug-method" class="method-detail ">
+ <a name="method-i-update_bug"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update_bug</span><span
+ class="method-args">(bug, changes = {})</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Updates a bug. Returns an array of changes that were done on the bug.</p>
+
+
+
+ <div class="method-source-code" id="update_bug-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla.rb, line 56</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update_bug</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-identifier">changes</span> = {})
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">'Called Bugzilla.update_bug'</span>
+ <span class="ruby-identifier">did_retry</span> = <span class="ruby-keyword">false</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">client</span> = <span class="ruby-identifier">xmlrpc_client</span>
+
+ <span class="ruby-identifier">rpc_data</span> = {}
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'ids'</span>] = [<span class="ruby-identifier">bug</span>]
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'component'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:component</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:component</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'product'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:product</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:product</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'summary'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:summary</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:summary</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'version'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:version</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:version</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'comment'</span>] = {<span class="ruby-string">'body'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">changes</span>[<span class="ruby-value">:comment</span>]} <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:comment</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'priority'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:priority</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:priority</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'severity'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:severity</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:severity</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'alias'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:alias</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:alias</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'assigned_to'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:assignee</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:assignee</span>)
+ <span class="ruby-comment">#rpc_data['cc'] = changes[:cc].to_a if changes.has_key?(:cc) TODO: add and remove</span>
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'status'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:status</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:status</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'whiteboard'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:whiteboard</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:whiteboard</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'url'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:url</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:url</span>)
+ <span class="ruby-identifier">rpc_data</span>[<span class="ruby-string">'resolution'</span>] = <span class="ruby-identifier">changes</span>[<span class="ruby-value">:resolution</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:resolution</span>)
+
+ <span class="ruby-identifier">result</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-string">'Bug.update'</span>, <span class="ruby-identifier">rpc_data</span>)
+ <span class="ruby-identifier">result</span>[<span class="ruby-string">'bugs'</span>].<span class="ruby-identifier">first</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">XMLRPC</span><span class="ruby-operator">::</span><span class="ruby-constant">FaultException</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">did_retry</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Could not file the bug: #{e.faultString} (code #{e.faultCode})&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># If we need to log in first</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">faultCode</span> <span class="ruby-operator">==</span> <span class="ruby-value">410</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-string">&quot;Not logged in, doing that now.&quot;</span>
+ <span class="ruby-identifier">log_in</span>
+ <span class="ruby-identifier">did_retry</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">retry</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Could not file the bug: #{e.faultString} (code #{e.faultCode})&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update_bug-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update_bug-method -->
+
+
+ <div id="xmlrpc_client-method" class="method-detail ">
+ <a name="method-i-xmlrpc_client"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">xmlrpc_client</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="xmlrpc_client-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla.rb, line 166</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">xmlrpc_client</span>
+ <span class="ruby-identifier">client</span> = <span class="ruby-constant">XMLRPC</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">GLSAMAKER_BUGZIE_HOST</span>, <span class="ruby-string">'/xmlrpc.cgi'</span>, <span class="ruby-value">443</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-keyword">true</span>)
+ <span class="ruby-identifier">client</span>.<span class="ruby-identifier">http_header_extra</span> = {<span class="ruby-string">'User-Agent'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;GLSAMaker/#{GLSAMAKER_VERSION} (http://security.gentoo.org/)&quot;</span>}
+
+ <span class="ruby-identifier">cookie_file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">root</span>, <span class="ruby-string">'tmp'</span>, <span class="ruby-string">'bugzie-cookies.txt'</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">readable?</span> <span class="ruby-identifier">cookie_file</span>
+ <span class="ruby-identifier">client</span>.<span class="ruby-identifier">cookie</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">cookie_file</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">client</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- xmlrpc_client-source -->
+
+ </div>
+
+
+
+
+ </div><!-- xmlrpc_client-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla/Bug.html b/doc/app/Bugzilla/Bug.html
new file mode 100644
index 0000000..5271ac6
--- /dev/null
+++ b/doc/app/Bugzilla/Bug.html
@@ -0,0 +1,859 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Bugzilla::Bug</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/bugzilla/bug_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/bug.rb">lib/bugzilla/bug.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-load_from_id">::load_from_id</a></li>
+
+ <li><a href="#method-c-new">::new</a></li>
+
+ <li><a href="#method-c-str2bugIDs">::str2bugIDs</a></li>
+
+ <li><a href="#method-i-description">#description</a></li>
+
+ <li><a href="#method-i-history">#history</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Bugzilla::Bug</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+ <!-- Attributes -->
+ <div id="attribute-method-details" class="method-section section">
+ <h3 class="section-header">Attributes</h3>
+
+
+ <div id="alias-attribute-method" class="method-detail">
+ <a name="alias"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">alias</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="assigned_to-attribute-method" class="method-detail">
+ <a name="assigned_to"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">assigned_to</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="blocks-attribute-method" class="method-detail">
+ <a name="blocks"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">blocks</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="bug_id-attribute-method" class="method-detail">
+ <a name="bug_id"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">bug_id</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="cc-attribute-method" class="method-detail">
+ <a name="cc"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">cc</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="comments-attribute-method" class="method-detail">
+ <a name="comments"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">comments</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="component-attribute-method" class="method-detail">
+ <a name="component"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">component</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="created_at-attribute-method" class="method-detail">
+ <a name="created_at"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">created_at</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="depends-attribute-method" class="method-detail">
+ <a name="depends"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">depends</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="priority-attribute-method" class="method-detail">
+ <a name="priority"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">priority</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="product-attribute-method" class="method-detail">
+ <a name="product"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">product</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="reporter-attribute-method" class="method-detail">
+ <a name="reporter"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">reporter</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="resolution-attribute-method" class="method-detail">
+ <a name="resolution"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">resolution</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="restricted-attribute-method" class="method-detail">
+ <a name="restricted"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">restricted</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="severity-attribute-method" class="method-detail">
+ <a name="severity"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">severity</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="status-attribute-method" class="method-detail">
+ <a name="status"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">status</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="status_whiteboard-attribute-method" class="method-detail">
+ <a name="status_whiteboard"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">status_whiteboard</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="summary-attribute-method" class="method-detail">
+ <a name="summary"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">summary</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="title-attribute-method" class="method-detail">
+ <a name="title"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">title</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="url-attribute-method" class="method-detail">
+ <a name="url"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">url</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ </div><!-- attribute-method-details -->
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="load_from_id-method" class="method-detail ">
+ <a name="method-c-load_from_id"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">load_from_id</span><span
+ class="method-args">(bugid)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Creates a new <tt>Bug</tt> object from the Gentoo bug referenced as
+#<tt>bugid</tt></p>
+
+
+
+ <div class="method-source-code" id="load_from_id-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/bug.rb, line 21</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bugid</span>)
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">id</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">bugid</span>)
+
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">ArgumentError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid Bug ID&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-node">&quot;https://#{GLSAMAKER_BUGZIE_HOST}/show_bug.cgi?ctype=xml&amp;id=#{id}&quot;</span>))
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">SocketError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">SocketError</span>, <span class="ruby-node">&quot;Bugzilla is unreachable: #{e.message}&quot;</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Couldn't load bug: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">root</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">&quot;bug&quot;</span>).<span class="ruby-identifier">first</span>, <span class="ruby-identifier">bugid</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- load_from_id-source -->
+
+ </div>
+
+
+
+
+ </div><!-- load_from_id-method -->
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-c-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(bug, id)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/bug.rb, line 54</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-identifier">id</span>)
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Nokogiri failure&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">bug</span>[<span class="ruby-string">&quot;error&quot;</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;NotFound&quot;</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Bug not found&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">bug</span>[<span class="ruby-string">&quot;error&quot;</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;NotPermitted&quot;</span>
+ <span class="ruby-ivar">@bug_id</span> = <span class="ruby-identifier">id</span>
+ <span class="ruby-ivar">@restricted</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@restricted</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-ivar">@cc</span> = []
+ <span class="ruby-ivar">@depends</span> = []
+ <span class="ruby-ivar">@blocks</span> = []
+ <span class="ruby-ivar">@comments</span> = []
+
+ <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
+ <span class="ruby-comment"># Ignore whitespace</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Node</span><span class="ruby-operator">::</span><span class="ruby-constant">TEXT_NODE</span>
+ <span class="ruby-comment"># Ignore empty nodes</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">name</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;bug_id&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@bug_id</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;short_desc&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@summary</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;creation_ts&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@created_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">content_in</span>(<span class="ruby-identifier">node</span>))
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;reporter&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@reporter</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;alias&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@alias</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;assigned_to&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@assigned_to</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;cc&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@cc</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">content_in</span>(<span class="ruby-identifier">node</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;status_whiteboard&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@status_whiteboard</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;product&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@product</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;component&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@component</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;bug_status&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@status</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;resolution&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@resolution</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;bug_file_loc&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@url</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;bug_severity&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@severity</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;priority&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@priority</span> = <span class="ruby-identifier">content_in</span> <span class="ruby-identifier">node</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;dependson&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@depends</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">content_in</span>(<span class="ruby-identifier">node</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;blocked&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@blocks</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">content_in</span>(<span class="ruby-identifier">node</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-string">&quot;long_desc&quot;</span> <span class="ruby-keyword">then</span>
+ <span class="ruby-ivar">@comments</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Comment</span>.<span class="ruby-identifier">new</span>(
+ <span class="ruby-identifier">node</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">&quot;who&quot;</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">to_s</span>,
+ <span class="ruby-identifier">node</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">&quot;thetext&quot;</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">to_s</span>,
+ <span class="ruby-identifier">node</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">&quot;bug_when&quot;</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">to_s</span>
+ )
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ <div id="str2bugIDs-method" class="method-detail ">
+ <a name="method-c-str2bugIDs"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">str2bugIDs</span><span
+ class="method-args">(str)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Splits a <a href="../String.html">String</a> <tt>str</tt> into an array of
+valid bug IDs</p>
+
+
+
+ <div class="method-source-code" id="str2bugIDs-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/bug.rb, line 130</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">str</span>)
+ <span class="ruby-identifier">bug_ids</span> = <span class="ruby-identifier">str</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,\s*/</span>)
+
+ <span class="ruby-identifier">bug_ids</span>.<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\D/</span>, <span class="ruby-string">''</span>)
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- str2bugIDs-source -->
+
+ </div>
+
+
+
+
+ </div><!-- str2bugIDs-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="description-method" class="method-detail ">
+ <a name="method-i-description"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">description</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the initial bug description</p>
+
+
+
+ <div class="method-source-code" id="description-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/bug.rb, line 125</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">description</span>
+ <span class="ruby-ivar">@comments</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">text</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- description-source -->
+
+ </div>
+
+
+
+
+ </div><!-- description-method -->
+
+
+ <div id="history-method" class="method-detail ">
+ <a name="method-i-history"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">history</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="history-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/bug.rb, line 50</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">history</span>()
+ <span class="ruby-ivar">@history</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">History</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- history-source -->
+
+ </div>
+
+
+
+
+ </div><!-- history-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla/Bugzilla.html b/doc/app/Bugzilla/Bugzilla.html
new file mode 100644
index 0000000..eb7b038
--- /dev/null
+++ b/doc/app/Bugzilla/Bugzilla.html
@@ -0,0 +1,268 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Bugzilla::Bugzilla</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">MODULE</span> <a href="Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ </ul>
+ </div>
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Bugzilla::Bugzilla</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla/Bugzilla/Bugzilla.html b/doc/app/Bugzilla/Bugzilla/Bugzilla.html
new file mode 100644
index 0000000..e9973d4
--- /dev/null
+++ b/doc/app/Bugzilla/Bugzilla/Bugzilla.html
@@ -0,0 +1,268 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Bugzilla::Bugzilla::Bugzilla</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">CLASS</span> <a href="Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ </ul>
+ </div>
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Bugzilla::Bugzilla::Bugzilla</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla/Bugzilla/Bugzilla/Change.html b/doc/app/Bugzilla/Bugzilla/Bugzilla/Change.html
new file mode 100644
index 0000000..b80192d
--- /dev/null
+++ b/doc/app/Bugzilla/Bugzilla/Bugzilla/Change.html
@@ -0,0 +1,461 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Bugzilla::Bugzilla::Bugzilla::Change</title>
+
+ <link rel="stylesheet" href="../../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../../index.html">Home</a>
+ <a href="../../../index.html#classes">Classes</a>
+ <a href="../../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../../lib/bugzilla/history_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/history.rb">lib/bugzilla/history.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-new">::new</a></li>
+
+ <li><a href="#method-i-add_change">#add_change</a></li>
+
+ <li><a href="#method-i-to_s">#to_s</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../../Admin.html">Admin</a></li>
+
+ <li><a href="../../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../../Comment.html">Comment</a></li>
+
+ <li><a href="../../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../../Bug.html">Bug</a></li>
+
+ <li><a href="../../../BugController.html">BugController</a></li>
+
+ <li><a href="../../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../../Cve.html">Cve</a></li>
+
+ <li><a href="../../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../../CveController.html">CveController</a></li>
+
+ <li><a href="../../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../../Package.html">Package</a></li>
+
+ <li><a href="../../../Reference.html">Reference</a></li>
+
+ <li><a href="../../../Revision.html">Revision</a></li>
+
+ <li><a href="../../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../../String.html">String</a></li>
+
+ <li><a href="../../../Template.html">Template</a></li>
+
+ <li><a href="../../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Bugzilla::Bugzilla::Bugzilla::Change</h1>
+
+ <div id="description" class="description">
+
+<p>This represents a single <a href="Change.html">Change</a> made to a <a
+href="../../Bug.html">Bug</a></p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+ <!-- Attributes -->
+ <div id="attribute-method-details" class="method-section section">
+ <h3 class="section-header">Attributes</h3>
+
+
+ <div id="changes-attribute-method" class="method-detail">
+ <a name="changes"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">changes</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="time-attribute-method" class="method-detail">
+ <a name="time"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">time</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="user-attribute-method" class="method-detail">
+ <a name="user"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">user</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ </div><!-- attribute-method-details -->
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-c-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(user, time)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Creates a new <a href="Change.html">Change</a> made by <tt>user</tt> at
+<tt>time</tt>.</p>
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/history.rb, line 80</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">time</span>)
+ <span class="ruby-ivar">@user</span> = <span class="ruby-identifier">user</span> <span class="ruby-operator">||</span> <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-ivar">@time</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">time</span>)
+ <span class="ruby-ivar">@changes</span> = {}
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="add_change-method" class="method-detail ">
+ <a name="method-i-add_change"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_change</span><span
+ class="method-args">(field, removed, added)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Adds a changed <tt>field</tt> to the <a href="Change.html">Change</a>
+object. <tt>removed</tt> denotes the removed text and <tt>added</tt> is the
+new text</p>
+
+
+
+ <div class="method-source-code" id="add_change-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/history.rb, line 88</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_change</span>(<span class="ruby-identifier">field</span>, <span class="ruby-identifier">removed</span>, <span class="ruby-identifier">added</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;field has to be a symbol&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">field</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Symbol</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">field</span>)
+ <span class="ruby-ivar">@changes</span>[<span class="ruby-identifier">field</span>][<span class="ruby-value">0</span>] <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; #{removed}&quot;</span>
+ <span class="ruby-ivar">@changes</span>[<span class="ruby-identifier">field</span>][<span class="ruby-value">1</span>] <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; #{added}&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@changes</span>[<span class="ruby-identifier">field</span>] = [<span class="ruby-identifier">removed</span>, <span class="ruby-identifier">added</span>]
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_change-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_change-method -->
+
+
+ <div id="to_s-method" class="method-detail ">
+ <a name="method-i-to_s"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">to_s</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns a string representation</p>
+
+
+
+ <div class="method-source-code" id="to_s-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/history.rb, line 100</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
+ <span class="ruby-node">&quot;#{@user} changed at #{@time.to_s}: #{@changes.inspect}&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- to_s-source -->
+
+ </div>
+
+
+
+
+ </div><!-- to_s-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla/Comment.html b/doc/app/Bugzilla/Comment.html
new file mode 100644
index 0000000..3db75d2
--- /dev/null
+++ b/doc/app/Bugzilla/Comment.html
@@ -0,0 +1,372 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Bugzilla::Comment</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/bugzilla/comment_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/comment.rb">lib/bugzilla/comment.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-new">::new</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Bugzilla::Comment</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+ <!-- Attributes -->
+ <div id="attribute-method-details" class="method-section section">
+ <h3 class="section-header">Attributes</h3>
+
+
+ <div id="author-attribute-method" class="method-detail">
+ <a name="author"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">author</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="date-attribute-method" class="method-detail">
+ <a name="date"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">date</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ <div id="text-attribute-method" class="method-detail">
+ <a name="text"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">text</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ </div><!-- attribute-method-details -->
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-c-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(by, text, date)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/comment.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">by</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">date</span>)
+ <span class="ruby-ivar">@author</span> = <span class="ruby-identifier">by</span>
+ <span class="ruby-ivar">@text</span> = <span class="ruby-identifier">text</span>
+ <span class="ruby-ivar">@date</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">date</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Bugzilla/History.html b/doc/app/Bugzilla/History.html
new file mode 100644
index 0000000..b4b5d04
--- /dev/null
+++ b/doc/app/Bugzilla/History.html
@@ -0,0 +1,470 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Bugzilla::History</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/bugzilla/history_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/bugzilla/history.rb">lib/bugzilla/history.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-new">::new</a></li>
+
+ <li><a href="#method-i-by_field">#by_field</a></li>
+
+ <li><a href="#method-i-by_user">#by_user</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Bugzilla::History</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+ <!-- Attributes -->
+ <div id="attribute-method-details" class="method-section section">
+ <h3 class="section-header">Attributes</h3>
+
+
+ <div id="changes-attribute-method" class="method-detail">
+ <a name="changes"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">changes</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ </div><!-- attribute-method-details -->
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-c-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(bug)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Creates a new <a href="History.html">History</a> for the <a
+href="Bug.html">Bug</a> object <tt>bug</tt>.</p>
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/history.rb, line 7</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">bug</span>)
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">respond_to?</span> <span class="ruby-value">:bug_id</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Need a bug (or something that at least looks like a bug)&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">html</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">HTML</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-node">&quot;https://bugs.gentoo.org/show_activity.cgi?id=#{bug.bug_id}&quot;</span>))
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Couldn't load the bug history: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@changes</span> = []
+ <span class="ruby-identifier">change_cache</span> = <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-identifier">html</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">&quot;/html/body/table/tr&quot;</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
+ <span class="ruby-comment"># ignore header line</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;th&quot;</span>
+
+ <span class="ruby-comment"># First line in a multi-change set</span>
+ <span class="ruby-keyword">unless</span> (<span class="ruby-identifier">chcount</span> = <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>[<span class="ruby-string">&quot;rowspan&quot;</span>]) <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">change_cache</span> = <span class="ruby-constant">Change</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>, <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>)
+
+ <span class="ruby-identifier">change_cache</span>.<span class="ruby-identifier">add_change</span>(
+ <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">to_sym</span>,
+ <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">6</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>,
+ <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">8</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>
+ )
+
+ <span class="ruby-ivar">@changes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">change_cache</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">change_cache</span>.<span class="ruby-identifier">add_change</span>(
+ <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">to_sym</span>,
+ <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>,
+ <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>
+ )
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="by_field-method" class="method-detail ">
+ <a name="method-i-by_field"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">by_field</span><span
+ class="method-args">(field)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns an Array of Changes made to the field <tt>field</tt></p>
+
+
+
+ <div class="method-source-code" id="by_field-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/history.rb, line 47</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">by_field</span>(<span class="ruby-identifier">field</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Symbol expected&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">field</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Symbol</span>
+
+ <span class="ruby-identifier">changes</span> = []
+
+ <span class="ruby-ivar">@changes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">change</span>.<span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">field</span>)
+ <span class="ruby-identifier">changes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">change</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">changes</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- by_field-source -->
+
+ </div>
+
+
+
+
+ </div><!-- by_field-method -->
+
+
+ <div id="by_user-method" class="method-detail ">
+ <a name="method-i-by_user"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">by_user</span><span
+ class="method-args">(user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns an Array of Changes made by the user <tt>user</tt></p>
+
+
+
+ <div class="method-source-code" id="by_user-source">
+<pre>
+<span class="ruby-comment"># File lib/bugzilla/history.rb, line 62</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">by_user</span>(<span class="ruby-identifier">user</span>)
+ <span class="ruby-identifier">changes</span> = []
+
+ <span class="ruby-ivar">@changes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">change</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">user</span>
+ <span class="ruby-identifier">changes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">change</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">changes</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- by_user-source -->
+
+ </div>
+
+
+
+
+ </div><!-- by_user-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Comment.html b/doc/app/Comment.html
new file mode 100644
index 0000000..912a6d8
--- /dev/null
+++ b/doc/app/Comment.html
@@ -0,0 +1,293 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Comment</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/comment_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/comment.rb">app/models/comment.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">CLASS</span> <a href="Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ </ul>
+ </div>
+
+
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><span class="include">ActiveModel::Validations</span></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Comment</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Comment.html">Comment</a> model</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Comment/CommentValidator.html b/doc/app/Comment/CommentValidator.html
new file mode 100644
index 0000000..e2895ab
--- /dev/null
+++ b/doc/app/Comment/CommentValidator.html
@@ -0,0 +1,328 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Comment::CommentValidator</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../app/models/comment_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/comment.rb">app/models/comment.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveModel::Validator</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-validate">#validate</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Comment::CommentValidator</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="validate-method" class="method-detail ">
+ <a name="method-i-validate"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">validate</span><span
+ class="method-args">(record)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="validate-source">
+<pre>
+<span class="ruby-comment"># File app/models/comment.rb, line 24</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">validate</span>(<span class="ruby-identifier">record</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">is_owner?</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">user</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">rating</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'neutral'</span>
+ <span class="ruby-identifier">record</span>.<span class="ruby-identifier">errors</span>[<span class="ruby-value">:rating</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'The owner of a draft cannot make approvals or rejections'</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">user</span>.<span class="ruby-identifier">access</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">2</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">rating</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'neutral'</span>
+ <span class="ruby-identifier">record</span>.<span class="ruby-identifier">errors</span>[<span class="ruby-value">:rating</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'You may not approve or reject drafts'</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- validate-source -->
+
+ </div>
+
+
+
+
+ </div><!-- validate-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CommentsController.html b/doc/app/CommentsController.html
new file mode 100644
index 0000000..91da088
--- /dev/null
+++ b/doc/app/CommentsController.html
@@ -0,0 +1,459 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: CommentsController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/comments_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/comments_controller.rb">app/controllers/comments_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-create">#create</a></li>
+
+ <li><a href="#method-i-destroy">#destroy</a></li>
+
+ <li><a href="#method-i-new">#new</a></li>
+
+ <li><a href="#method-i-show">#show</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">CommentsController</h1>
+
+ <div id="description" class="description">
+
+<p>CommentController handles comments made for GLSAs</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="create-method" class="method-detail ">
+ <a name="method-i-create"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">create</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="create-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/comments_controller.rb, line 24</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa_id</span>].<span class="ruby-identifier">to_i</span>)
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-identifier">comment_data</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:newcomment</span>]
+ <span class="ruby-identifier">comment</span> = <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">comment_data</span>[<span class="ruby-string">'text'</span>].<span class="ruby-identifier">strip</span> <span class="ruby-operator">!=</span> <span class="ruby-string">''</span>
+ <span class="ruby-identifier">comment</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">comments</span>.<span class="ruby-identifier">build</span>(<span class="ruby-identifier">comment_data</span>)
+ <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">user</span> = <span class="ruby-identifier">current_user</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Mail</span>.<span class="ruby-identifier">comment_notification</span>(<span class="ruby-ivar">@glsa</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">current_user</span>)
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">is_approved?</span> <span class="ruby-keyword">and</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">approvals</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">rejections</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Mail</span>.<span class="ruby-identifier">approval_notification</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">errors</span>
+ <span class="ruby-identifier">render</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@comment_number</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">comments</span>.<span class="ruby-identifier">count</span>
+ <span class="ruby-ivar">@comment_text</span> = <span class="ruby-identifier">render_to_string</span> <span class="ruby-value">:partial</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;/glsa/comment&quot;</span>, <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">comment</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-node">&quot;Error: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-string">&quot;Error: Cannot find GLSA&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- create-source -->
+
+ </div>
+
+
+
+
+ </div><!-- create-method -->
+
+
+ <div id="destroy-method" class="method-detail ">
+ <a name="method-i-destroy"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">destroy</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="destroy-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/comments_controller.rb, line 62</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- destroy-source -->
+
+ </div>
+
+
+
+
+ </div><!-- destroy-method -->
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-i-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/comments_controller.rb, line 15</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-constant">Integer</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa_id</span>]))
+ <span class="ruby-ivar">@comment</span> = <span class="ruby-constant">Comment</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ <div id="show-method" class="method-detail ">
+ <a name="method-i-show"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">show</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="show-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/comments_controller.rb, line 59</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">show</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- show-source -->
+
+ </div>
+
+
+
+
+ </div><!-- show-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CommentsHelper.html b/doc/app/CommentsHelper.html
new file mode 100644
index 0000000..8207f2d
--- /dev/null
+++ b/doc/app/CommentsHelper.html
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: CommentsHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/comments_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/comments_helper.rb">app/helpers/comments_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">CommentsHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Cpe.html b/doc/app/Cpe.html
new file mode 100644
index 0000000..21965be
--- /dev/null
+++ b/doc/app/Cpe.html
@@ -0,0 +1,434 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Cpe</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/cpe_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/cpe.rb">app/models/cpe.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-product">#product</a></li>
+
+ <li><a href="#method-i-split">#split</a></li>
+
+ <li><a href="#method-i-vendor">#vendor</a></li>
+
+ <li><a href="#method-i-version">#version</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Cpe</h1>
+
+ <div id="description" class="description">
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="product-method" class="method-detail ">
+ <a name="method-i-product"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">product</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="product-source">
+<pre>
+<span class="ruby-comment"># File app/models/cpe.rb, line 22</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">product</span>
+ <span class="ruby-identifier">split</span>[<span class="ruby-value">3</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- product-source -->
+
+ </div>
+
+
+
+
+ </div><!-- product-method -->
+
+
+ <div id="split-method" class="method-detail ">
+ <a name="method-i-split"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">split</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="split-source">
+<pre>
+<span class="ruby-comment"># File app/models/cpe.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">split</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cpe</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">':'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- split-source -->
+
+ </div>
+
+
+
+
+ </div><!-- split-method -->
+
+
+ <div id="vendor-method" class="method-detail ">
+ <a name="method-i-vendor"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">vendor</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="vendor-source">
+<pre>
+<span class="ruby-comment"># File app/models/cpe.rb, line 18</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">vendor</span>
+ <span class="ruby-identifier">split</span>[<span class="ruby-value">2</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- vendor-source -->
+
+ </div>
+
+
+
+
+ </div><!-- vendor-method -->
+
+
+ <div id="version-method" class="method-detail ">
+ <a name="method-i-version"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">version</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="version-source">
+<pre>
+<span class="ruby-comment"># File app/models/cpe.rb, line 26</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">version</span>
+ <span class="ruby-identifier">split</span>[<span class="ruby-value">4</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- version-source -->
+
+ </div>
+
+
+
+
+ </div><!-- version-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Cve.html b/doc/app/Cve.html
new file mode 100644
index 0000000..1d325de
--- /dev/null
+++ b/doc/app/Cve.html
@@ -0,0 +1,821 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Cve</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/cve_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/cve.rb">app/models/cve.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-concat">::concat</a></li>
+
+ <li><a href="#method-i-add_comment">#add_comment</a></li>
+
+ <li><a href="#method-i-assign">#assign</a></li>
+
+ <li><a href="#method-i-colorize">#colorize</a></li>
+
+ <li><a href="#method-i-invalidate">#invalidate</a></li>
+
+ <li><a href="#method-i-later">#later</a></li>
+
+ <li><a href="#method-i-mark_new">#mark_new</a></li>
+
+ <li><a href="#method-i-nfu">#nfu</a></li>
+
+ <li><a href="#method-i-package_hints">#package_hints</a></li>
+
+ <li><a href="#method-i-search">#search</a></li>
+
+ <li><a href="#method-i-to_s">#to_s</a></li>
+
+ <li><a href="#method-i-url">#url</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Cve</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="concat-method" class="method-detail ">
+ <a name="method-c-concat"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">concat</span><span
+ class="method-args">(cves, separator = "\n\n")</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Concatenates the CVE descriptions of many cves, separated by separator</p>
+
+
+
+ <div class="method-source-code" id="concat-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 45</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">cves</span>, <span class="ruby-identifier">separator</span> = <span class="ruby-string">&quot;\n\n&quot;</span>)
+ <span class="ruby-identifier">txt</span> = <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">txt</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">cve</span>).<span class="ruby-identifier">to_s</span>
+ <span class="ruby-identifier">txt</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">separator</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">txt</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- concat-source -->
+
+ </div>
+
+
+
+
+ </div><!-- concat-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="add_comment-method" class="method-detail ">
+ <a name="method-i-add_comment"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_comment</span><span
+ class="method-args">(user, comment, confidential = false)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="add_comment-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 125</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_comment</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">confidential</span> = <span class="ruby-keyword">false</span>)
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">comments</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">CveComment</span>.<span class="ruby-identifier">create!</span>(
+ <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>,
+ <span class="ruby-value">:confidential</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">confidential</span>,
+ <span class="ruby-value">:comment</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">comment</span>
+ )
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_comment-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_comment-method -->
+
+
+ <div id="assign-method" class="method-detail ">
+ <a name="method-i-assign"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">assign</span><span
+ class="method-args">(bugnr, user, action = 'assign')</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Assigns the CVE to a certain bug, creating a history entry</p>
+
+
+
+ <div class="method-source-code" id="assign-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 55</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">assign</span>(<span class="ruby-identifier">bugnr</span>, <span class="ruby-identifier">user</span>, <span class="ruby-identifier">action</span> = <span class="ruby-string">'assign'</span>)
+ <span class="ruby-identifier">bugnr</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">bugnr</span>)
+
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">action</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'assign'</span>, <span class="ruby-value">:assign</span>
+ <span class="ruby-identifier">act</span> = <span class="ruby-string">'assign'</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-string">'file'</span>, <span class="ruby-value">:file</span>
+ <span class="ruby-identifier">act</span> = <span class="ruby-string">'file'</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid action specified&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">a</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">assignments</span>.<span class="ruby-identifier">create!</span>(<span class="ruby-value">:bug</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bugnr</span>)
+
+ <span class="ruby-identifier">ch</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_changes</span>.<span class="ruby-identifier">create!</span>(
+ <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>,
+ <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">act</span>,
+ <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">a</span>.<span class="ruby-identifier">id</span>
+ )
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">state</span> = <span class="ruby-string">'ASSIGNED'</span>
+ <span class="ruby-identifier">save!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- assign-source -->
+
+ </div>
+
+
+
+
+ </div><!-- assign-method -->
+
+
+ <div id="colorize-method" class="method-detail ">
+ <a name="method-i-colorize"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">colorize</span><span
+ class="method-args">(field = :cve_id)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Decorates the output of field with a color, depending on the status</p>
+
+
+
+ <div class="method-source-code" id="colorize-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 134</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">colorize</span>(<span class="ruby-identifier">field</span> = <span class="ruby-value">:cve_id</span>)
+ <span class="ruby-string">&quot;&lt;span class='cvename cve-%s'&gt;%s&lt;/span&gt;&quot;</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">state</span>.<span class="ruby-identifier">downcase</span>, <span class="ruby-keyword">self</span>[<span class="ruby-identifier">field</span>]]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- colorize-source -->
+
+ </div>
+
+
+
+
+ </div><!-- colorize-method -->
+
+
+ <div id="invalidate-method" class="method-detail ">
+ <a name="method-i-invalidate"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">invalidate</span><span
+ class="method-args">(user, reason = nil)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Mark the CVE as INVALID, creating a history entry</p>
+
+
+
+ <div class="method-source-code" id="invalidate-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 92</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">invalidate</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">reason</span> = <span class="ruby-keyword">nil</span>)
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_changes</span>.<span class="ruby-identifier">create!</span>(
+ <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>,
+ <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'invalid'</span>,
+ <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">reason</span>
+ )
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">state</span> = <span class="ruby-string">'INVALID'</span>
+ <span class="ruby-identifier">save!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- invalidate-source -->
+
+ </div>
+
+
+
+
+ </div><!-- invalidate-method -->
+
+
+ <div id="later-method" class="method-detail ">
+ <a name="method-i-later"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">later</span><span
+ class="method-args">(user, reason = nil)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="later-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 103</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">later</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">reason</span> = <span class="ruby-keyword">nil</span>)
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_changes</span>.<span class="ruby-identifier">create!</span>(
+ <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>,
+ <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'later'</span>,
+ <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">reason</span>
+ )
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">state</span> = <span class="ruby-string">'LATER'</span>
+ <span class="ruby-identifier">save!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- later-source -->
+
+ </div>
+
+
+
+
+ </div><!-- later-method -->
+
+
+ <div id="mark_new-method" class="method-detail ">
+ <a name="method-i-mark_new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">mark_new</span><span
+ class="method-args">(user, reason = nil)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="mark_new-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 114</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">mark_new</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">reason</span> = <span class="ruby-keyword">nil</span>)
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_changes</span>.<span class="ruby-identifier">create!</span>(
+ <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>,
+ <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'new'</span>,
+ <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">reason</span>
+ )
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">state</span> = <span class="ruby-string">'NEW'</span>
+ <span class="ruby-identifier">save!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- mark_new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- mark_new-method -->
+
+
+ <div id="nfu-method" class="method-detail ">
+ <a name="method-i-nfu"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">nfu</span><span
+ class="method-args">(user, reason = nil)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Mark the CVE as Not-For-Us, creating a history entry</p>
+
+
+
+ <div class="method-source-code" id="nfu-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 80</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">nfu</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">reason</span> = <span class="ruby-keyword">nil</span>)
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_changes</span>.<span class="ruby-identifier">create!</span>(
+ <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>,
+ <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'nfu'</span>,
+ <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">reason</span>
+ )
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">state</span> = <span class="ruby-string">'NFU'</span>
+ <span class="ruby-identifier">save!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- nfu-source -->
+
+ </div>
+
+
+
+
+ </div><!-- nfu-method -->
+
+
+ <div id="package_hints-method" class="method-detail ">
+ <a name="method-i-package_hints"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">package_hints</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Looks for Gentoo packages that might be affected by this CVE</p>
+
+
+
+ <div class="method-source-code" id="package_hints-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 139</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">package_hints</span>
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">search</span>(<span class="ruby-identifier">s</span>)
+ <span class="ruby-keyword">return</span> [] <span class="ruby-keyword">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">s</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;&quot;</span>
+
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Portage</span>.<span class="ruby-identifier">find_packages</span>(
+ <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">compile</span>(<span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">escape</span>(<span class="ruby-identifier">s</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/[^a-zA-Z0-9]/</span>, <span class="ruby-string">'.*?'</span>), <span class="ruby-constant">Regexp</span><span class="ruby-operator">::</span><span class="ruby-constant">IGNORECASE</span>)
+ )
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">package_hints</span> = []
+ <span class="ruby-identifier">my_cpes</span> = <span class="ruby-identifier">cpes</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">product</span> }.<span class="ruby-identifier">uniq</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">my_cpes</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">search</span> <span class="ruby-identifier">c</span> }.<span class="ruby-identifier">flatten</span>
+
+ <span class="ruby-comment"># stolen from the old cvetools.py</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">summary</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/ in (\S+\.\S+) in (?:the )?(?:a )?(\D+) \d+/</span>
+ <span class="ruby-identifier">match</span> = <span class="ruby-node">$2</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">match</span>.<span class="ruby-identifier">end_with?</span> <span class="ruby-string">'before'</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-identifier">match</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">match</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-value">7</span>])
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-identifier">match</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">summary</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/ in (?:the )?(?:a )?(\D+) \d+/</span>
+ <span class="ruby-identifier">match</span> = <span class="ruby-node">$1</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">match</span>.<span class="ruby-identifier">end_with?</span> <span class="ruby-string">'before'</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-identifier">match</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">match</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">-</span> <span class="ruby-value">7</span>])
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-identifier">match</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">summary</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/ in (\S+\.\S+) in (?:the )?(?:a )?(\S+) /</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-node">$1</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">summary</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/ in (?:the )?(?:a )?(\S+) /</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-node">$1</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">summary</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/(?:The )?(\S+) /</span>
+ <span class="ruby-identifier">package_hints</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">search</span>(<span class="ruby-node">$1</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">package_hints</span>.<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">uniq</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- package_hints-source -->
+
+ </div>
+
+
+
+
+ </div><!-- package_hints-method -->
+
+
+ <div id="search-method" class="method-detail ">
+ <a name="method-i-search"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">search</span><span
+ class="method-args">(s)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="search-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 140</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">search</span>(<span class="ruby-identifier">s</span>)
+ <span class="ruby-keyword">return</span> [] <span class="ruby-keyword">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">s</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;&quot;</span>
+
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Portage</span>.<span class="ruby-identifier">find_packages</span>(
+ <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">compile</span>(<span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">escape</span>(<span class="ruby-identifier">s</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/[^a-zA-Z0-9]/</span>, <span class="ruby-string">'.*?'</span>), <span class="ruby-constant">Regexp</span><span class="ruby-operator">::</span><span class="ruby-constant">IGNORECASE</span>)
+ )
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- search-source -->
+
+ </div>
+
+
+
+
+ </div><!-- search-method -->
+
+
+ <div id="to_s-method" class="method-detail ">
+ <a name="method-i-to_s"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">to_s</span><span
+ class="method-args">(line_length = 78)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="to_s-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 28</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">line_length</span> = <span class="ruby-value">78</span>)
+ <span class="ruby-identifier">str</span> = <span class="ruby-node">&quot;#{self.cve_id} #{&quot;(%s):&quot; % url}\n&quot;</span>
+ <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot; &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-identifier">help</span>.<span class="ruby-identifier">word_wrap</span>(<span class="ruby-keyword">self</span>.<span class="ruby-identifier">summary</span>, <span class="ruby-identifier">line_length</span><span class="ruby-operator">-</span><span class="ruby-value">2</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\n/</span>, <span class="ruby-string">&quot;\n &quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- to_s-source -->
+
+ </div>
+
+
+
+
+ </div><!-- to_s-method -->
+
+
+ <div id="url-method" class="method-detail ">
+ <a name="method-i-url"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">url</span><span
+ class="method-args">(site = :nvd)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the URL for this CVE at NVD (<tt>:nvd</tt>, default) or MITRE
+(<tt>:mitre</tt>)</p>
+
+
+
+ <div class="method-source-code" id="url-source">
+<pre>
+<span class="ruby-comment"># File app/models/cve.rb, line 34</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">url</span>(<span class="ruby-identifier">site</span> = <span class="ruby-value">:nvd</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">site</span> <span class="ruby-operator">==</span> <span class="ruby-value">:nvd</span>
+ <span class="ruby-string">&quot;http://nvd.nist.gov/nvd.cfm?cvename=%s&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_id</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">site</span> <span class="ruby-operator">==</span> <span class="ruby-value">:mitre</span>
+ <span class="ruby-string">&quot;http://cve.mitre.org/cgi-bin/cvename.cgi?name=%s&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cve_id</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">'Invalid site'</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- url-source -->
+
+ </div>
+
+
+
+
+ </div><!-- url-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CveAssignment.html b/doc/app/CveAssignment.html
new file mode 100644
index 0000000..3a8b58f
--- /dev/null
+++ b/doc/app/CveAssignment.html
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: CveAssignment</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/cve_assignment_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/cve_assignment.rb">app/models/cve_assignment.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">CveAssignment</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CveChange.html b/doc/app/CveChange.html
new file mode 100644
index 0000000..1e4f8e2
--- /dev/null
+++ b/doc/app/CveChange.html
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: CveChange</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/cve_change_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/cve_change.rb">app/models/cve_change.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">CveChange</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CveComment.html b/doc/app/CveComment.html
new file mode 100644
index 0000000..b8a009e
--- /dev/null
+++ b/doc/app/CveComment.html
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: CveComment</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/cve_comment_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/cve_comment.rb">app/models/cve_comment.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">CveComment</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CveController.html b/doc/app/CveController.html
new file mode 100644
index 0000000..84b8448
--- /dev/null
+++ b/doc/app/CveController.html
@@ -0,0 +1,1175 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: CveController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/cve_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/cve_controller.rb">app/controllers/cve_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-actions">#actions</a></li>
+
+ <li><a href="#method-i-assign">#assign</a></li>
+
+ <li><a href="#method-i-assign_preview">#assign_preview</a></li>
+
+ <li><a href="#method-i-bug">#bug</a></li>
+
+ <li><a href="#method-i-bug_package">#bug_package</a></li>
+
+ <li><a href="#method-i-bug_preview">#bug_preview</a></li>
+
+ <li><a href="#method-i-changes">#changes</a></li>
+
+ <li><a href="#method-i-comments">#comments</a></li>
+
+ <li><a href="#method-i-general_info">#general_info</a></li>
+
+ <li><a href="#method-i-index">#index</a></li>
+
+ <li><a href="#method-i-info">#info</a></li>
+
+ <li><a href="#method-i-invalid">#invalid</a></li>
+
+ <li><a href="#method-i-later">#later</a></li>
+
+ <li><a href="#method-i-list">#list</a></li>
+
+ <li><a href="#method-i-mark_new">#mark_new</a></li>
+
+ <li><a href="#method-i-nfu">#nfu</a></li>
+
+ <li><a href="#method-i-note">#note</a></li>
+
+ <li><a href="#method-i-packages">#packages</a></li>
+
+ <li><a href="#method-i-references">#references</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><a class="include" href="ApplicationHelper.html">ApplicationHelper</a></li>
+
+
+
+ <li><a class="include" href="CveHelper.html">CveHelper</a></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">CveController</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="actions-method" class="method-detail ">
+ <a name="method-i-actions"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">actions</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="actions-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 273</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">actions</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Cannot find CVE&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@cve</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- actions-source -->
+
+ </div>
+
+
+
+
+ </div><!-- actions-method -->
+
+
+ <div id="assign-method" class="method-detail ">
+ <a name="method-i-assign"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">assign</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="assign-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 136</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">assign</span>
+ <span class="ruby-identifier">bug_id</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:bug</span>])
+ <span class="ruby-identifier">cves</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;Assign Bug: #{bug_id} CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:comment</span>] <span class="ruby-keyword">or</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:summary</span>]
+ <span class="ruby-identifier">bug</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug_id</span>)
+ <span class="ruby-identifier">cve_ids</span> = <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">c</span>).<span class="ruby-identifier">cve_id</span> }
+ <span class="ruby-identifier">changes</span> = {}
+
+ <span class="ruby-identifier">changes</span>[<span class="ruby-value">:comment</span>] = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">cves</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:comment</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span>
+ <span class="ruby-identifier">changes</span>[<span class="ruby-value">:summary</span>] = <span class="ruby-identifier">cveify_bug_title</span>(<span class="ruby-identifier">bug</span>.<span class="ruby-identifier">summary</span>, <span class="ruby-identifier">cve_ids</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:summary</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span>
+ <span class="ruby-constant">Bugzilla</span>.<span class="ruby-identifier">update_bug</span>(<span class="ruby-identifier">bug_id</span>, <span class="ruby-identifier">changes</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">cve_id</span><span class="ruby-operator">|</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">cve_id</span>).<span class="ruby-identifier">assign</span>(<span class="ruby-identifier">bug_id</span>, <span class="ruby-identifier">current_user</span>, <span class="ruby-value">:assign</span>) }
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;ok&quot;</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- assign-source -->
+
+ </div>
+
+
+
+
+ </div><!-- assign-method -->
+
+
+ <div id="assign_preview-method" class="method-detail ">
+ <a name="method-i-assign_preview"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">assign_preview</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="assign_preview-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 118</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">assign_preview</span>
+ <span class="ruby-identifier">bug_id</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:bug</span>])
+ <span class="ruby-identifier">cves</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-node">&quot;Assign Bug: #{bug_id} CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-identifier">cve_ids</span> = <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">c</span>).<span class="ruby-identifier">cve_id</span> }
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-identifier">cve_ids</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-ivar">@cve_txt</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">cves</span>)
+ <span class="ruby-ivar">@bug</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug_id</span>)
+ <span class="ruby-ivar">@summary</span> = <span class="ruby-identifier">cveify_bug_title</span>(<span class="ruby-ivar">@bug</span>.<span class="ruby-identifier">summary</span>, <span class="ruby-identifier">cve_ids</span>)
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- assign_preview-source -->
+
+ </div>
+
+
+
+
+ </div><!-- assign_preview-method -->
+
+
+ <div id="bug-method" class="method-detail ">
+ <a name="method-i-bug"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="bug-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 55</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug</span>
+ <span class="ruby-identifier">cve_nums</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;File new Bug (final); CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">cve_nums</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-identifier">cves</span> = <span class="ruby-identifier">cve_nums</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">c</span>) }
+
+ <span class="ruby-identifier">data</span> = {
+ <span class="ruby-value">:product</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'Gentoo Security'</span>,
+ <span class="ruby-value">:component</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:bug_type</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span> <span class="ruby-operator">?</span> <span class="ruby-string">'Vulnerabilities'</span> <span class="ruby-operator">:</span> <span class="ruby-string">'Kernel'</span>,
+ <span class="ruby-value">:summary</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:bug_title</span>],
+ <span class="ruby-value">:assignee</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'security@gentoo.org'</span>
+ }
+
+ <span class="ruby-identifier">cc</span> = []
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cc_maint</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span>
+ <span class="ruby-identifier">cc</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Portage</span>.<span class="ruby-identifier">get_maintainers</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:package</span>])
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">cc</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cc_custom</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>)
+ <span class="ruby-identifier">data</span>[<span class="ruby-value">:cc</span>] = <span class="ruby-identifier">cc</span>.<span class="ruby-identifier">compact</span>.<span class="ruby-identifier">delete_if</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">==</span> <span class="ruby-string">''</span>}
+
+ <span class="ruby-identifier">comment</span> = <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:add_cves</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span>
+ <span class="ruby-identifier">comment</span> <span class="ruby-operator">+=</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">cve_nums</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:add_comment</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span>
+ <span class="ruby-identifier">comment</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot;\n&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:add_cves</span>]
+ <span class="ruby-identifier">comment</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:comment</span>]
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">data</span>[<span class="ruby-value">:comment</span>] = <span class="ruby-identifier">comment</span>
+
+ <span class="ruby-identifier">whiteboard</span> = <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:bug_type</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'true'</span> <span class="ruby-comment"># If the bug is not a kernel issue</span>
+ <span class="ruby-identifier">whiteboard</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot;%s %s&quot;</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">params</span>[<span class="ruby-value">:wb_1</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:wb_2</span>]]
+ <span class="ruby-identifier">whiteboard</span> <span class="ruby-operator">+=</span> <span class="ruby-string">&quot; %s&quot;</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:wb_ext</span>] <span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:wb_ext</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">whiteboard</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:wb_ext</span>]
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">data</span>[<span class="ruby-value">:severity</span>] = <span class="ruby-identifier">whiteboard_to_severity</span>(<span class="ruby-identifier">whiteboard</span>)
+ <span class="ruby-identifier">data</span>[<span class="ruby-value">:version</span>] = <span class="ruby-string">'unspecified'</span>
+ <span class="ruby-identifier">data</span>[<span class="ruby-value">:status</span>] = <span class="ruby-string">'IN_PROGRESS'</span>
+
+ <span class="ruby-identifier">bugnr</span> = <span class="ruby-value">-1</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">bugnr</span> = <span class="ruby-constant">Bugzilla</span>.<span class="ruby-identifier">file_bug</span>(<span class="ruby-identifier">data</span>)
+ <span class="ruby-constant">Bugzilla</span>.<span class="ruby-identifier">update_bug</span>(<span class="ruby-identifier">bugnr</span>, {<span class="ruby-value">:whiteboard</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">whiteboard</span>})
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Filing the bug failed. Check if the accounts in CC actually exist.&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-node">&quot;Filed bug #{bugnr} on behalf of user #{current_user.login}.&quot;</span>
+
+ <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">assign</span>(<span class="ruby-identifier">bugnr</span>, <span class="ruby-identifier">current_user</span>, <span class="ruby-value">:file</span>) }
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'ok'</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug-method -->
+
+
+ <div id="bug_package-method" class="method-detail ">
+ <a name="method-i-bug_package"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug_package</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="bug_package-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 23</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug_package</span>
+ <span class="ruby-identifier">cve_nums</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;File new Bug; CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">cve_nums</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-identifier">cves</span> = <span class="ruby-identifier">cve_nums</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">c</span>) }
+ <span class="ruby-identifier">cpes</span> = <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">cpes</span>.<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cpe</span><span class="ruby-operator">|</span> <span class="ruby-identifier">cpe</span>.<span class="ruby-identifier">product</span> } }.<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">uniq</span>
+
+ <span class="ruby-identifier">package_hints</span> = <span class="ruby-identifier">cves</span>.<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">package_hints</span> }.<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">uniq</span>.<span class="ruby-identifier">sort</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;CPE Products: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">cpes</span>.<span class="ruby-identifier">inspect</span> }
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;Package hints: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">package_hints</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { {<span class="ruby-value">:package_hints</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">package_hints</span>}.<span class="ruby-identifier">to_json</span> }
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-value">:package_hints</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">package_hints</span>}.<span class="ruby-identifier">to_json</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug_package-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug_package-method -->
+
+
+ <div id="bug_preview-method" class="method-detail ">
+ <a name="method-i-bug_preview"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug_preview</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="bug_preview-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 41</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug_preview</span>
+ <span class="ruby-identifier">cve_nums</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;File new Bug (preview); CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">cve_nums</span>.<span class="ruby-identifier">inspect</span> }
+
+ <span class="ruby-ivar">@cve_ids</span> = <span class="ruby-identifier">cve_nums</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">c</span>).<span class="ruby-identifier">cve_id</span> }
+ <span class="ruby-ivar">@cve_txt</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">cve_nums</span>)
+ <span class="ruby-ivar">@package</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:package</span>]
+ <span class="ruby-ivar">@maintainers</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Portage</span>.<span class="ruby-identifier">get_maintainers</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:package</span>])
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug_preview-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug_preview-method -->
+
+
+ <div id="changes-method" class="method-detail ">
+ <a name="method-i-changes"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">changes</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="changes-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 263</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">changes</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Cannot find CVE&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@cve</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- changes-source -->
+
+ </div>
+
+
+
+
+ </div><!-- changes-method -->
+
+
+ <div id="comments-method" class="method-detail ">
+ <a name="method-i-comments"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">comments</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="comments-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 253</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">comments</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Cannot find CVE&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@cve</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- comments-source -->
+
+ </div>
+
+
+
+
+ </div><!-- comments-method -->
+
+
+ <div id="general_info-method" class="method-detail ">
+ <a name="method-i-general_info"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">general_info</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="general_info-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 220</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">general_info</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- general_info-source -->
+
+ </div>
+
+
+
+
+ </div><!-- general_info-method -->
+
+
+ <div id="index-method" class="method-detail ">
+ <a name="method-i-index"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">index</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="index-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 5</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">index</span>
+ <span class="ruby-ivar">@pageID</span> = <span class="ruby-string">'cve'</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- index-source -->
+
+ </div>
+
+
+
+
+ </div><!-- index-method -->
+
+
+ <div id="info-method" class="method-detail ">
+ <a name="method-i-info"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">info</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Popup methods</p>
+
+
+
+ <div class="method-source-code" id="info-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 216</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">info</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>]).<span class="ruby-identifier">first</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- info-source -->
+
+ </div>
+
+
+
+
+ </div><!-- info-method -->
+
+
+ <div id="invalid-method" class="method-detail ">
+ <a name="method-i-invalid"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">invalid</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="invalid-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 187</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">invalid</span>
+ <span class="ruby-ivar">@cves</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;Invalid CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">inspect</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot; Reason: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:reason</span>] }
+
+ <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve_id</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">cve_id</span>).<span class="ruby-identifier">invalidate</span>(<span class="ruby-identifier">current_user</span>, <span class="ruby-identifier">params</span>[<span class="ruby-value">:reason</span>])
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;ok&quot;</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- invalid-source -->
+
+ </div>
+
+
+
+
+ </div><!-- invalid-method -->
+
+
+ <div id="later-method" class="method-detail ">
+ <a name="method-i-later"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">later</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="later-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 201</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">later</span>
+ <span class="ruby-ivar">@cves</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;LATER CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">inspect</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot; Reason: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:reason</span>] }
+
+ <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve_id</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">cve_id</span>).<span class="ruby-identifier">later</span>(<span class="ruby-identifier">current_user</span>, <span class="ruby-identifier">params</span>[<span class="ruby-value">:reason</span>])
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;ok&quot;</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- later-source -->
+
+ </div>
+
+
+
+
+ </div><!-- later-method -->
+
+
+ <div id="list-method" class="method-detail ">
+ <a name="method-i-list"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">list</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="list-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 9</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">list</span>
+ <span class="ruby-ivar">@pageID</span> = <span class="ruby-string">'cve'</span>
+
+ <span class="ruby-identifier">condition</span> = <span class="ruby-identifier">view_mask_to_condition</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:view_map</span>].<span class="ruby-identifier">to_i</span>)
+ <span class="ruby-ivar">@cves</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-identifier">condition</span>).<span class="ruby-identifier">limit</span>(<span class="ruby-value">500</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'cve_id DESC'</span>)
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">json</span> {
+ <span class="ruby-identifier">x</span> = <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> [<span class="ruby-identifier">cve</span>.<span class="ruby-identifier">id</span>, <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">colorize</span>(<span class="ruby-value">:cve_id</span>), <span class="ruby-constant">CGI</span>.<span class="ruby-identifier">escapeHTML</span>(<span class="ruby-identifier">cve</span>.<span class="ruby-identifier">summary</span>), <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">state</span>]}
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">x</span>.<span class="ruby-identifier">to_json</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- list-source -->
+
+ </div>
+
+
+
+
+ </div><!-- list-method -->
+
+
+ <div id="mark_new-method" class="method-detail ">
+ <a name="method-i-mark_new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">mark_new</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="mark_new-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 283</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">mark_new</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+
+ <span class="ruby-ivar">@cve</span>.<span class="ruby-identifier">mark_new</span>(<span class="ruby-identifier">current_user</span>)
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;ok&quot;</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- mark_new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- mark_new-method -->
+
+
+ <div id="nfu-method" class="method-detail ">
+ <a name="method-i-nfu"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">nfu</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="nfu-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 159</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">nfu</span>
+ <span class="ruby-ivar">@cves</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;NFU CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">inspect</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot; Reason: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:reason</span>] }
+
+ <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve_id</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">cve_id</span>).<span class="ruby-identifier">nfu</span>(<span class="ruby-identifier">current_user</span>, <span class="ruby-identifier">params</span>[<span class="ruby-value">:reason</span>])
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;ok&quot;</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- nfu-source -->
+
+ </div>
+
+
+
+
+ </div><!-- nfu-method -->
+
+
+ <div id="note-method" class="method-detail ">
+ <a name="method-i-note"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">note</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="note-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 173</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">note</span>
+ <span class="ruby-ivar">@cves</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:cves</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">','</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span> <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">cve</span>)}
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;Note CVElist: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">inspect</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot; Note: &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:note</span>] }
+
+ <span class="ruby-ivar">@cves</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve_id</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">cve_id</span>).<span class="ruby-identifier">add_comment</span>(<span class="ruby-identifier">current_user</span>, <span class="ruby-identifier">params</span>[<span class="ruby-value">:note</span>])
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;ok&quot;</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- note-source -->
+
+ </div>
+
+
+
+
+ </div><!-- note-method -->
+
+
+ <div id="packages-method" class="method-detail ">
+ <a name="method-i-packages"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">packages</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="packages-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 239</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">packages</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Cannot find CVE&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@cve</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-ivar">@package_hints</span> = <span class="ruby-ivar">@cve</span>.<span class="ruby-identifier">package_hints</span>
+
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-ivar">@package_hints</span>.<span class="ruby-identifier">inspect</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- packages-source -->
+
+ </div>
+
+
+
+
+ </div><!-- packages-method -->
+
+
+ <div id="references-method" class="method-detail ">
+ <a name="method-i-references"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">references</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="references-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/cve_controller.rb, line 229</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">references</span>
+ <span class="ruby-ivar">@cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:cve_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:cve_id</span>]).<span class="ruby-identifier">first</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Cannot find CVE&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@cve</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- references-source -->
+
+ </div>
+
+
+
+
+ </div><!-- references-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CveHelper.html b/doc/app/CveHelper.html
new file mode 100644
index 0000000..99ef12a
--- /dev/null
+++ b/doc/app/CveHelper.html
@@ -0,0 +1,318 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: CveHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/cve_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/cve_helper.rb">app/helpers/cve_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-view_mask_to_condition">#view_mask_to_condition</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">CveHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="view_mask_to_condition-method" class="method-detail ">
+ <a name="method-i-view_mask_to_condition"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">view_mask_to_condition</span><span
+ class="method-args">(mask)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Converts a bit mask to a condition usable by AR</p>
+
+
+
+ <div class="method-source-code" id="view_mask_to_condition-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/cve_helper.rb, line 3</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">view_mask_to_condition</span>(<span class="ruby-identifier">mask</span>)
+ <span class="ruby-identifier">conditions</span> = []
+
+ <span class="ruby-identifier">conditions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'state = &quot;NEW&quot;'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">mask</span> &amp; <span class="ruby-value">1</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
+ <span class="ruby-identifier">conditions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'state = &quot;ASSIGNED&quot;'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">mask</span> &amp; <span class="ruby-value">2</span> <span class="ruby-operator">==</span> <span class="ruby-value">2</span>
+ <span class="ruby-identifier">conditions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'state = &quot;LATER&quot;'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">mask</span> &amp; <span class="ruby-value">4</span> <span class="ruby-operator">==</span> <span class="ruby-value">4</span>
+ <span class="ruby-identifier">conditions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'state = &quot;NFU&quot;'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">mask</span> &amp; <span class="ruby-value">8</span> <span class="ruby-operator">==</span> <span class="ruby-value">8</span>
+ <span class="ruby-identifier">conditions</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'state = &quot;INVALID&quot;'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">mask</span> &amp; <span class="ruby-value">16</span> <span class="ruby-operator">==</span> <span class="ruby-value">16</span>
+
+ <span class="ruby-identifier">conditions</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">' OR '</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- view_mask_to_condition-source -->
+
+ </div>
+
+
+
+
+ </div><!-- view_mask_to_condition-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/CveReference.html b/doc/app/CveReference.html
new file mode 100644
index 0000000..4bbcf6d
--- /dev/null
+++ b/doc/app/CveReference.html
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: CveReference</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/cve_reference_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/cve_reference.rb">app/models/cve_reference.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">CveReference</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/GLSAReleaseError.html b/doc/app/GLSAReleaseError.html
new file mode 100644
index 0000000..e72d841
--- /dev/null
+++ b/doc/app/GLSAReleaseError.html
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: GLSAReleaseError</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/glsa_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/glsa.rb">app/models/glsa.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">StandardError</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">GLSAReleaseError</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsa.html b/doc/app/Glsa.html
new file mode 100644
index 0000000..de38479
--- /dev/null
+++ b/doc/app/Glsa.html
@@ -0,0 +1,1086 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Glsa</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/glsa_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/glsa.rb">app/models/glsa.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-new_request">::new_request</a></li>
+
+ <li><a href="#method-c-next_id">::next_id</a></li>
+
+ <li><a href="#method-i-add_references">#add_references</a></li>
+
+ <li><a href="#method-i-approval_status">#approval_status</a></li>
+
+ <li><a href="#method-i-approvals">#approvals</a></li>
+
+ <li><a href="#method-i-has_comments-3F">#has_comments?</a></li>
+
+ <li><a href="#method-i-has_pending_comments-3F">#has_pending_comments?</a></li>
+
+ <li><a href="#method-i-invalidate_last_revision_cache">#invalidate_last_revision_cache</a></li>
+
+ <li><a href="#method-i-is_approved-3F">#is_approved?</a></li>
+
+ <li><a href="#method-i-is_owner-3F">#is_owner?</a></li>
+
+ <li><a href="#method-i-last_release_revision">#last_release_revision</a></li>
+
+ <li><a href="#method-i-last_revision">#last_revision</a></li>
+
+ <li><a href="#method-i-next_releaseid">#next_releaseid</a></li>
+
+ <li><a href="#method-i-next_revid">#next_revid</a></li>
+
+ <li><a href="#method-i-rejections">#rejections</a></li>
+
+ <li><a href="#method-i-related_cves">#related_cves</a></li>
+
+ <li><a href="#method-i-release">#release</a></li>
+
+ <li><a href="#method-i-release-21">#release!</a></li>
+
+ <li><a href="#method-i-workflow_status">#workflow_status</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Glsa</h1>
+
+ <div id="description" class="description">
+
+<p>GLSA model</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="new_request-method" class="method-detail ">
+ <a name="method-c-new_request"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new_request</span><span
+ class="method-args">(title, bugs, comment, access, import_references, user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Files a new GLSA request</p>
+
+
+
+ <div class="method-source-code" id="new_request-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 185</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">new_request</span>(<span class="ruby-identifier">title</span>, <span class="ruby-identifier">bugs</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">access</span>, <span class="ruby-identifier">import_references</span>, <span class="ruby-identifier">user</span>)
+ <span class="ruby-identifier">glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">requester</span> = <span class="ruby-identifier">user</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">glsa_id</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">title</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">to_s</span>)[<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-value">9</span>]
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">restricted</span> = (<span class="ruby-identifier">access</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;confidential&quot;</span>)
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">status</span> = <span class="ruby-string">&quot;request&quot;</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">save!</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while saving the GLSA object: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">blank?</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">comments</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Comment</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:rating</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;neutral&quot;</span>, <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">comment</span>, <span class="ruby-value">:user</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>)
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">save!</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while saving the comment: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">revision</span> = <span class="ruby-constant">Revision</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">revid</span> = <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">next_revid</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">glsa</span> = <span class="ruby-identifier">glsa</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">title</span> = <span class="ruby-identifier">title</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">user</span> = <span class="ruby-identifier">user</span>
+
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">save!</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">delete</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while saving Revision object: #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">bugs</span> = <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">bugs</span>)
+
+ <span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">b</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug</span>)
+
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">create</span>(
+ <span class="ruby-value">:bug_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bug</span>,
+ <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">summary</span>,
+ <span class="ruby-value">:whiteboard</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">status_whiteboard</span>,
+ <span class="ruby-value">:arches</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">arch_cc</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">', '</span>)
+ )
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-comment"># In case of bugzilla errors, just keep the bug #</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">create</span>(<span class="ruby-value">:bug_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bug</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">import_references</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> { <span class="ruby-string">&quot;importing references&quot;</span> }
+ <span class="ruby-identifier">refs</span> = []
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">related_cves</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">refs</span> <span class="ruby-operator">&lt;&lt;</span> {<span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">cve_id</span>, <span class="ruby-value">:url</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">url</span>}
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">add_references</span> <span class="ruby-identifier">refs</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">glsa</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new_request-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new_request-method -->
+
+
+ <div id="next_id-method" class="method-detail ">
+ <a name="method-c-next_id"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">next_id</span><span
+ class="method-args">(month = Time.now)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Calculates the next GLSA ID for the given month, or the current month</p>
+
+
+
+ <div class="method-source-code" id="next_id-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 173</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">next_id</span>(<span class="ruby-identifier">month</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>)
+ <span class="ruby-identifier">month_id</span> = <span class="ruby-identifier">month</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-string">&quot;%Y%m&quot;</span>)
+ <span class="ruby-identifier">items</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">where</span>(<span class="ruby-string">&quot;glsa_id LIKE ? AND status = ?&quot;</span>, <span class="ruby-identifier">month_id</span> <span class="ruby-operator">+</span> <span class="ruby-string">'%'</span>, <span class="ruby-string">'release'</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'glsa_id DESC'</span>)
+
+ <span class="ruby-keyword">return</span> <span class="ruby-node">&quot;#{month_id}-01&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">items</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+
+ <span class="ruby-identifier">items</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">glsa_id</span> <span class="ruby-operator">=~</span> <span class="ruby-node">/^#{month_id}-(\d+)$/</span>
+ <span class="ruby-identifier">next_id</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-node">$1</span>) <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
+ <span class="ruby-node">&quot;#{month_id}-#{format &quot;%02d&quot;, next_id}&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- next_id-source -->
+
+ </div>
+
+
+
+
+ </div><!-- next_id-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="add_references-method" class="method-detail ">
+ <a name="method-i-add_references"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_references</span><span
+ class="method-args">(refs)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Bulk addition of references. Expects an array of hashes <tt>{:title =&gt;
+..., :url =&gt; ...}</tt></p>
+
+
+
+ <div class="method-source-code" id="add_references-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 134</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_references</span>(<span class="ruby-identifier">refs</span>)
+ <span class="ruby-identifier">rev</span> = <span class="ruby-identifier">last_revision</span>.<span class="ruby-identifier">deep_copy</span>
+
+ <span class="ruby-identifier">refs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reference</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">references</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">reference</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">invalidate_last_revision_cache</span>
+ <span class="ruby-keyword">self</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_references-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_references-method -->
+
+
+ <div id="approval_status-method" class="method-detail ">
+ <a name="method-i-approval_status"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">approval_status</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>The approval status of the GLSA, either :approved, :commented, or :none</p>
+
+
+
+ <div class="method-source-code" id="approval_status-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 82</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">approval_status</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">is_approved?</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:approved</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">has_comments?</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">has_pending_comments?</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:comments_pending</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:commented</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:none</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- approval_status-source -->
+
+ </div>
+
+
+
+
+ </div><!-- approval_status-method -->
+
+
+ <div id="approvals-method" class="method-detail ">
+ <a name="method-i-approvals"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">approvals</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns all approving comments</p>
+
+
+
+ <div class="method-source-code" id="approvals-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 62</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">approvals</span>
+ <span class="ruby-identifier">comments</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:rating</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'approval'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- approvals-source -->
+
+ </div>
+
+
+
+
+ </div><!-- approvals-method -->
+
+
+ <div id="has_comments-3F-method" class="method-detail ">
+ <a name="method-i-has_comments-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">has_comments?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns true if it has comments</p>
+
+
+
+ <div class="method-source-code" id="has_comments-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 77</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_comments?</span>
+ <span class="ruby-identifier">comments</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- has_comments-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- has_comments-3F-method -->
+
+
+ <div id="has_pending_comments-3F-method" class="method-detail ">
+ <a name="method-i-has_pending_comments-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">has_pending_comments?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns true if there are any pending comments left</p>
+
+
+
+ <div class="method-source-code" id="has_pending_comments-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 121</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">has_pending_comments?</span>
+ <span class="ruby-identifier">comments</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:read</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>).<span class="ruby-identifier">all</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- has_pending_comments-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- has_pending_comments-3F-method -->
+
+
+ <div id="invalidate_last_revision_cache-method" class="method-detail ">
+ <a name="method-i-invalidate_last_revision_cache"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">invalidate_last_revision_cache</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Invalidates the last revision cache</p>
+
+
+
+ <div class="method-source-code" id="invalidate_last_revision_cache-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 39</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">invalidate_last_revision_cache</span>
+ <span class="ruby-ivar">@last_revision</span> = <span class="ruby-keyword">nil</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- invalidate_last_revision_cache-source -->
+
+ </div>
+
+
+
+
+ </div><!-- invalidate_last_revision_cache-method -->
+
+
+ <div id="is_approved-3F-method" class="method-detail ">
+ <a name="method-i-is_approved-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">is_approved?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns true if the draft is ready for sending</p>
+
+
+
+ <div class="method-source-code" id="is_approved-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 72</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_approved?</span>
+ (<span class="ruby-identifier">approvals</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">rejections</span>.<span class="ruby-identifier">count</span>) <span class="ruby-operator">&gt;=</span> <span class="ruby-value">2</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- is_approved-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- is_approved-3F-method -->
+
+
+ <div id="is_owner-3F-method" class="method-detail ">
+ <a name="method-i-is_owner-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">is_owner?</span><span
+ class="method-args">(user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns true if user is the owner of this GLSA.</p>
+
+
+
+ <div class="method-source-code" id="is_owner-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 96</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_owner?</span>(<span class="ruby-identifier">user</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-identifier">luser</span> = (<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;request&quot;</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">requester</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">submitter</span>)
+ <span class="ruby-identifier">luser</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">user</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- is_owner-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- is_owner-3F-method -->
+
+
+ <div id="last_release_revision-method" class="method-detail ">
+ <a name="method-i-last_release_revision"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">last_release_revision</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the last revision object that was a release</p>
+
+
+
+ <div class="method-source-code" id="last_release_revision-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 34</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">last_release_revision</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:is_release</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'release_revision DESC'</span>).<span class="ruby-identifier">first</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- last_release_revision-source -->
+
+ </div>
+
+
+
+
+ </div><!-- last_release_revision-method -->
+
+
+ <div id="last_revision-method" class="method-detail ">
+ <a name="method-i-last_revision"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">last_revision</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the last revision object, referring to the current state of things</p>
+
+
+
+ <div class="method-source-code" id="last_revision-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 29</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">last_revision</span>
+ <span class="ruby-ivar">@last_revision</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">order</span>(<span class="ruby-string">&quot;revid DESC&quot;</span>).<span class="ruby-identifier">first</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- last_revision-source -->
+
+ </div>
+
+
+
+
+ </div><!-- last_revision-method -->
+
+
+ <div id="next_releaseid-method" class="method-detail ">
+ <a name="method-i-next_releaseid"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">next_releaseid</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the next release revision ID to be given for this GLSA</p>
+
+
+
+ <div class="method-source-code" id="next_releaseid-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 53</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">next_releaseid</span>
+ <span class="ruby-keyword">if</span> (<span class="ruby-identifier">rev</span> = <span class="ruby-identifier">last_release_revision</span>)
+ <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">release_revision</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-value">1</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- next_releaseid-source -->
+
+ </div>
+
+
+
+
+ </div><!-- next_releaseid-method -->
+
+
+ <div id="next_revid-method" class="method-detail ">
+ <a name="method-i-next_revid"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">next_revid</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the next revision ID to be given for this GLSA</p>
+
+
+
+ <div class="method-source-code" id="next_revid-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 44</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">next_revid</span>
+ <span class="ruby-keyword">if</span> (<span class="ruby-identifier">rev</span> = <span class="ruby-identifier">last_revision</span>)
+ <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">revid</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-value">0</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- next_revid-source -->
+
+ </div>
+
+
+
+
+ </div><!-- next_revid-method -->
+
+
+ <div id="rejections-method" class="method-detail ">
+ <a name="method-i-rejections"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">rejections</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns all rejecting comments</p>
+
+
+
+ <div class="method-source-code" id="rejections-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 67</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">rejections</span>
+ <span class="ruby-identifier">comments</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:rating</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'rejection'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- rejections-source -->
+
+ </div>
+
+
+
+
+ </div><!-- rejections-method -->
+
+
+ <div id="related_cves-method" class="method-detail ">
+ <a name="method-i-related_cves"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">related_cves</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns all CVEs linked to this GLSA</p>
+
+
+
+ <div class="method-source-code" id="related_cves-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 126</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">related_cves</span>
+ <span class="ruby-identifier">last_revision</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">CveAssignment</span>.<span class="ruby-identifier">find_all_by_bug</span>(<span class="ruby-identifier">bug</span>.<span class="ruby-identifier">bug_id</span>).<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">assignment</span><span class="ruby-operator">|</span> <span class="ruby-identifier">assignment</span>.<span class="ruby-identifier">cve</span>}.<span class="ruby-identifier">uniq</span>
+ <span class="ruby-keyword">end</span>.<span class="ruby-identifier">flatten</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- related_cves-source -->
+
+ </div>
+
+
+
+
+ </div><!-- related_cves-method -->
+
+
+ <div id="release-method" class="method-detail ">
+ <a name="method-i-release"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">release</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Performs the steps to release the GLSA, performing santiy checks.</p>
+
+
+
+ <div class="method-source-code" id="release-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 146</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">release</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">GLSAReleaseError</span>, <span class="ruby-string">'Cannot release the GLSA as it is not approved'</span> <span class="ruby-keyword">if</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">is_approved?</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">GLSAReleaseError</span>, <span class="ruby-string">'Cannot release the GLSA as there are comments pending'</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">has_pending_comments?</span>
+ <span class="ruby-comment"># TODO: releasing someone else's draft</span>
+ <span class="ruby-identifier">release!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- release-source -->
+
+ </div>
+
+
+
+
+ </div><!-- release-method -->
+
+
+ <div id="release-21-method" class="method-detail ">
+ <a name="method-i-release-21"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">release!</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Performs the steps to release the GLSA, performing not as many checks. The
+<tt>release</tt> method is to be preferred.</p>
+
+
+
+ <div class="method-source-code" id="release-21-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 154</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">release!</span>
+ <span class="ruby-comment"># This one is not avoidable. Some information is only filled in during the first edit, thus making it required.</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">GLSAReleaseError</span>, <span class="ruby-string">'Cannot release the GLSA as it is not in &quot;draft&quot; or &quot;release&quot; status'</span> <span class="ruby-keyword">if</span> <span class="ruby-keyword">not</span> (<span class="ruby-keyword">self</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">'draft'</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">'release'</span>)
+
+ <span class="ruby-identifier">rev</span> = <span class="ruby-identifier">last_revision</span>.<span class="ruby-identifier">deep_copy</span>
+ <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">is_release</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">release_revision</span> = <span class="ruby-identifier">next_releaseid</span>
+ <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">save!</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">'release'</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">glsa_id</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">next_id</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">first_released_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">status</span> = <span class="ruby-string">'release'</span>
+ <span class="ruby-identifier">save!</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- release-21-source -->
+
+ </div>
+
+
+
+
+ </div><!-- release-21-method -->
+
+
+ <div id="workflow_status-method" class="method-detail ">
+ <a name="method-i-workflow_status"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">workflow_status</span><span
+ class="method-args">(user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the workflow status of this GLSA for a given user. Return values:
+:own (own draft), :approved (approval given), :commented (comment or
+rejection given)</p>
+
+
+
+ <div class="method-source-code" id="workflow_status-source">
+<pre>
+<span class="ruby-comment"># File app/models/glsa.rb, line 104</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">workflow_status</span>(<span class="ruby-identifier">user</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">is_owner?</span>(<span class="ruby-identifier">user</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:own</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">comments</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:rating</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'approval'</span>, <span class="ruby-value">:user_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">id</span>).<span class="ruby-identifier">all</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:approved</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">comments</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:user_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">id</span>).<span class="ruby-identifier">all</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:commented</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">return</span> <span class="ruby-value">:todo</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- workflow_status-source -->
+
+ </div>
+
+
+
+
+ </div><!-- workflow_status-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/GlsaController.html b/doc/app/GlsaController.html
new file mode 100644
index 0000000..c20d239
--- /dev/null
+++ b/doc/app/GlsaController.html
@@ -0,0 +1,1231 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: GlsaController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/glsa_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/glsa_controller.rb">app/controllers/glsa_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-archive">#archive</a></li>
+
+ <li><a href="#method-i-comment">#comment</a></li>
+
+ <li><a href="#method-i-create">#create</a></li>
+
+ <li><a href="#method-i-destroy">#destroy</a></li>
+
+ <li><a href="#method-i-diff">#diff</a></li>
+
+ <li><a href="#method-i-download">#download</a></li>
+
+ <li><a href="#method-i-drafts">#drafts</a></li>
+
+ <li><a href="#method-i-edit">#edit</a></li>
+
+ <li><a href="#method-i-import_references">#import_references</a></li>
+
+ <li><a href="#method-i-new">#new</a></li>
+
+ <li><a href="#method-i-prepare_release">#prepare_release</a></li>
+
+ <li><a href="#method-i-release">#release</a></li>
+
+ <li><a href="#method-i-requests">#requests</a></li>
+
+ <li><a href="#method-i-rev_diff">#rev_diff</a></li>
+
+ <li><a href="#method-i-show">#show</a></li>
+
+ <li><a href="#method-i-update">#update</a></li>
+
+ <li><a href="#method-i-update_cache">#update_cache</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">GlsaController</h1>
+
+ <div id="description" class="description">
+
+<p>GLSA controller</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="archive-method" class="method-detail ">
+ <a name="method-i-archive"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">archive</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="archive-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 26</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">archive</span>
+ <span class="ruby-ivar">@pageID</span> = <span class="ruby-string">&quot;archive&quot;</span>
+ <span class="ruby-ivar">@pageTitle</span> = <span class="ruby-string">&quot;GLSA archive&quot;</span>
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> {
+ <span class="ruby-ivar">@month</span> = (<span class="ruby-identifier">params</span>[<span class="ruby-value">:month</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>.<span class="ruby-identifier">month</span>).<span class="ruby-identifier">to_i</span>
+ <span class="ruby-ivar">@year</span> = (<span class="ruby-identifier">params</span>[<span class="ruby-value">:year</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>.<span class="ruby-identifier">year</span>).<span class="ruby-identifier">to_i</span>
+
+ <span class="ruby-identifier">month_start</span> = <span class="ruby-constant">Date</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@year</span>, <span class="ruby-ivar">@month</span>, <span class="ruby-value">1</span>)
+ <span class="ruby-identifier">month_end</span> = <span class="ruby-constant">Date</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@year</span>, <span class="ruby-ivar">@month</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>, <span class="ruby-value">1</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
+
+ <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'release'</span>, <span class="ruby-value">:first_released_at</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">month_start</span><span class="ruby-operator">..</span><span class="ruby-identifier">month_end</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'updated_at DESC'</span>)
+ }
+ <span class="ruby-identifier">format</span>.<span class="ruby-identifier">js</span> {
+ <span class="ruby-ivar">@month</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:view</span>][<span class="ruby-string">'month(2i)'</span>].<span class="ruby-identifier">to_i</span>
+ <span class="ruby-ivar">@year</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:view</span>][<span class="ruby-string">'month(1i)'</span>].<span class="ruby-identifier">to_i</span>
+
+ <span class="ruby-identifier">month_start</span> = <span class="ruby-constant">Date</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@year</span>, <span class="ruby-ivar">@month</span>, <span class="ruby-value">1</span>)
+ <span class="ruby-identifier">month_end</span> = <span class="ruby-constant">Date</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@year</span>, <span class="ruby-ivar">@month</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>, <span class="ruby-value">1</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
+
+ <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'release'</span>, <span class="ruby-value">:first_released_at</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">month_start</span><span class="ruby-operator">..</span><span class="ruby-identifier">month_end</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'updated_at DESC'</span>)
+ <span class="ruby-ivar">@table</span> = <span class="ruby-identifier">render_to_string</span> <span class="ruby-value">:partial</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;glsa_row&quot;</span>, <span class="ruby-value">:collection</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsas</span>, <span class="ruby-value">:as</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:glsa</span>, <span class="ruby-value">:locals</span> =<span class="ruby-operator">&gt;</span> { <span class="ruby-value">:view</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:drafts</span> }
+ }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- archive-source -->
+
+ </div>
+
+
+
+
+ </div><!-- archive-method -->
+
+
+ <div id="comment-method" class="method-detail ">
+ <a name="method-i-comment"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">comment</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="comment-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 368</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">comment</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- comment-source -->
+
+ </div>
+
+
+
+
+ </div><!-- comment-method -->
+
+
+ <div id="create-method" class="method-detail ">
+ <a name="method-i-create"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">create</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="create-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 70</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:what</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;request&quot;</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">new_request</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:title</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:bugs</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:comment</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:access</span>], (<span class="ruby-identifier">params</span>[<span class="ruby-value">:import_references</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>), <span class="ruby-identifier">current_user</span>)
+
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Mail</span>.<span class="ruby-identifier">request_notification</span>(<span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">current_user</span>)
+
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-node">&quot;Successfully created GLSA #{glsa.glsa_id}&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;requests&quot;</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">flash</span>.<span class="ruby-identifier">now</span>[<span class="ruby-value">:error</span>] = <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;new-request&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- create-source -->
+
+ </div>
+
+
+
+
+ </div><!-- create-method -->
+
+
+ <div id="destroy-method" class="method-detail ">
+ <a name="method-i-destroy"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">destroy</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="destroy-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 365</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- destroy-source -->
+
+ </div>
+
+
+
+
+ </div><!-- destroy-method -->
+
+
+ <div id="diff-method" class="method-detail ">
+ <a name="method-i-diff"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">diff</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="diff-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 332</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">diff</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+
+ <span class="ruby-identifier">rev_old</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:old</span>])
+ <span class="ruby-identifier">rev_new</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:new</span>])
+
+ <span class="ruby-ivar">@diff</span> = <span class="ruby-identifier">with_format</span>(<span class="ruby-value">:xml</span>) { <span class="ruby-identifier">rev_diff</span>(<span class="ruby-ivar">@glsa</span>, <span class="ruby-identifier">rev_old</span>, <span class="ruby-identifier">rev_new</span>) }
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- diff-source -->
+
+ </div>
+
+
+
+
+ </div><!-- diff-method -->
+
+
+ <div id="download-method" class="method-detail ">
+ <a name="method-i-download"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">download</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="download-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 105</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">download</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:rev_id</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:rev_id</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@rev</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;Invalid revision ID&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">text</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">wants</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">xml</span> { <span class="ruby-identifier">text</span> = <span class="ruby-identifier">render_to_string</span>(<span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:show</span>, <span class="ruby-value">:format</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'xml'</span>)}
+ <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">txt</span> { <span class="ruby-identifier">text</span> = <span class="ruby-identifier">render_to_string</span>(<span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:show</span>, <span class="ruby-value">:format</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'txt'</span>)}
+ <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;Cannot download HTML format. Pick .xml or .txt&quot;</span>; <span class="ruby-keyword">return</span> }
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">send_data</span>(<span class="ruby-identifier">text</span>, <span class="ruby-value">:filename</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;glsa-#{@glsa.glsa_id}.#{params[:format]}&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- download-source -->
+
+ </div>
+
+
+
+
+ </div><!-- download-method -->
+
+
+ <div id="drafts-method" class="method-detail ">
+ <a name="method-i-drafts"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">drafts</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="drafts-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 20</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">drafts</span>
+ <span class="ruby-ivar">@pageID</span> = <span class="ruby-string">&quot;drafts&quot;</span>
+ <span class="ruby-ivar">@pageTitle</span> = <span class="ruby-string">&quot;Pooled GLSA drafts&quot;</span>
+ <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'draft'</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'updated_at DESC'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- drafts-source -->
+
+ </div>
+
+
+
+
+ </div><!-- drafts-method -->
+
+
+ <div id="edit-method" class="method-detail ">
+ <a name="method-i-edit"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">edit</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="edit-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 126</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">edit</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span>
+
+ <span class="ruby-comment"># Packages</span>
+ <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">vulnerable_packages</span>.<span class="ruby-identifier">build</span>(<span class="ruby-value">:comp</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;&lt;&quot;</span>, <span class="ruby-value">:arch</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;*&quot;</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">vulnerable_packages</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+ <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">unaffected_packages</span>.<span class="ruby-identifier">build</span>(<span class="ruby-value">:comp</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;&gt;=&quot;</span>, <span class="ruby-value">:arch</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;*&quot;</span>) <span class="ruby-keyword">if</span> <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">unaffected_packages</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+
+ <span class="ruby-comment"># References</span>
+ <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">references</span>.<span class="ruby-identifier">build</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">references</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
+
+ <span class="ruby-ivar">@templates</span> = {}
+ <span class="ruby-constant">GLSAMAKER_TEMPLATE_TARGETS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">target</span><span class="ruby-operator">|</span>
+ <span class="ruby-ivar">@templates</span>[<span class="ruby-identifier">target</span>] = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:target</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">target</span>).<span class="ruby-identifier">all</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- edit-source -->
+
+ </div>
+
+
+
+
+ </div><!-- edit-method -->
+
+
+ <div id="import_references-method" class="method-detail ">
+ <a name="method-i-import_references"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">import_references</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="import_references-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 371</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">import_references</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:go</span>].<span class="ruby-identifier">to_s</span> <span class="ruby-operator">==</span> <span class="ruby-string">'1'</span>
+ <span class="ruby-identifier">glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-constant">Integer</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>]))
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-identifier">glsa</span>)
+ <span class="ruby-identifier">refs</span> = []
+
+ <span class="ruby-identifier">params</span>[<span class="ruby-value">:import</span>][<span class="ruby-value">:cve</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cve_id</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">cve</span> = <span class="ruby-constant">Cve</span>.<span class="ruby-identifier">find_by_cve_id</span> <span class="ruby-identifier">cve_id</span>
+ <span class="ruby-identifier">refs</span> <span class="ruby-operator">&lt;&lt;</span> {<span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">cve_id</span>, <span class="ruby-value">:url</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">cve</span>.<span class="ruby-identifier">url</span>}
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">add_references</span> <span class="ruby-identifier">refs</span>
+
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-node">&quot;Imported #{refs.count} references.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">id</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-constant">Integer</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>]))
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-ivar">@cves</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">related_cves</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;Error: #{e.message}&quot;</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- import_references-source -->
+
+ </div>
+
+
+
+
+ </div><!-- import_references-method -->
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-i-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 53</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">new</span>
+ <span class="ruby-ivar">@pageID</span> = <span class="ruby-string">&quot;new&quot;</span>
+ <span class="ruby-ivar">@pageTitle</span> = <span class="ruby-string">&quot;New GLSA&quot;</span>
+
+ <span class="ruby-comment"># TODO: Straight-to-draft editing</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;new-request&quot;</span>
+ <span class="ruby-keyword">return</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:what</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;request&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;new-request&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:what</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;draft&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;new-draft&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">render</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ <div id="prepare_release-method" class="method-detail ">
+ <a name="method-i-prepare_release"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">prepare_release</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="prepare_release-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 253</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">prepare_release</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">access</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">2</span>
+ <span class="ruby-identifier">deny_access</span> <span class="ruby-string">&quot;Tried to prepare release&quot;</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">'request'</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">'You cannot release a request. Draft the advisory first.'</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">restricted</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">'You cannot release a confidential draft. Make it public first.'</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span>
+
+ <span class="ruby-ivar">@comments_override</span> = (<span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">is_el_jefe?</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:override_approvals</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>) <span class="ruby-operator">||</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- prepare_release-source -->
+
+ </div>
+
+
+
+
+ </div><!-- prepare_release-method -->
+
+
+ <div id="release-method" class="method-detail ">
+ <a name="method-i-release"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">release</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="release-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 279</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">release</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">access</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">2</span>
+ <span class="ruby-identifier">deny_access</span> <span class="ruby-string">&quot;Tried to prepare release&quot;</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">'request'</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">'You cannot release a request. Draft the advisory first.'</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">restricted</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">'You cannot release a confidential draft. Make it public first.'</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">is_el_jefe?</span>
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">release!</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">release</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">invalidate_last_revision_cache</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:email</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'1'</span>
+ <span class="ruby-identifier">of</span> = <span class="ruby-ivar">@template_format</span>
+ <span class="ruby-ivar">@template_format</span> = <span class="ruby-string">'txt'</span>
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Mail</span>.<span class="ruby-identifier">send_text</span>(
+ <span class="ruby-identifier">render_to_string</span>({<span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'glsa/show.txt.erb'</span>, <span class="ruby-value">:format</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:txt</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>}),
+ <span class="ruby-node">&quot;[ GLSA #{@glsa.glsa_id} ] #{@rev.title}&quot;</span>,
+ <span class="ruby-identifier">current_user</span>,
+ <span class="ruby-keyword">false</span>
+ )
+ <span class="ruby-ivar">@template_format</span> = <span class="ruby-identifier">of</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">GLSAReleaseError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-node">&quot;Internal error: #{e.message}. Cannot release advisory.&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># ugly hack, but necessary to switch back to html</span>
+ <span class="ruby-ivar">@real_format</span> = <span class="ruby-string">'html'</span>
+ <span class="ruby-identifier">render</span>(<span class="ruby-value">:format</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:html</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'application'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- release-source -->
+
+ </div>
+
+
+
+
+ </div><!-- release-method -->
+
+
+ <div id="requests-method" class="method-detail ">
+ <a name="method-i-requests"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">requests</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="requests-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">requests</span>
+ <span class="ruby-ivar">@pageID</span> = <span class="ruby-string">&quot;requests&quot;</span>
+ <span class="ruby-ivar">@pageTitle</span> = <span class="ruby-string">&quot;Pooled GLSA requests&quot;</span>
+ <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'request'</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">'updated_at DESC'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- requests-source -->
+
+ </div>
+
+
+
+
+ </div><!-- requests-method -->
+
+
+ <div id="show-method" class="method-detail ">
+ <a name="method-i-show"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">show</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="show-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 87</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">show</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:rev_id</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:rev_id</span>])
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@rev</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;Invalid revision ID&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;show&quot;</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">wants</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">render</span> }
+ <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">xml</span> { }
+ <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">txt</span> { <span class="ruby-identifier">render</span> }
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- show-source -->
+
+ </div>
+
+
+
+
+ </div><!-- show-method -->
+
+
+ <div id="update-method" class="method-detail ">
+ <a name="method-i-update"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="update-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 144</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-ivar">@prev_latest_rev</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;Unknown GLSA ID&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;index&quot;</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># GLSA object</span>
+ <span class="ruby-comment"># The first editor is submitter</span>
+ <span class="ruby-comment"># TODO: Maybe take a better condition (adding bugs would make so. the submitter)</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">submitter</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">submitter</span> = <span class="ruby-identifier">current_user</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">status</span> = <span class="ruby-string">&quot;draft&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;request&quot;</span>
+
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">restricted</span> = (<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:restricted</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;confidential&quot;</span>)
+
+ <span class="ruby-comment"># Force update</span>
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">updated_at</span> = <span class="ruby-value">0</span>
+
+ <span class="ruby-identifier">revision</span> = <span class="ruby-constant">Revision</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">revid</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">next_revid</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">glsa</span> = <span class="ruby-ivar">@glsa</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">user</span> = <span class="ruby-identifier">current_user</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">title</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:title</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">synopsis</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:synopsis</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">access</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:access</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">severity</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:severity</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">product</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:product</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">description</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:description</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">background</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:background</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">impact</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:impact</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">workaround</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:workaround</span>]
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">resolution</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:resolution</span>]
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-identifier">flash</span>.<span class="ruby-identifier">now</span>[<span class="ruby-value">:error</span>] = <span class="ruby-node">&quot;Errors occurred while saving the Revision object: #{revision.errors.full_messages.join ', '}&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;edit&quot;</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;Errors occurred while saving the GLSA object&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;edit&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># Bugs</span>
+ <span class="ruby-identifier">bugzilla_warning</span> = <span class="ruby-keyword">false</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:bugs</span>]
+ <span class="ruby-identifier">bugs</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:bugs</span>].<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">to_i</span> }
+
+ <span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">b</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Bugs</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug</span>)
+
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">create</span>(
+ <span class="ruby-value">:bug_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bug</span>,
+ <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">summary</span>,
+ <span class="ruby-value">:whiteboard</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">status_whiteboard</span>,
+ <span class="ruby-value">:arches</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">arch_cc</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">', '</span>)
+ )
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> { <span class="ruby-identifier">e</span>.<span class="ruby-identifier">inspect</span> }
+ <span class="ruby-comment"># In case of bugzilla errors, just keep the bug #</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">create</span>(
+ <span class="ruby-value">:bug_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bug</span>
+ )
+ <span class="ruby-identifier">bugzilla_warning</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:package</span>].<span class="ruby-identifier">inspect</span>
+
+ <span class="ruby-comment"># Packages</span>
+ <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:package</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">package</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-identifier">package</span>.<span class="ruby-identifier">inspect</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">package</span>[<span class="ruby-value">:atom</span>].<span class="ruby-identifier">strip</span> <span class="ruby-operator">==</span> <span class="ruby-string">''</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">packages</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">package</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># References</span>
+ <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-value">:reference</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reference</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-identifier">reference</span>.<span class="ruby-identifier">inspect</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">reference</span>[<span class="ruby-value">:title</span>].<span class="ruby-identifier">strip</span> <span class="ruby-operator">==</span> <span class="ruby-string">''</span>
+ <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">references</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">reference</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># Comments</span>
+ <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">comments</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">comment</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">read</span> = <span class="ruby-identifier">params</span>[<span class="ruby-node">&quot;commentread-#{comment.id}&quot;</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;true&quot;</span>
+ <span class="ruby-identifier">comment</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># Sending emails</span>
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Mail</span>.<span class="ruby-identifier">edit_notification</span>(<span class="ruby-ivar">@glsa</span>, <span class="ruby-identifier">rev_diff</span>(<span class="ruby-ivar">@glsa</span>, <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>[<span class="ruby-value">-2</span>], <span class="ruby-identifier">revision</span>), <span class="ruby-identifier">current_user</span>)
+
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-node">&quot;Saving was successful. #{'NOTE: Bugzilla integration is not available, only plain bug numbers.' if bugzilla_warning}&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'show'</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
+
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update-method -->
+
+
+ <div id="update_cache-method" class="method-detail ">
+ <a name="method-i-update_cache"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update_cache</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="update_cache-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 342</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update_cache</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">check_object_access!</span>(<span class="ruby-ivar">@glsa</span>)
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span>
+
+ <span class="ruby-ivar">@rev</span>.<span class="ruby-identifier">update_cached_bug_metadata</span>
+
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-string">&quot;Successfully updated all caches.&quot;</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:redirect</span>]
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:redirect</span>]
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'show'</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:no_redirect</span>]
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-node">&quot;Could not update caches: #{e.message}&quot;</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:redirect</span>]
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:redirect</span>]
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'show'</span>, <span class="ruby-value">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:no_redirect</span>]
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update_cache-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update_cache-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ <div id="protected-instance-method-details" class="method-section section">
+ <h3 class="section-header">Protected Instance Methods</h3>
+
+
+ <div id="rev_diff-method" class="method-detail ">
+ <a name="method-i-rev_diff"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">rev_diff</span><span
+ class="method-args">(glsa, rev_old, rev_new, format = :unified, context_lines = 3)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="rev_diff-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/glsa_controller.rb, line 403</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">rev_diff</span>(<span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">rev_old</span>, <span class="ruby-identifier">rev_new</span>, <span class="ruby-identifier">format</span> = <span class="ruby-value">:unified</span>, <span class="ruby-identifier">context_lines</span> = <span class="ruby-value">3</span>)
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-identifier">glsa</span>
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-identifier">rev_old</span>
+ <span class="ruby-identifier">old_text</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>.<span class="ruby-identifier">indent</span>(
+ <span class="ruby-identifier">render_to_string</span>(
+ <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'glsa/_glsa.xml.builder'</span>,
+ <span class="ruby-value">:locals</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-value">:glsa</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>, <span class="ruby-value">:rev</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@rev</span>},
+ <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'none'</span>
+ ),
+ {<span class="ruby-value">:indent</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span>, <span class="ruby-value">:maxcols</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">80</span>}
+ )
+
+ <span class="ruby-ivar">@rev</span> = <span class="ruby-identifier">rev_new</span>
+ <span class="ruby-identifier">new_text</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>.<span class="ruby-identifier">indent</span>(
+ <span class="ruby-identifier">render_to_string</span>(
+ <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'glsa/_glsa.xml.builder'</span>,
+ <span class="ruby-value">:locals</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-value">:glsa</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>, <span class="ruby-value">:rev</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@rev</span>},
+ <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'none'</span>
+ ),
+ {<span class="ruby-value">:indent</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span>, <span class="ruby-value">:maxcols</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">80</span>}
+ )
+
+ <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Diff</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">old_text</span>, <span class="ruby-identifier">new_text</span>, <span class="ruby-identifier">format</span>, <span class="ruby-identifier">context_lines</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- rev_diff-source -->
+
+ </div>
+
+
+
+
+ </div><!-- rev_diff-method -->
+
+
+ </div><!-- protected-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/GlsaHelper.html b/doc/app/GlsaHelper.html
new file mode 100644
index 0000000..1397dd3
--- /dev/null
+++ b/doc/app/GlsaHelper.html
@@ -0,0 +1,876 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: GlsaHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/glsa_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/glsa_helper.rb">app/helpers/glsa_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-add_reference_link">#add_reference_link</a></li>
+
+ <li><a href="#method-i-add_unaffected_package_link">#add_unaffected_package_link</a></li>
+
+ <li><a href="#method-i-add_vulnerable_package_link">#add_vulnerable_package_link</a></li>
+
+ <li><a href="#method-i-adv_wrap">#adv_wrap</a></li>
+
+ <li><a href="#method-i-approval_icon">#approval_icon</a></li>
+
+ <li><a href="#method-i-bugready_icon">#bugready_icon</a></li>
+
+ <li><a href="#method-i-check_icon">#check_icon</a></li>
+
+ <li><a href="#method-i-glsa_content">#glsa_content</a></li>
+
+ <li><a href="#method-i-is_approval_icon">#is_approval_icon</a></li>
+
+ <li><a href="#method-i-lastrev_content">#lastrev_content</a></li>
+
+ <li><a href="#method-i-prefixed_item">#prefixed_item</a></li>
+
+ <li><a href="#method-i-restricted_icon">#restricted_icon</a></li>
+
+ <li><a href="#method-i-status_icon">#status_icon</a></li>
+
+ <li><a href="#method-i-template_popups">#template_popups</a></li>
+
+ <li><a href="#method-i-workflow_icon">#workflow_icon</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">GlsaHelper</h1>
+
+ <div id="description" class="description">
+
+<p>GLSA Helper</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="add_reference_link-method" class="method-detail ">
+ <a name="method-i-add_reference_link"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_reference_link</span><span
+ class="method-args">(name)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="add_reference_link-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 37</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_reference_link</span>(<span class="ruby-identifier">name</span>)
+ <span class="ruby-identifier">link_to_function</span> <span class="ruby-identifier">name</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;Add reference&quot;</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">page</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">page</span>.<span class="ruby-identifier">insert_html</span> <span class="ruby-value">:bottom</span>, <span class="ruby-value">:references_table</span>, <span class="ruby-value">:partial</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'reference'</span>, <span class="ruby-value">:object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">Reference</span>.<span class="ruby-identifier">new</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_reference_link-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_reference_link-method -->
+
+
+ <div id="add_unaffected_package_link-method" class="method-detail ">
+ <a name="method-i-add_unaffected_package_link"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_unaffected_package_link</span><span
+ class="method-args">(name)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="add_unaffected_package_link-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 30</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_unaffected_package_link</span>(<span class="ruby-identifier">name</span>)
+ <span class="ruby-identifier">link_to_function</span>(
+ <span class="ruby-identifier">name</span>,
+ <span class="ruby-node">&quot;Element.insert('packages_table_unaffected', { bottom: '#{escape_javascript(render(:partial =&gt; '/glsa/package', :object =&gt; Package.new(:comp =&gt; &quot;&lt;&quot;, :arch =&gt; &quot;*&quot;, :my_type =&gt; &quot;unaffected&quot;)))}' })&quot;</span>,
+ <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'Add package'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_unaffected_package_link-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_unaffected_package_link-method -->
+
+
+ <div id="add_vulnerable_package_link-method" class="method-detail ">
+ <a name="method-i-add_vulnerable_package_link"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">add_vulnerable_package_link</span><span
+ class="method-args">(name)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="add_vulnerable_package_link-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 23</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_vulnerable_package_link</span>(<span class="ruby-identifier">name</span>)
+ <span class="ruby-identifier">link_to_function</span>(
+ <span class="ruby-identifier">name</span>,
+ <span class="ruby-node">&quot;Element.insert('packages_table_vulnerable', { bottom: '#{escape_javascript(render(:partial =&gt; '/glsa/package', :object =&gt; Package.new(:comp =&gt; &quot;&lt;&quot;, :arch =&gt; &quot;*&quot;, :my_type =&gt; &quot;vulnerable&quot;)))}' })&quot;</span>,
+ <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'Add package'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- add_vulnerable_package_link-source -->
+
+ </div>
+
+
+
+
+ </div><!-- add_vulnerable_package_link-method -->
+
+
+ <div id="adv_wrap-method" class="method-detail ">
+ <a name="method-i-adv_wrap"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">adv_wrap</span><span
+ class="method-args">(text, shorten_args = false)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="adv_wrap-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 120</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">adv_wrap</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">shorten_args</span> = <span class="ruby-keyword">false</span>)
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/\r?\n/</span>, <span class="ruby-string">&quot;\n&quot;</span>)
+
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/&lt;\/?(b|i)&gt;/</span>, <span class="ruby-string">''</span>)
+
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/(?:&lt;ul&gt;\s*(.*?)&lt;\/ul&gt;(?:\s*\n)?)/</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
+ <span class="ruby-node">$1</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/&lt;li&gt;(.*?)&lt;\/li&gt;\s*/</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span>
+ (<span class="ruby-string">'* '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">word_wrap</span>(<span class="ruby-node">$1</span>, <span class="ruby-value">69</span>)).<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&quot;\n&quot;</span>, <span class="ruby-string">&quot;\n &quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&quot;\n\n&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/(?:&lt;ol&gt;\s*(.*?)&lt;\/ol&gt;(?:\s*\n)?)/</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">nom</span> = <span class="ruby-value">0</span>
+ <span class="ruby-node">$1</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/&lt;li&gt;(.*?)&lt;\/li&gt;\s*/</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span>
+ (<span class="ruby-node">&quot;#{nom += 1}. &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">word_wrap</span>(<span class="ruby-node">$1</span>, <span class="ruby-value">68</span>)).<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&quot;\n&quot;</span>, <span class="ruby-string">&quot;\n &quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&quot;\n\n&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/(?:&lt;code&gt;\s*(.*?)&lt;\/code&gt;(?:\s*\n)?)/</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
+ (<span class="ruby-string">' '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">word_wrap</span>(<span class="ruby-identifier">shorten_args</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">shorten_args</span>(<span class="ruby-node">$1</span>) <span class="ruby-operator">:</span> <span class="ruby-node">$1</span>, <span class="ruby-value">69</span>)).<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&quot;\n&quot;</span>, <span class="ruby-string">&quot;\n &quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&quot;\n\n&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">word_wrap</span>(<span class="ruby-identifier">text</span>.<span class="ruby-identifier">chomp</span>, <span class="ruby-value">71</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- adv_wrap-source -->
+
+ </div>
+
+
+
+
+ </div><!-- adv_wrap-method -->
+
+
+ <div id="approval_icon-method" class="method-detail ">
+ <a name="method-i-approval_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">approval_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="approval_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 63</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">approval_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:approved</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/status-green.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is approved for sending.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:commented</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/status-red.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item has received comments.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:comments_pending</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/status-yellow.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item has received comments.&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/status-grey.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item has no comments.&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- approval_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- approval_icon-method -->
+
+
+ <div id="bugready_icon-method" class="method-detail ">
+ <a name="method-i-bugready_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bugready_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="bugready_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 55</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bugready_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/bug.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is bug ready.&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/bug-grey.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is NOT bug ready.&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bugready_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bugready_icon-method -->
+
+
+ <div id="check_icon-method" class="method-detail ">
+ <a name="method-i-check_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">check_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="check_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 95</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">check_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/ok.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;All checks passed&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/error.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;Error. Cannot continue.&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- check_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- check_icon-method -->
+
+
+ <div id="glsa_content-method" class="method-detail ">
+ <a name="method-i-glsa_content"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">glsa_content</span><span
+ class="method-args">(g, field)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="glsa_content-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 15</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">glsa_content</span>(<span class="ruby-identifier">g</span>, <span class="ruby-identifier">field</span>)
+ (<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-identifier">field</span>.<span class="ruby-identifier">to_sym</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>]) <span class="ruby-operator">||</span> <span class="ruby-identifier">g</span>[<span class="ruby-identifier">field</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- glsa_content-source -->
+
+ </div>
+
+
+
+
+ </div><!-- glsa_content-method -->
+
+
+ <div id="is_approval_icon-method" class="method-detail ">
+ <a name="method-i-is_approval_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">is_approval_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="is_approval_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 103</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_approval_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">'icons/approved.png'</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'This item is an approval'</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">'icons/not-approved.png'</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'This item is a rejection'</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- is_approval_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- is_approval_icon-method -->
+
+
+ <div id="lastrev_content-method" class="method-detail ">
+ <a name="method-i-lastrev_content"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">lastrev_content</span><span
+ class="method-args">(g, field)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="lastrev_content-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 19</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">lastrev_content</span>(<span class="ruby-identifier">g</span>, <span class="ruby-identifier">field</span>)
+ (<span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>][<span class="ruby-identifier">field</span>.<span class="ruby-identifier">to_sym</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:glsa</span>]) <span class="ruby-operator">||</span> <span class="ruby-identifier">g</span>.<span class="ruby-identifier">last_revision</span>[<span class="ruby-identifier">field</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- lastrev_content-source -->
+
+ </div>
+
+
+
+
+ </div><!-- lastrev_content-method -->
+
+
+ <div id="prefixed_item-method" class="method-detail ">
+ <a name="method-i-prefixed_item"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">prefixed_item</span><span
+ class="method-args">(prefix, text)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="prefixed_item-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 111</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">prefixed_item</span>(<span class="ruby-identifier">prefix</span>, <span class="ruby-identifier">text</span>)
+ <span class="ruby-identifier">tf</span> = <span class="ruby-constant">Text</span><span class="ruby-operator">::</span><span class="ruby-constant">Format</span>.<span class="ruby-identifier">new</span>()
+ <span class="ruby-identifier">tf</span>.<span class="ruby-identifier">first_indent</span> = <span class="ruby-identifier">tf</span>.<span class="ruby-identifier">body_indent</span> = <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
+
+ <span class="ruby-identifier">str</span> = <span class="ruby-identifier">tf</span>.<span class="ruby-identifier">format</span>(<span class="ruby-identifier">text</span>)
+ <span class="ruby-identifier">str</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">prefix</span>.<span class="ruby-identifier">length</span>] = <span class="ruby-identifier">prefix</span>
+ <span class="ruby-identifier">str</span>.<span class="ruby-identifier">chomp</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- prefixed_item-source -->
+
+ </div>
+
+
+
+
+ </div><!-- prefixed_item-method -->
+
+
+ <div id="restricted_icon-method" class="method-detail ">
+ <a name="method-i-restricted_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">restricted_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="restricted_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 87</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">restricted_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/confidential.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is CONFIDENTIAL.&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/public.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is public.&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- restricted_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- restricted_icon-method -->
+
+
+ <div id="status_icon-method" class="method-detail ">
+ <a name="method-i-status_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">status_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="status_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 43</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">status_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;request&quot;</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/request.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is a request.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;draft&quot;</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/draft.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is a draft.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;release&quot;</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/sent.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This item is a sent GLSA.&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-string">&quot;?&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- status_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- status_icon-method -->
+
+
+ <div id="template_popups-method" class="method-detail ">
+ <a name="method-i-template_popups"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">template_popups</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="template_popups-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 145</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">template_popups</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:partial</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'template_popups'</span>, <span class="ruby-value">:locals</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-value">:templates</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@templates</span>}
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- template_popups-source -->
+
+ </div>
+
+
+
+
+ </div><!-- template_popups-method -->
+
+
+ <div id="workflow_icon-method" class="method-detail ">
+ <a name="method-i-workflow_icon"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">workflow_icon</span><span
+ class="method-args">(status)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="workflow_icon-source">
+<pre>
+<span class="ruby-comment"># File app/helpers/glsa_helper.rb, line 75</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">workflow_icon</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:commented</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/commented.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;You have commented on this item.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:approved</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/approved.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;You have approved this item.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:own</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/user.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;This is your own draft.&quot;</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:todo</span>
+ <span class="ruby-identifier">image_tag</span> <span class="ruby-string">&quot;icons/not-approved.png&quot;</span>, <span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;Please comment and/or approve.&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- workflow_icon-source -->
+
+ </div>
+
+
+
+
+ </div><!-- workflow_icon-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/GlsaMailer.html b/doc/app/GlsaMailer.html
new file mode 100644
index 0000000..8f1030a
--- /dev/null
+++ b/doc/app/GlsaMailer.html
@@ -0,0 +1,440 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: GlsaMailer</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/mailers/glsa_mailer_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/mailers/glsa_mailer.rb">app/mailers/glsa_mailer.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActionMailer::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-approval">#approval</a></li>
+
+ <li><a href="#method-i-comment">#comment</a></li>
+
+ <li><a href="#method-i-edit">#edit</a></li>
+
+ <li><a href="#method-i-new_request">#new_request</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">GlsaMailer</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="approval-method" class="method-detail ">
+ <a name="method-i-approval"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">approval</span><span
+ class="method-args">(recipient, glsa)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="approval-source">
+<pre>
+<span class="ruby-comment"># File app/mailers/glsa_mailer.rb, line 31</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">approval</span>(<span class="ruby-identifier">recipient</span>, <span class="ruby-identifier">glsa</span>)
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-identifier">mail</span>(<span class="ruby-value">:to</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">recipient</span>.<span class="ruby-identifier">email</span>,
+ <span class="ruby-value">:subject</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;[GLSAMaker] Draft approved: #{glsa.last_revision.title}&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- approval-source -->
+
+ </div>
+
+
+
+
+ </div><!-- approval-method -->
+
+
+ <div id="comment-method" class="method-detail ">
+ <a name="method-i-comment"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">comment</span><span
+ class="method-args">(recipient, glsa, comment, commentator)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="comment-source">
+<pre>
+<span class="ruby-comment"># File app/mailers/glsa_mailer.rb, line 22</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">comment</span>(<span class="ruby-identifier">recipient</span>, <span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">commentator</span>)
+ <span class="ruby-ivar">@commentator</span> = <span class="ruby-identifier">commentator</span>
+ <span class="ruby-ivar">@comment</span> = <span class="ruby-identifier">comment</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-identifier">mail</span>(<span class="ruby-value">:to</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">recipient</span>.<span class="ruby-identifier">email</span>,
+ <span class="ruby-value">:subject</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;[GLSAMaker] Draft commented: #{glsa.last_revision.title}&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- comment-source -->
+
+ </div>
+
+
+
+
+ </div><!-- comment-method -->
+
+
+ <div id="edit-method" class="method-detail ">
+ <a name="method-i-edit"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">edit</span><span
+ class="method-args">(recipient, glsa, diff, editor)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="edit-source">
+<pre>
+<span class="ruby-comment"># File app/mailers/glsa_mailer.rb, line 13</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">edit</span>(<span class="ruby-identifier">recipient</span>, <span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">diff</span>, <span class="ruby-identifier">editor</span>)
+ <span class="ruby-ivar">@editor</span> = <span class="ruby-identifier">editor</span>
+ <span class="ruby-ivar">@diff</span> = <span class="ruby-identifier">diff</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-identifier">mail</span>(<span class="ruby-value">:to</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">recipient</span>.<span class="ruby-identifier">email</span>,
+ <span class="ruby-value">:subject</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;[GLSAMaker] Draft edit: #{glsa.last_revision.title}&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- edit-source -->
+
+ </div>
+
+
+
+
+ </div><!-- edit-method -->
+
+
+ <div id="new_request-method" class="method-detail ">
+ <a name="method-i-new_request"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new_request</span><span
+ class="method-args">(recipient, glsa, requestor)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="new_request-source">
+<pre>
+<span class="ruby-comment"># File app/mailers/glsa_mailer.rb, line 5</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">new_request</span>(<span class="ruby-identifier">recipient</span>, <span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">requestor</span>)
+ <span class="ruby-ivar">@requestor</span> = <span class="ruby-identifier">requestor</span>
+ <span class="ruby-ivar">@glsa</span> = <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-identifier">mail</span>(<span class="ruby-value">:to</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">recipient</span>.<span class="ruby-identifier">email</span>,
+ <span class="ruby-value">:subject</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;[GLSAMaker] New request: #{glsa.last_revision.title}&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new_request-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new_request-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker.html b/doc/app/Glsamaker.html
new file mode 100644
index 0000000..55bd87f
--- /dev/null
+++ b/doc/app/Glsamaker.html
@@ -0,0 +1,388 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ <li><a href="./lib/glsamaker/xml_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/xml.rb">lib/glsamaker/xml.rb</a></li>
+
+ <li><a href="./lib/glsamaker/helpers_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/helpers.rb">lib/glsamaker/helpers.rb</a></li>
+
+ <li><a href="./lib/glsamaker/http_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/http.rb">lib/glsamaker/http.rb</a></li>
+
+ <li><a href="./lib/glsamaker/mail_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/mail.rb">lib/glsamaker/mail.rb</a></li>
+
+ <li><a href="./lib/glsamaker/diff_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/diff.rb">lib/glsamaker/diff.rb</a></li>
+
+ <li><a href="./lib/glsamaker/portage_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/portage.rb">lib/glsamaker/portage.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">MODULE</span> <a href="Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-help">#help</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker</h1>
+
+ <div id="description" class="description">
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+<hr style="height: 1px">
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+<hr style="height: 1px">
+
+<p>GLSAMaker library</p>
+<hr style="height: 1px">
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010-11 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="help-method" class="method-detail ">
+ <a name="method-i-help"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">help</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="help-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/helpers.rb, line 13</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">help</span>
+ <span class="ruby-constant">Helper</span>.<span class="ruby-identifier">instance</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- help-source -->
+
+ </div>
+
+
+
+
+ </div><!-- help-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Bugs.html b/doc/app/Glsamaker/Bugs.html
new file mode 100644
index 0000000..08b4f0b
--- /dev/null
+++ b/doc/app/Glsamaker/Bugs.html
@@ -0,0 +1,279 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Bugs</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">MODULE</span> <a href="Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><span class="type">MODULE</span> <a href="Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><span class="type">CLASS</span> <a href="Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ </ul>
+ </div>
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Bugs</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Bugs/ArchesMixin.html b/doc/app/Glsamaker/Bugs/ArchesMixin.html
new file mode 100644
index 0000000..d1bc6e8
--- /dev/null
+++ b/doc/app/Glsamaker/Bugs/ArchesMixin.html
@@ -0,0 +1,310 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Bugs::ArchesMixin</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-arch_cc">#arch_cc</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Bugs::ArchesMixin</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="arch_cc-method" class="method-detail ">
+ <a name="method-i-arch_cc"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">arch_cc</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns an array of all arch teams in CC</p>
+
+
+
+ <div class="method-source-code" id="arch_cc-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 35</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">arch_cc</span>
+ <span class="ruby-ivar">@arch_cc</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">_arch_cc</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- arch_cc-source -->
+
+ </div>
+
+
+
+
+ </div><!-- arch_cc-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Bugs/Bug.html b/doc/app/Glsamaker/Bugs/Bug.html
new file mode 100644
index 0000000..810cd26
--- /dev/null
+++ b/doc/app/Glsamaker/Bugs/Bug.html
@@ -0,0 +1,376 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Glsamaker::Bugs::Bug</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-cc">#cc</a></li>
+
+ <li><a href="#method-i-whiteboard">#whiteboard</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><a class="include" href="StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+
+
+ <li><a class="include" href="ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+
+
+ <li><a class="include" href="BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Glsamaker::Bugs::Bug</h1>
+
+ <div id="description" class="description">
+
+<p>Extends <a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a> with the <a
+href="Status.html">Status</a> and Arches functionality</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="cc-method" class="method-detail ">
+ <a name="method-i-cc"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">cc</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="cc-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 82</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">cc</span>
+ <span class="ruby-ivar">@cc</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- cc-source -->
+
+ </div>
+
+
+
+
+ </div><!-- cc-method -->
+
+
+ <div id="whiteboard-method" class="method-detail ">
+ <a name="method-i-whiteboard"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">whiteboard</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="whiteboard-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 78</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">whiteboard</span>
+ <span class="ruby-ivar">@status_whiteboard</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- whiteboard-source -->
+
+ </div>
+
+
+
+
+ </div><!-- whiteboard-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Bugs/BugReadyMixin.html b/doc/app/Glsamaker/Bugs/BugReadyMixin.html
new file mode 100644
index 0000000..b34c627
--- /dev/null
+++ b/doc/app/Glsamaker/Bugs/BugReadyMixin.html
@@ -0,0 +1,317 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Bugs::BugReadyMixin</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-bug_ready-3F">#bug_ready?</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Bugs::BugReadyMixin</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="bug_ready-3F-method" class="method-detail ">
+ <a name="method-i-bug_ready-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug_ready?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Indicates whether this bug has been handled and is in the correct state for
+sending a GLSA assigned to it.</p>
+
+
+
+ <div class="method-source-code" id="bug_ready-3F-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 65</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug_ready?</span>
+ <span class="ruby-identifier">secbug_status</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-value">:glsa</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">pending?</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">arch_cc</span> <span class="ruby-operator">==</span> []
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug_ready-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug_ready-3F-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Bugs/Status.html b/doc/app/Glsamaker/Bugs/Status.html
new file mode 100644
index 0000000..6d819fe
--- /dev/null
+++ b/doc/app/Glsamaker/Bugs/Status.html
@@ -0,0 +1,580 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Glsamaker::Bugs::Status</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-new">::new</a></li>
+
+ <li><a href="#method-i-3C-3D-3E">#<=></a></li>
+
+ <li><a href="#method-i-blocked-3F">#blocked?</a></li>
+
+ <li><a href="#method-i-overdue-3F">#overdue?</a></li>
+
+ <li><a href="#method-i-pending-3F">#pending?</a></li>
+
+ <li><a href="#method-i-to_s">#to_s</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><span class="include">Comparable</span></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Glsamaker::Bugs::Status</h1>
+
+ <div id="description" class="description">
+
+<p>This baby is a bug status, one of the things you see in squared brackets in
+whiteboards.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+ <!-- Attributes -->
+ <div id="attribute-method-details" class="method-section section">
+ <h3 class="section-header">Attributes</h3>
+
+
+ <div id="status-attribute-method" class="method-detail">
+ <a name="status"></a>
+
+ <div class="method-heading attribute-method-heading">
+ <span class="method-name">status</span><span
+ class="attribute-access-type">[R]</span>
+ </div>
+
+ <div class="method-description">
+
+
+
+ </div>
+ </div>
+
+ </div><!-- attribute-method-details -->
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="new-method" class="method-detail ">
+ <a name="method-c-new"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">new</span><span
+ class="method-args">(str)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Creates a new <a href="Status.html">Status</a> object by parsing
+<tt>str</tt> as a single status string</p>
+
+
+
+ <div class="method-source-code" id="new-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 98</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">str</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">str</span> <span class="ruby-operator">==</span> <span class="ruby-string">'?'</span>
+ <span class="ruby-ivar">@status</span> = <span class="ruby-string">'?'</span>.<span class="ruby-identifier">to_sym</span>
+ <span class="ruby-ivar">@blocked</span> = <span class="ruby-ivar">@overdue</span> = <span class="ruby-ivar">@pending</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">cmp</span> = <span class="ruby-identifier">str</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\s+/</span>)
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">cmp</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">2</span>
+ <span class="ruby-ivar">@blocked</span> = (<span class="ruby-identifier">cmp</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;blocked&quot;</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">cmp</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">=~</span> <span class="ruby-regexp">/^(upstream|ebuild|stable|glsa|noglsa)(\+|\?|\+\?|\?\+)?$/</span>
+ <span class="ruby-ivar">@overdue</span> = (<span class="ruby-node">$2</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-node">$2</span>.<span class="ruby-identifier">include?</span> <span class="ruby-string">&quot;+&quot;</span>)
+ <span class="ruby-ivar">@pending</span> = (<span class="ruby-node">$2</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">and</span> <span class="ruby-node">$2</span>.<span class="ruby-identifier">include?</span> <span class="ruby-string">&quot;?&quot;</span>)
+
+ <span class="ruby-ivar">@status</span> = <span class="ruby-node">$1</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">to_sym</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Malformed Status string: #{str}&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- new-source -->
+
+ </div>
+
+
+
+
+ </div><!-- new-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="3C-3D-3E-method" class="method-detail ">
+ <a name="method-i-3C-3D-3E"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">&lt;=&gt;</span><span
+ class="method-args">(other)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Comparison</p>
+
+
+
+ <div class="method-source-code" id="3C-3D-3E-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 142</span>
+<span class="ruby-keyword">def</span> <span class="ruby-operator">&lt;=&gt;</span>(<span class="ruby-identifier">other</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Cannot compare to #{other.class}&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Status</span>
+
+ <span class="ruby-identifier">s</span> = [<span class="ruby-string">'?'</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-value">:upstream</span>, <span class="ruby-value">:ebuild</span>, <span class="ruby-value">:stable</span>, <span class="ruby-value">:glsa</span>, <span class="ruby-value">:noglsa</span>]
+
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@status</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">pending?</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@pending</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">overdue?</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@overdue</span>
+ <span class="ruby-value">0</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">overdue?</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-ivar">@overdue</span>
+ <span class="ruby-value">-1</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-ivar">@overdue</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">overdue?</span>
+ <span class="ruby-value">1</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@pending</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">pending?</span>
+ <span class="ruby-value">-1</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-value">1</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ (<span class="ruby-identifier">s</span>.<span class="ruby-identifier">index</span>(<span class="ruby-ivar">@status</span>) <span class="ruby-operator">-</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">status</span>)) <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-value">-1</span> <span class="ruby-operator">:</span> <span class="ruby-value">1</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- 3C-3D-3E-source -->
+
+ </div>
+
+
+
+
+ </div><!-- 3C-3D-3E-method -->
+
+
+ <div id="blocked-3F-method" class="method-detail ">
+ <a name="method-i-blocked-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">blocked?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns <tt>true</tt> if the bug is blocked by another (c.f.
++‘blocked’+ in whiteboards)</p>
+
+
+
+ <div class="method-source-code" id="blocked-3F-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 122</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">blocked?</span>
+ <span class="ruby-ivar">@blocked</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- blocked-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- blocked-3F-method -->
+
+
+ <div id="overdue-3F-method" class="method-detail ">
+ <a name="method-i-overdue-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">overdue?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns <tt>true</tt> if the bug is overdue (cf. +‘+’+ in whiteboards)</p>
+
+
+
+ <div class="method-source-code" id="overdue-3F-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 127</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">overdue?</span>
+ <span class="ruby-ivar">@overdue</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- overdue-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- overdue-3F-method -->
+
+
+ <div id="pending-3F-method" class="method-detail ">
+ <a name="method-i-pending-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">pending?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns <tt>true</tt> if the bug is pending action (cf. +‘?’+ in
+whiteboards)</p>
+
+
+
+ <div class="method-source-code" id="pending-3F-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 132</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">pending?</span>
+ <span class="ruby-ivar">@pending</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- pending-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- pending-3F-method -->
+
+
+ <div id="to_s-method" class="method-detail ">
+ <a name="method-i-to_s"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">to_s</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns a string representation (like you would find it in the whiteboard)</p>
+
+
+
+ <div class="method-source-code" id="to_s-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 137</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
+ <span class="ruby-ivar">@status</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> (<span class="ruby-ivar">@overdue</span> <span class="ruby-operator">?</span> <span class="ruby-string">&quot;+&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-string">&quot;&quot;</span>) <span class="ruby-operator">+</span> (<span class="ruby-ivar">@pending</span> <span class="ruby-operator">?</span> <span class="ruby-string">&quot;?&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-string">&quot;&quot;</span>) <span class="ruby-operator">+</span> (<span class="ruby-ivar">@blocked</span> <span class="ruby-operator">?</span> <span class="ruby-string">&quot; blocked&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-string">&quot;&quot;</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- to_s-source -->
+
+ </div>
+
+
+
+
+ </div><!-- to_s-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Bugs/StatusMixin.html b/doc/app/Glsamaker/Bugs/StatusMixin.html
new file mode 100644
index 0000000..fabab8c
--- /dev/null
+++ b/doc/app/Glsamaker/Bugs/StatusMixin.html
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Bugs::StatusMixin</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../lib/glsamaker/bugs_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/bugs.rb">lib/glsamaker/bugs.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-secbug_status">#secbug_status</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Bugs::StatusMixin</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="secbug_status-method" class="method-detail ">
+ <a name="method-i-secbug_status"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">secbug_status</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="secbug_status-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/bugs.rb, line 18</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">secbug_status</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">whiteboard</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/([A-C~?][0-4?]\??)\s+\[(.*?)\]\s*?(.*?)$/</span>
+ <span class="ruby-identifier">st</span> = []
+
+ <span class="ruby-node">$2</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&quot;/&quot;</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">status</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">st</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Status</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">status</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">st</span>
+ <span class="ruby-keyword">else</span>
+ [<span class="ruby-constant">Status</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">'?'</span>)]
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- secbug_status-source -->
+
+ </div>
+
+
+
+
+ </div><!-- secbug_status-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Diff.html b/doc/app/Glsamaker/Diff.html
new file mode 100644
index 0000000..1e3fd06
--- /dev/null
+++ b/doc/app/Glsamaker/Diff.html
@@ -0,0 +1,338 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Diff</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/diff_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/diff.rb">lib/glsamaker/diff.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-diff">#diff</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Diff</h1>
+
+ <div id="description" class="description">
+
+<p>Module providing diff support</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="diff-method" class="method-detail ">
+ <a name="method-i-diff"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">diff</span><span
+ class="method-args">(str_old, str_new, format = :unified, context_lines = 3)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns a unified diff for two strings Adapted from the O’Reilly Ruby
+Cookbook</p>
+
+
+
+ <div class="method-source-code" id="diff-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/diff.rb, line 23</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">diff</span>(<span class="ruby-identifier">str_old</span>, <span class="ruby-identifier">str_new</span>, <span class="ruby-identifier">format</span> = <span class="ruby-value">:unified</span>, <span class="ruby-identifier">context_lines</span> = <span class="ruby-value">3</span>)
+ <span class="ruby-identifier">str_old</span> = <span class="ruby-identifier">str_old</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\r?\n/</span>).<span class="ruby-identifier">map!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">chomp</span> }
+ <span class="ruby-identifier">str_new</span> = <span class="ruby-identifier">str_new</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\r?\n/</span>).<span class="ruby-identifier">map!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">chomp</span> }
+
+ <span class="ruby-identifier">output</span> = <span class="ruby-string">&quot;&quot;</span>
+ <span class="ruby-identifier">diffs</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Diff</span><span class="ruby-operator">::</span><span class="ruby-constant">LCS</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">str_old</span>, <span class="ruby-identifier">str_new</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">output</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">empty?</span>
+
+ <span class="ruby-identifier">oldhunk</span> = <span class="ruby-identifier">hunk</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">file_length_difference</span> = <span class="ruby-value">0</span>
+ <span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">piece</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-identifier">hunk</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Diff</span><span class="ruby-operator">::</span><span class="ruby-constant">LCS</span><span class="ruby-operator">::</span><span class="ruby-constant">Hunk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">str_old</span>, <span class="ruby-identifier">str_new</span>, <span class="ruby-identifier">piece</span>, <span class="ruby-identifier">context_lines</span>, <span class="ruby-identifier">file_length_difference</span>)
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">oldhunk</span>
+
+ <span class="ruby-keyword">if</span> (<span class="ruby-identifier">context_lines</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>) <span class="ruby-keyword">and</span> <span class="ruby-identifier">hunk</span>.<span class="ruby-identifier">overlaps?</span>(<span class="ruby-identifier">oldhunk</span>)
+ <span class="ruby-identifier">hunk</span>.<span class="ruby-identifier">unshift</span>(<span class="ruby-identifier">oldhunk</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">output</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">oldhunk</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">format</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">ensure</span>
+ <span class="ruby-identifier">oldhunk</span> = <span class="ruby-identifier">hunk</span>
+ <span class="ruby-identifier">output</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;\n&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">output</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">oldhunk</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">format</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;\n&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- diff-source -->
+
+ </div>
+
+
+
+
+ </div><!-- diff-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/HTTP.html b/doc/app/Glsamaker/HTTP.html
new file mode 100644
index 0000000..6600379
--- /dev/null
+++ b/doc/app/Glsamaker/HTTP.html
@@ -0,0 +1,323 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::HTTP</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/http_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/http.rb">lib/glsamaker/http.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-get">::get</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::HTTP</h1>
+
+ <div id="description" class="description">
+
+<p>GLSAMaker <a href="HTTP.html">HTTP</a> utilities</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="get-method" class="method-detail ">
+ <a name="method-c-get"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get</span><span
+ class="method-args">(url)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Tries to fetch <tt>url</tt> via <a href="HTTP.html">HTTP</a> GET, sending a
+GLSAMaker custom User-Agent header. The body part is returned.</p>
+
+
+
+ <div class="method-source-code" id="get-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/http.rb, line 21</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
+ <span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">url</span>)
+
+ <span class="ruby-identifier">http</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">host</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span>)
+ <span class="ruby-identifier">http</span>.<span class="ruby-identifier">use_ssl</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;https&quot;</span>
+ <span class="ruby-identifier">res</span> = <span class="ruby-identifier">http</span>.<span class="ruby-identifier">start</span> {
+ <span class="ruby-identifier">http</span>.<span class="ruby-identifier">request_get</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">request_uri</span>, {<span class="ruby-string">'User-Agent'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;GLSAMaker/#{GLSAMAKER_VERSION} (http://security.gentoo.org/)&quot;</span>})
+ }
+
+ <span class="ruby-comment"># Raises an exception if HTTP status suggests something went wrong</span>
+ <span class="ruby-identifier">res</span>.<span class="ruby-identifier">value</span>
+ <span class="ruby-identifier">res</span>.<span class="ruby-identifier">body</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Helper.html b/doc/app/Glsamaker/Helper.html
new file mode 100644
index 0000000..96d0c97
--- /dev/null
+++ b/doc/app/Glsamaker/Helper.html
@@ -0,0 +1,285 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Glsamaker::Helper</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/helpers_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/helpers.rb">lib/glsamaker/helpers.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ <!-- Included Modules -->
+ <div id="includes-section" class="section">
+ <h3 class="section-header">Included Modules</h3>
+ <ul class="link-list">
+
+
+ <li><span class="include">Singleton</span></li>
+
+
+
+ <li><span class="include">::ActionView::Helpers::TextHelper</span></li>
+
+
+ </ul>
+ </div>
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Glsamaker::Helper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Mail.html b/doc/app/Glsamaker/Mail.html
new file mode 100644
index 0000000..1bdaf3b
--- /dev/null
+++ b/doc/app/Glsamaker/Mail.html
@@ -0,0 +1,498 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Mail</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/mail_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/mail.rb">lib/glsamaker/mail.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-approval_notification">#approval_notification</a></li>
+
+ <li><a href="#method-i-comment_notification">#comment_notification</a></li>
+
+ <li><a href="#method-i-edit_notification">#edit_notification</a></li>
+
+ <li><a href="#method-i-request_notification">#request_notification</a></li>
+
+ <li><a href="#method-i-send_text">#send_text</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Mail</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="approval_notification-method" class="method-detail ">
+ <a name="method-i-approval_notification"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">approval_notification</span><span
+ class="method-args">(glsa)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="approval_notification-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/mail.rb, line 59</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">approval_notification</span>(<span class="ruby-identifier">glsa</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">GLSAMAKER_NO_EMAIL</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-string">&quot;Not sending email.&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">rcpt</span> = <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">submitter</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">can_access?</span> <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">get_pref_category</span>(<span class="ruby-value">:mail</span>)[<span class="ruby-value">:comment</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-constant">GlsaMailer</span>.<span class="ruby-identifier">approval</span>(<span class="ruby-identifier">rcpt</span>, <span class="ruby-identifier">glsa</span>).<span class="ruby-identifier">deliver</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- approval_notification-source -->
+
+ </div>
+
+
+
+
+ </div><!-- approval_notification-method -->
+
+
+ <div id="comment_notification-method" class="method-detail ">
+ <a name="method-i-comment_notification"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">comment_notification</span><span
+ class="method-args">(glsa, comment, user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="comment_notification-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/mail.rb, line 44</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">comment_notification</span>(<span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">user</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">GLSAMAKER_NO_EMAIL</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-string">&quot;Not sending email.&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">rcpt</span> = <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">submitter</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">can_access?</span> <span class="ruby-identifier">glsa</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">rcpt</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">user</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">get_pref_category</span>(<span class="ruby-value">:mail</span>)[<span class="ruby-value">:comment</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-constant">GlsaMailer</span>.<span class="ruby-identifier">comment</span>(<span class="ruby-identifier">rcpt</span>, <span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">user</span>).<span class="ruby-identifier">deliver</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- comment_notification-source -->
+
+ </div>
+
+
+
+
+ </div><!-- comment_notification-method -->
+
+
+ <div id="edit_notification-method" class="method-detail ">
+ <a name="method-i-edit_notification"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">edit_notification</span><span
+ class="method-args">(glsa, diff, user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="edit_notification-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/mail.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">edit_notification</span>(<span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">diff</span>, <span class="ruby-identifier">user</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">GLSAMAKER_NO_EMAIL</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-string">&quot;Not sending email.&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-constant">User</span>.<span class="ruby-identifier">find</span>(<span class="ruby-value">:all</span>, <span class="ruby-value">:conditions</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'id &gt; 0'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">rcpt</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">can_access?</span> <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">get_pref_category</span>(<span class="ruby-value">:mail</span>)[<span class="ruby-value">:edit</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-constant">GlsaMailer</span>.<span class="ruby-identifier">edit</span>(<span class="ruby-identifier">rcpt</span>, <span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">diff</span>, <span class="ruby-identifier">user</span>).<span class="ruby-identifier">deliver</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- edit_notification-source -->
+
+ </div>
+
+
+
+
+ </div><!-- edit_notification-method -->
+
+
+ <div id="request_notification-method" class="method-detail ">
+ <a name="method-i-request_notification"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">request_notification</span><span
+ class="method-args">(glsa, user)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="request_notification-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/mail.rb, line 29</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">request_notification</span>(<span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">user</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">GLSAMAKER_NO_EMAIL</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-string">&quot;Not sending email.&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-constant">User</span>.<span class="ruby-identifier">find</span>(<span class="ruby-value">:all</span>, <span class="ruby-value">:conditions</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'id &gt; 0'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">rcpt</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">can_access?</span> <span class="ruby-identifier">glsa</span>
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">rcpt</span>.<span class="ruby-identifier">get_pref_category</span>(<span class="ruby-value">:mail</span>)[<span class="ruby-value">:request</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-constant">GlsaMailer</span>.<span class="ruby-identifier">new_request</span>(<span class="ruby-identifier">rcpt</span>, <span class="ruby-identifier">glsa</span>, <span class="ruby-identifier">user</span>).<span class="ruby-identifier">deliver</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- request_notification-source -->
+
+ </div>
+
+
+
+
+ </div><!-- request_notification-method -->
+
+
+ <div id="send_text-method" class="method-detail ">
+ <a name="method-i-send_text"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">send_text</span><span
+ class="method-args">(text, subject, user, footer = true)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="send_text-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/mail.rb, line 73</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">send_text</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">subject</span>, <span class="ruby-identifier">user</span>, <span class="ruby-identifier">footer</span> = <span class="ruby-keyword">true</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">GLSAMAKER_NO_EMAIL</span>
+ <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-string">&quot;Not sending email.&quot;</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-constant">GlsaMailer</span>.<span class="ruby-identifier">deliver_text</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">subject</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">footer</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- send_text-source -->
+
+ </div>
+
+
+
+
+ </div><!-- send_text-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Portage.html b/doc/app/Glsamaker/Portage.html
new file mode 100644
index 0000000..1a3f76a
--- /dev/null
+++ b/doc/app/Glsamaker/Portage.html
@@ -0,0 +1,567 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::Portage</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/portage_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/portage.rb">lib/glsamaker/portage.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+ <!-- Namespace Contents -->
+ <div id="namespace-list-section" class="section">
+ <h3 class="section-header">Namespace</h3>
+ <ul class="link-list">
+
+ <li><span class="type">CLASS</span> <a href="Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ </ul>
+ </div>
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-find_packages">#find_packages</a></li>
+
+ <li><a href="#method-i-get_description">#get_description</a></li>
+
+ <li><a href="#method-i-get_maintainers">#get_maintainers</a></li>
+
+ <li><a href="#method-i-get_metadata">#get_metadata</a></li>
+
+ <li><a href="#method-i-portdir">#portdir</a></li>
+
+ <li><a href="#method-i-valid_atom-3F">#valid_atom?</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::Portage</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Helper.html">Helper</a> functions for <a
+href="Portage.html">Portage</a> tree interaction</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="find_packages-method" class="method-detail ">
+ <a name="method-i-find_packages"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">find_packages</span><span
+ class="method-args">(re)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns package atoms that match <tt>re</tt></p>
+
+
+
+ <div class="method-source-code" id="find_packages-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 78</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">find_packages</span>(<span class="ruby-identifier">re</span>)
+ <span class="ruby-identifier">results</span> = []
+
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">chdir</span>(<span class="ruby-identifier">portdir</span>) <span class="ruby-keyword">do</span>
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-string">'*-*'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">cat</span><span class="ruby-operator">|</span>
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">chdir</span>(<span class="ruby-identifier">cat</span>) <span class="ruby-keyword">do</span>
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-string">&quot;*&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">pkg</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">pkg</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">re</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">results</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{cat}/#{pkg}&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">results</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- find_packages-source -->
+
+ </div>
+
+
+
+
+ </div><!-- find_packages-method -->
+
+
+ <div id="get_description-method" class="method-detail ">
+ <a name="method-i-get_description"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get_description</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Gets a description</p>
+
+
+
+ <div class="method-source-code" id="get_description-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 69</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_description</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-constant">Description</span>.<span class="ruby-identifier">eix</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
+ <span class="ruby-constant">Description</span>.<span class="ruby-identifier">ebuild</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
+ <span class="ruby-constant">Description</span>.<span class="ruby-identifier">pgo</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
+ <span class="ruby-constant">Description</span>.<span class="ruby-identifier">google</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
+ <span class="ruby-string">&quot;[could not get a description]&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get_description-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get_description-method -->
+
+
+ <div id="get_maintainers-method" class="method-detail ">
+ <a name="method-i-get_maintainers"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get_maintainers</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns an array of maintainer email addresses for the package
+<tt>atom</tt></p>
+
+
+
+ <div class="method-source-code" id="get_maintainers-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 95</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_maintainers</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid package atom&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-constant">Portage</span>.<span class="ruby-identifier">valid_atom?</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Cannot find metadata&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">portdir</span>, <span class="ruby-identifier">atom</span>, <span class="ruby-string">'metadata.xml'</span>)
+
+ <span class="ruby-identifier">x</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">portdir</span>, <span class="ruby-identifier">atom</span>, <span class="ruby-string">'metadata.xml'</span>)))
+
+ <span class="ruby-identifier">herds</span> = []
+ <span class="ruby-identifier">maintainers</span> = []
+
+ <span class="ruby-identifier">x</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">'/pkgmetadata/herd'</span>).<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span> <span class="ruby-identifier">herds</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">h</span>.<span class="ruby-identifier">content</span> }
+ <span class="ruby-identifier">x</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">'/pkgmetadata/maintainer/email'</span>).<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">maintainers</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">m</span>.<span class="ruby-identifier">content</span> }
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">herds</span>.<span class="ruby-identifier">first</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;no-herd&quot;</span>
+ <span class="ruby-identifier">herds_xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">portdir</span>, <span class="ruby-string">'metadata'</span>, <span class="ruby-string">'herds.xml'</span>)))
+ <span class="ruby-identifier">herds_email</span> = <span class="ruby-identifier">herds</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span> <span class="ruby-identifier">herds_xml</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-node">&quot;/herds/herd/name[text()='#{h}']&quot;</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-string">&quot;./email&quot;</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">content</span> }
+
+ (<span class="ruby-identifier">maintainers</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">herds_email</span>).<span class="ruby-identifier">uniq</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">maintainers</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get_maintainers-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get_maintainers-method -->
+
+
+ <div id="get_metadata-method" class="method-detail ">
+ <a name="method-i-get_metadata"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get_metadata</span><span
+ class="method-args">(atom, version = :latest, what = [])</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns information from the portage metadata cache Values: :depend,
+:rdepend, :slot, :src_uri, :restrict, :homepage, :license, :description,
+:keywords, :inherited, :iuse, :required_use, :pdepend, :provide, :eapi,
+:properties, :defined_phases as per portage/pym/portage/cache/metadata.py
+(database.auxdbkey_order)</p>
+
+
+
+ <div class="method-source-code" id="get_metadata-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 122</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_metadata</span>(<span class="ruby-identifier">atom</span>, <span class="ruby-identifier">version</span> = <span class="ruby-value">:latest</span>, <span class="ruby-identifier">what</span> = [])
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid package atom&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-constant">Portage</span>.<span class="ruby-identifier">valid_atom?</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid version string&quot;</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">version</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">include?</span> <span class="ruby-string">'..'</span>
+ <span class="ruby-keyword">return</span> {} <span class="ruby-keyword">if</span> <span class="ruby-identifier">what</span> <span class="ruby-operator">==</span> []
+
+ <span class="ruby-identifier">lines</span> = [<span class="ruby-keyword">nil</span>, <span class="ruby-value">:depend</span>, <span class="ruby-value">:rdepend</span>, <span class="ruby-value">:slot</span>, <span class="ruby-value">:src_uri</span>, <span class="ruby-value">:restrict</span>, <span class="ruby-value">:homepage</span>,
+ <span class="ruby-value">:license</span>, <span class="ruby-value">:description</span>, <span class="ruby-value">:keywords</span>, <span class="ruby-value">:inherited</span>, <span class="ruby-value">:iuse</span>, <span class="ruby-value">:required_use</span>,
+ <span class="ruby-value">:pdepend</span>, <span class="ruby-value">:provide</span>, <span class="ruby-value">:eapi</span>, <span class="ruby-value">:properties</span>, <span class="ruby-value">:defined_phases</span>]
+ <span class="ruby-identifier">cat</span>, <span class="ruby-identifier">pkg</span> = <span class="ruby-identifier">atom</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">'/'</span>, <span class="ruby-value">2</span>)
+ <span class="ruby-identifier">result</span> = {}
+
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">chdir</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Portage</span>.<span class="ruby-identifier">portdir</span>, <span class="ruby-string">'metadata'</span>, <span class="ruby-string">'cache'</span>, <span class="ruby-identifier">cat</span>)) <span class="ruby-keyword">do</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">version</span> <span class="ruby-operator">==</span> <span class="ruby-value">:latest</span>
+ <span class="ruby-identifier">f</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-node">&quot;#{pkg}-[0-9]*&quot;</span>).<span class="ruby-identifier">last</span>, <span class="ruby-string">'r'</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">f</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-node">&quot;#{pkg}-#{version}&quot;</span>), <span class="ruby-string">'r'</span>)
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">while</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">gets</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">what</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">lines</span>[<span class="ruby-identifier">$.</span>])
+ <span class="ruby-identifier">result</span>[<span class="ruby-identifier">lines</span>[<span class="ruby-identifier">$.</span>]] = <span class="ruby-identifier">$_</span>.<span class="ruby-identifier">chomp</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">f</span>.<span class="ruby-identifier">close</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">result</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get_metadata-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get_metadata-method -->
+
+
+ <div id="portdir-method" class="method-detail ">
+ <a name="method-i-portdir"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">portdir</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the location of the portage dir, or raises an exception if it
+cannot be found</p>
+
+
+
+ <div class="method-source-code" id="portdir-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 55</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">portdir</span>
+ <span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span> <span class="ruby-constant">GLSAMAKER_PORTDIR</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;GLSAMAKER_PORTDIR is not a directory&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-constant">GLSAMAKER_PORTDIR</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- portdir-source -->
+
+ </div>
+
+
+
+
+ </div><!-- portdir-method -->
+
+
+ <div id="valid_atom-3F-method" class="method-detail ">
+ <a name="method-i-valid_atom-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">valid_atom?</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Validates the atom <tt>atom</tt></p>
+
+
+
+ <div class="method-source-code" id="valid_atom-3F-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 64</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">valid_atom?</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-identifier">atom</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/[a-zA-Z0-9_-]\/[a-zA-Z0-9_-]/</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- valid_atom-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- valid_atom-3F-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/Portage/Description.html b/doc/app/Glsamaker/Portage/Description.html
new file mode 100644
index 0000000..50ec53a
--- /dev/null
+++ b/doc/app/Glsamaker/Portage/Description.html
@@ -0,0 +1,436 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Glsamaker::Portage::Description</title>
+
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../../index.html">Home</a>
+ <a href="../../index.html#classes">Classes</a>
+ <a href="../../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../../lib/glsamaker/portage_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/portage.rb">lib/glsamaker/portage.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-c-ebuild">::ebuild</a></li>
+
+ <li><a href="#method-c-eix">::eix</a></li>
+
+ <li><a href="#method-c-google">::google</a></li>
+
+ <li><a href="#method-c-pgo">::pgo</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../../Admin.html">Admin</a></li>
+
+ <li><a href="../../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../../Comment.html">Comment</a></li>
+
+ <li><a href="../../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../../Authentication.html">Authentication</a></li>
+
+ <li><a href="../../Authorization.html">Authorization</a></li>
+
+ <li><a href="../../Bug.html">Bug</a></li>
+
+ <li><a href="../../BugController.html">BugController</a></li>
+
+ <li><a href="../../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../../BugsController.html">BugsController</a></li>
+
+ <li><a href="../../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../../Cpe.html">Cpe</a></li>
+
+ <li><a href="../../Cve.html">Cve</a></li>
+
+ <li><a href="../../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../../CveChange.html">CveChange</a></li>
+
+ <li><a href="../../CveComment.html">CveComment</a></li>
+
+ <li><a href="../../CveController.html">CveController</a></li>
+
+ <li><a href="../../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../../CveReference.html">CveReference</a></li>
+
+ <li><a href="../../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../../Glsa.html">Glsa</a></li>
+
+ <li><a href="../../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../../IndexController.html">IndexController</a></li>
+
+ <li><a href="../../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../../Package.html">Package</a></li>
+
+ <li><a href="../../Reference.html">Reference</a></li>
+
+ <li><a href="../../Revision.html">Revision</a></li>
+
+ <li><a href="../../SearchController.html">SearchController</a></li>
+
+ <li><a href="../../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../../String.html">String</a></li>
+
+ <li><a href="../../Template.html">Template</a></li>
+
+ <li><a href="../../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Glsamaker::Portage::Description</h1>
+
+ <div id="description" class="description">
+
+<p><a href="../../Package.html">Package</a> description helper</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-class-method-details" class="method-section section">
+ <h3 class="section-header">Public Class Methods</h3>
+
+
+ <div id="ebuild-method" class="method-detail ">
+ <a name="method-c-ebuild"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">ebuild</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Tries to fetch the description for the package <tt>atom</tt> from an
+ebuild’s entry (works if running on Gentoo)</p>
+
+
+
+ <div class="method-source-code" id="ebuild-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 23</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">ebuild</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid package atom&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-constant">Portage</span>.<span class="ruby-identifier">valid_atom?</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-keyword">nil</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- ebuild-source -->
+
+ </div>
+
+
+
+
+ </div><!-- ebuild-method -->
+
+
+ <div id="eix-method" class="method-detail ">
+ <a name="method-c-eix"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">eix</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="eix-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 28</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">eix</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-keyword">nil</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- eix-source -->
+
+ </div>
+
+
+
+
+ </div><!-- eix-method -->
+
+
+ <div id="google-method" class="method-detail ">
+ <a name="method-c-google"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">google</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Loads a description for <tt>atom</tt> from Google</p>
+
+
+
+ <div class="method-source-code" id="google-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 47</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">google</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-keyword">nil</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- google-source -->
+
+ </div>
+
+
+
+
+ </div><!-- google-method -->
+
+
+ <div id="pgo-method" class="method-detail ">
+ <a name="method-c-pgo"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">pgo</span><span
+ class="method-args">(atom)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Loads a description for <tt>atom</tt> from packages.gentoo.org</p>
+
+
+
+ <div class="method-source-code" id="pgo-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/portage.rb, line 33</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">pgo</span>(<span class="ruby-identifier">atom</span>)
+ <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Invalid package atom&quot;</span>) <span class="ruby-keyword">unless</span> <span class="ruby-constant">Portage</span>.<span class="ruby-identifier">valid_atom?</span>(<span class="ruby-identifier">atom</span>)
+
+ <span class="ruby-identifier">n</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-node">&quot;http://packages.gentoo.org/package/#{atom}&quot;</span>))
+
+ <span class="ruby-identifier">node</span> = <span class="ruby-identifier">n</span>.<span class="ruby-identifier">css</span>(<span class="ruby-string">'p.description'</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Node</span><span class="ruby-operator">::</span><span class="ruby-constant">TEXT_NODE</span>
+ <span class="ruby-identifier">node</span>.<span class="ruby-identifier">to_s</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;XML parse error&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- pgo-source -->
+
+ </div>
+
+
+
+
+ </div><!-- pgo-method -->
+
+
+ </div><!-- public-class-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Glsamaker/XML.html b/doc/app/Glsamaker/XML.html
new file mode 100644
index 0000000..66e4f6b
--- /dev/null
+++ b/doc/app/Glsamaker/XML.html
@@ -0,0 +1,323 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: Glsamaker::XML</title>
+
+ <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
+
+ <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="../lib/glsamaker/xml_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/glsamaker/xml.rb">lib/glsamaker/xml.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-indent">#indent</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">Glsamaker::XML</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="indent-method" class="method-detail ">
+ <a name="method-i-indent"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">indent</span><span
+ class="method-args">(xml, options = {:indent => 2})</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="indent-source">
+<pre>
+<span class="ruby-comment"># File lib/glsamaker/xml.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">indent</span>(<span class="ruby-identifier">xml</span>, <span class="ruby-identifier">options</span> = {<span class="ruby-value">:indent</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span>})
+ <span class="ruby-identifier">command</span> = <span class="ruby-constant">GLSAMAKER_XMLINDENT</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;xmlindent either does not exist or is not executable.&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">executable?</span> <span class="ruby-identifier">command</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">' '</span>, <span class="ruby-value">2</span>)[<span class="ruby-value">0</span>]
+
+ <span class="ruby-identifier">command</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; -i#{Integer options[:indent]}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-value">:indent</span>
+ <span class="ruby-identifier">command</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; -l#{Integer options[:maxcols]}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-value">:maxcols</span>
+
+ <span class="ruby-comment"># \r\n will make problems while converting</span>
+ <span class="ruby-identifier">xml</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">&quot;\r&quot;</span>, <span class="ruby-string">&quot;&quot;</span>)
+
+ <span class="ruby-constant">IO</span>.<span class="ruby-identifier">popen</span>(<span class="ruby-identifier">command</span>, <span class="ruby-string">'r+'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">io</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">io</span>.<span class="ruby-identifier">write</span> <span class="ruby-identifier">xml</span>
+ <span class="ruby-identifier">io</span>.<span class="ruby-identifier">close_write</span>
+ <span class="ruby-identifier">io</span>.<span class="ruby-identifier">read</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- indent-source -->
+
+ </div>
+
+
+
+
+ </div><!-- indent-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/IndexController.html b/doc/app/IndexController.html
new file mode 100644
index 0000000..4040caa
--- /dev/null
+++ b/doc/app/IndexController.html
@@ -0,0 +1,487 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: IndexController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/index_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/index_controller.rb">app/controllers/index_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-about">#about</a></li>
+
+ <li><a href="#method-i-error">#error</a></li>
+
+ <li><a href="#method-i-index">#index</a></li>
+
+ <li><a href="#method-i-profile">#profile</a></li>
+
+ <li><a href="#method-i-update">#update</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">IndexController</h1>
+
+ <div id="description" class="description">
+
+<p>Index controller</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="about-method" class="method-detail ">
+ <a name="method-i-about"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">about</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="about-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/index_controller.rb, line 32</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">about</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- about-source -->
+
+ </div>
+
+
+
+
+ </div><!-- about-method -->
+
+
+ <div id="error-method" class="method-detail ">
+ <a name="method-i-error"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">error</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="error-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/index_controller.rb, line 20</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">error</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;user&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index/error-user'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'notice'</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;disabled&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index/error-disabled'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'notice'</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&quot;access&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index/error-access'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'notice'</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'index/error-system'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'notice'</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- error-source -->
+
+ </div>
+
+
+
+
+ </div><!-- error-method -->
+
+
+ <div id="index-method" class="method-detail ">
+ <a name="method-i-index"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">index</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="index-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/index_controller.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">index</span>
+ <span class="ruby-ivar">@my_drafts</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">where</span>(<span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'draft'</span>, <span class="ruby-value">:submitter</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">current_user</span>.<span class="ruby-identifier">id</span>).<span class="ruby-identifier">order</span>(<span class="ruby-string">&quot;updated_at DESC&quot;</span>).<span class="ruby-identifier">limit</span>(<span class="ruby-value">10</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- index-source -->
+
+ </div>
+
+
+
+
+ </div><!-- index-method -->
+
+
+ <div id="profile-method" class="method-detail ">
+ <a name="method-i-profile"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">profile</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="profile-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/index_controller.rb, line 35</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">profile</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-identifier">current_user</span>
+ <span class="ruby-ivar">@prefs</span> = <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">preferences</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- profile-source -->
+
+ </div>
+
+
+
+
+ </div><!-- profile-method -->
+
+
+ <div id="update-method" class="method-detail ">
+ <a name="method-i-update"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="update-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/index_controller.rb, line 40</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
+ <span class="ruby-ivar">@user</span> = <span class="ruby-identifier">current_user</span>
+ <span class="ruby-ivar">@prefs</span> = <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">preferences</span>
+
+ <span class="ruby-identifier">preferences</span> = {<span class="ruby-value">:own_ready</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>, <span class="ruby-value">:own_comment</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>, <span class="ruby-value">:edit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>, <span class="ruby-value">:new_req</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>, <span class="ruby-value">:not_me</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>}
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:preferences</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-node">]own_ready own_comment edit new_req not_me]</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">notification</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">preferences</span>[<span class="ruby-identifier">notification</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-identifier">params</span>[<span class="ruby-value">:preferences</span>][<span class="ruby-identifier">notification</span>] <span class="ruby-operator">==</span> <span class="ruby-string">'1'</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">preferences</span>[<span class="ruby-value">:mail</span>] <span class="ruby-operator">||=</span> {}
+ <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">preferences</span>[<span class="ruby-value">:mail</span>] = <span class="ruby-identifier">preferences</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@user</span>.<span class="ruby-identifier">save</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:notice</span>] = <span class="ruby-string">&quot;Successfully updated your profile&quot;</span>
+ <span class="ruby-identifier">redirect_to</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;index&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">flash</span>[<span class="ruby-value">:error</span>] = <span class="ruby-string">&quot;Could not update your profile&quot;</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;profile&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/IndexHelper.html b/doc/app/IndexHelper.html
new file mode 100644
index 0000000..7590c64
--- /dev/null
+++ b/doc/app/IndexHelper.html
@@ -0,0 +1,263 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: IndexHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/index_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/index_helper.rb">app/helpers/index_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">IndexHelper</h1>
+
+ <div id="description" class="description">
+
+<p>Index Helper</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Package.html b/doc/app/Package.html
new file mode 100644
index 0000000..c3a080e
--- /dev/null
+++ b/doc/app/Package.html
@@ -0,0 +1,332 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Package</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/package_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/package.rb">app/models/package.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-xml_comp">#xml_comp</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Package</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Package.html">Package</a> model</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="xml_comp-method" class="method-detail ">
+ <a name="method-i-xml_comp"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">xml_comp</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the comparator in the format needed for the XML</p>
+
+
+
+ <div class="method-source-code" id="xml_comp-source">
+<pre>
+<span class="ruby-comment"># File app/models/package.rb, line 17</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">xml_comp</span>
+ <span class="ruby-identifier">comps</span> = {
+ <span class="ruby-string">'&gt;='</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'ge'</span>,
+ <span class="ruby-string">'&gt;'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'gt'</span>,
+ <span class="ruby-string">'='</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'eq'</span>,
+ <span class="ruby-string">'&lt;='</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'le'</span>,
+ <span class="ruby-string">'&lt;'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'lt'</span>,
+ <span class="ruby-string">'*&lt;'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'rlt'</span>,
+ <span class="ruby-string">'*&lt;='</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'rle'</span>,
+ <span class="ruby-string">'*&gt;'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'rgt'</span>,
+ <span class="ruby-string">'*&gt;='</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'rge'</span>
+ }
+
+ <span class="ruby-identifier">comps</span>[<span class="ruby-keyword">self</span>.<span class="ruby-identifier">comp</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- xml_comp-source -->
+
+ </div>
+
+
+
+
+ </div><!-- xml_comp-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Reference.html b/doc/app/Reference.html
new file mode 100644
index 0000000..839fa87
--- /dev/null
+++ b/doc/app/Reference.html
@@ -0,0 +1,271 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Reference</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/reference_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/reference.rb">app/models/reference.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Reference</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Reference.html">Reference</a> model</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Revision.html b/doc/app/Revision.html
new file mode 100644
index 0000000..a8d7364
--- /dev/null
+++ b/doc/app/Revision.html
@@ -0,0 +1,524 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Revision</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/revision_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/revision.rb">app/models/revision.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-bug_ready-3F">#bug_ready?</a></li>
+
+ <li><a href="#method-i-deep_copy">#deep_copy</a></li>
+
+ <li><a href="#method-i-get_linked_bugs">#get_linked_bugs</a></li>
+
+ <li><a href="#method-i-packages_by_atom">#packages_by_atom</a></li>
+
+ <li><a href="#method-i-to_s">#to_s</a></li>
+
+ <li><a href="#method-i-update_cached_bug_metadata">#update_cached_bug_metadata</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Revision</h1>
+
+ <div id="description" class="description">
+
+<p><a href="Revision.html">Revision</a> model</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="bug_ready-3F-method" class="method-detail ">
+ <a name="method-i-bug_ready-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bug_ready?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Checks all assigned bugs for bug ready status</p>
+
+
+
+ <div class="method-source-code" id="bug_ready-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/revision.rb, line 56</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bug_ready?</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">bug_ready?</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bug_ready-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bug_ready-3F-method -->
+
+
+ <div id="deep_copy-method" class="method-detail ">
+ <a name="method-i-deep_copy"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">deep_copy</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Creates a deep copy of a previous revision, copying all bugs, references
+and packages, incrementing the revision ID by one. <b>The caller must take
+care of deleting this revision again in case any error occurs later.</b></p>
+
+
+
+ <div class="method-source-code" id="deep_copy-source">
+<pre>
+<span class="ruby-comment"># File app/models/revision.rb, line 74</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">deep_copy</span>
+ <span class="ruby-identifier">new_rev</span> = <span class="ruby-identifier">dup</span>
+ <span class="ruby-identifier">new_rev</span>.<span class="ruby-identifier">revid</span> = <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">next_revid</span>
+
+ <span class="ruby-identifier">references</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">reference</span><span class="ruby-operator">|</span> <span class="ruby-identifier">new_rev</span>.<span class="ruby-identifier">references</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">reference</span>.<span class="ruby-identifier">dup</span> }
+ <span class="ruby-identifier">packages</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">package</span><span class="ruby-operator">|</span> <span class="ruby-identifier">new_rev</span>.<span class="ruby-identifier">packages</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">package</span>.<span class="ruby-identifier">dup</span> }
+ <span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span> <span class="ruby-identifier">new_rev</span>.<span class="ruby-identifier">bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">dup</span> }
+
+ <span class="ruby-identifier">new_rev</span>.<span class="ruby-identifier">save!</span>
+ <span class="ruby-identifier">new_rev</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- deep_copy-source -->
+
+ </div>
+
+
+
+
+ </div><!-- deep_copy-method -->
+
+
+ <div id="get_linked_bugs-method" class="method-detail ">
+ <a name="method-i-get_linked_bugs"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get_linked_bugs</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns an Array of Integers of the bugs linked to this revision</p>
+
+
+
+ <div class="method-source-code" id="get_linked_bugs-source">
+<pre>
+<span class="ruby-comment"># File app/models/revision.rb, line 49</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_linked_bugs</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">bug_id</span>.<span class="ruby-identifier">to_i</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get_linked_bugs-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get_linked_bugs-method -->
+
+
+ <div id="packages_by_atom-method" class="method-detail ">
+ <a name="method-i-packages_by_atom"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">packages_by_atom</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns the packages linked to this revision grouped by atoms</p>
+
+
+
+ <div class="method-source-code" id="packages_by_atom-source">
+<pre>
+<span class="ruby-comment"># File app/models/revision.rb, line 87</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">packages_by_atom</span>
+ <span class="ruby-identifier">packages_list</span> = {}
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">packages</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">packages_list</span>[<span class="ruby-identifier">p</span>[<span class="ruby-value">:atom</span>]] <span class="ruby-operator">||=</span> {}
+ (<span class="ruby-identifier">packages_list</span>[<span class="ruby-identifier">p</span>[<span class="ruby-value">:atom</span>]][<span class="ruby-identifier">p</span>[<span class="ruby-value">:my_type</span>]] <span class="ruby-operator">||=</span> []) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">p</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">packages_list</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- packages_by_atom-source -->
+
+ </div>
+
+
+
+
+ </div><!-- packages_by_atom-method -->
+
+
+ <div id="to_s-method" class="method-detail ">
+ <a name="method-i-to_s"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">to_s</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="to_s-source">
+<pre>
+<span class="ruby-comment"># File app/models/revision.rb, line 97</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
+ <span class="ruby-identifier">s</span> = <span class="ruby-node">&quot;r#{self.revid}&quot;</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">is_release?</span>
+ <span class="ruby-identifier">s</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; (release #{self.release_revision})&quot;</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">s</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- to_s-source -->
+
+ </div>
+
+
+
+
+ </div><!-- to_s-method -->
+
+
+ <div id="update_cached_bug_metadata-method" class="method-detail ">
+ <a name="method-i-update_cached_bug_metadata"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">update_cached_bug_metadata</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Updates the cached metadata of all assigned bugs</p>
+
+
+
+ <div class="method-source-code" id="update_cached_bug_metadata-source">
+<pre>
+<span class="ruby-comment"># File app/models/revision.rb, line 65</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">update_cached_bug_metadata</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">b</span>.<span class="ruby-identifier">update_cached_metadata</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- update_cached_bug_metadata-source -->
+
+ </div>
+
+
+
+
+ </div><!-- update_cached_bug_metadata-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/SearchController.html b/doc/app/SearchController.html
new file mode 100644
index 0000000..0c68917
--- /dev/null
+++ b/doc/app/SearchController.html
@@ -0,0 +1,378 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: SearchController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/search_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/search_controller.rb">app/controllers/search_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-index">#index</a></li>
+
+ <li><a href="#method-i-results">#results</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">SearchController</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="index-method" class="method-detail ">
+ <a name="method-i-index"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">index</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="index-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/search_controller.rb, line 2</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">index</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- index-source -->
+
+ </div>
+
+
+
+
+ </div><!-- index-method -->
+
+
+ <div id="results-method" class="method-detail ">
+ <a name="method-i-results"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">results</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="results-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/search_controller.rb, line 5</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">results</span>
+ <span class="ruby-identifier">search</span> = <span class="ruby-constant">ThinkingSphinx</span>.<span class="ruby-identifier">search</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:q</span>], <span class="ruby-value">:max_matches</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1000</span>, <span class="ruby-value">:per_page</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1000</span>
+
+ <span class="ruby-ivar">@results</span> = {}
+ <span class="ruby-identifier">search</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">result</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">klass</span> = <span class="ruby-identifier">result</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">to_s</span>
+ <span class="ruby-ivar">@results</span>[<span class="ruby-identifier">klass</span>] = [] <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@results</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">klass</span>
+ <span class="ruby-ivar">@results</span>[<span class="ruby-identifier">klass</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">result</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@results</span>.<span class="ruby-identifier">include?</span> <span class="ruby-string">'Revision'</span>
+ <span class="ruby-ivar">@results</span>[<span class="ruby-string">'Glsa'</span>] = [] <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@results</span>[<span class="ruby-string">'Glsa'</span>]
+
+ <span class="ruby-ivar">@results</span>[<span class="ruby-string">'Revision'</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">rev</span><span class="ruby-operator">|</span>
+ <span class="ruby-ivar">@results</span>[<span class="ruby-string">'Glsa'</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">glsa</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@results</span>[<span class="ruby-string">'Glsa'</span>].<span class="ruby-identifier">uniq!</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-comment"># Filter search results</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@results</span>.<span class="ruby-identifier">include?</span> <span class="ruby-string">'Glsa'</span>
+ <span class="ruby-ivar">@results</span>[<span class="ruby-string">'Glsa'</span>].<span class="ruby-identifier">delete_if</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">result</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">not</span> <span class="ruby-identifier">check_object_access</span>(<span class="ruby-identifier">result</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Riddle</span><span class="ruby-operator">::</span><span class="ruby-constant">ConnectionError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- results-source -->
+
+ </div>
+
+
+
+
+ </div><!-- results-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/SearchHelper.html b/doc/app/SearchHelper.html
new file mode 100644
index 0000000..f928d82
--- /dev/null
+++ b/doc/app/SearchHelper.html
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: SearchHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/search_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/search_helper.rb">app/helpers/search_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">SearchHelper</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/String.html b/doc/app/String.html
new file mode 100644
index 0000000..1123444
--- /dev/null
+++ b/doc/app/String.html
@@ -0,0 +1,435 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: String</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./lib/tasks/utils_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="lib/tasks/utils.rb">lib/tasks/utils.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">Object</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-bold">#bold</a></li>
+
+ <li><a href="#method-i-green">#green</a></li>
+
+ <li><a href="#method-i-purple">#purple</a></li>
+
+ <li><a href="#method-i-red">#red</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">String</h1>
+
+ <div id="description" class="description">
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="bold-method" class="method-detail ">
+ <a name="method-i-bold"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bold</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="bold-source">
+<pre>
+<span class="ruby-comment"># File lib/tasks/utils.rb, line 26</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bold</span>
+ <span class="ruby-identifier">ansi</span> <span class="ruby-value">1</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bold-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bold-method -->
+
+
+ <div id="green-method" class="method-detail ">
+ <a name="method-i-green"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">green</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="green-source">
+<pre>
+<span class="ruby-comment"># File lib/tasks/utils.rb, line 22</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">green</span>
+ <span class="ruby-identifier">ansi</span> <span class="ruby-value">32</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- green-source -->
+
+ </div>
+
+
+
+
+ </div><!-- green-method -->
+
+
+ <div id="purple-method" class="method-detail ">
+ <a name="method-i-purple"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">purple</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="purple-source">
+<pre>
+<span class="ruby-comment"># File lib/tasks/utils.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">purple</span>
+ <span class="ruby-identifier">ansi</span> <span class="ruby-value">35</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- purple-source -->
+
+ </div>
+
+
+
+
+ </div><!-- purple-method -->
+
+
+ <div id="red-method" class="method-detail ">
+ <a name="method-i-red"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">red</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="red-source">
+<pre>
+<span class="ruby-comment"># File lib/tasks/utils.rb, line 18</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">red</span>
+ <span class="ruby-identifier">ansi</span> <span class="ruby-value">31</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- red-source -->
+
+ </div>
+
+
+
+
+ </div><!-- red-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/Template.html b/doc/app/Template.html
new file mode 100644
index 0000000..4f809ee
--- /dev/null
+++ b/doc/app/Template.html
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: Template</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/template_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/template.rb">app/models/template.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">Template</h1>
+
+ <div id="description" class="description">
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/ToolsController.html b/doc/app/ToolsController.html
new file mode 100644
index 0000000..5c1c478
--- /dev/null
+++ b/doc/app/ToolsController.html
@@ -0,0 +1,448 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: ToolsController</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/controllers/tools_controller_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/controllers/tools_controller.rb">app/controllers/tools_controller.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link"><a href="ApplicationController.html">ApplicationController</a></p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-background">#background</a></li>
+
+ <li><a href="#method-i-bugs_ajax_info">#bugs_ajax_info</a></li>
+
+ <li><a href="#method-i-template">#template</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">ToolsController</h1>
+
+ <div id="description" class="description">
+
+<p>Tools controller</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="background-method" class="method-detail ">
+ <a name="method-i-background"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">background</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="background-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/tools_controller.rb, line 69</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">background</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- background-source -->
+
+ </div>
+
+
+
+
+ </div><!-- background-method -->
+
+
+ <div id="bugs_ajax_info-method" class="method-detail ">
+ <a name="method-i-bugs_ajax_info"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">bugs_ajax_info</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Provides information for the ‘file new request’ page</p>
+
+
+
+ <div class="method-source-code" id="bugs_ajax_info-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/tools_controller.rb, line 17</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">bugs_ajax_info</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:bugs</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&quot;No bug given&quot;</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">500</span>
+ <span class="ruby-keyword">return</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">bug_ids</span> = <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:bugs</span>])
+
+ <span class="ruby-ivar">@bugs</span> = []
+ <span class="ruby-identifier">bug_ids</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug_id</span><span class="ruby-operator">|</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug_id</span>.<span class="ruby-identifier">to_i</span>)
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
+ <span class="ruby-ivar">@bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;Ignoring #{bug_id} #{e.message}&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">buginfo</span> = <span class="ruby-identifier">render_to_string</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'tools/ajaxbugs'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+
+ <span class="ruby-comment"># Generating a description</span>
+ <span class="ruby-ivar">@bugs</span>.<span class="ruby-identifier">delete_if</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">i</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">String</span>}
+ <span class="ruby-identifier">suggestion</span> = <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@bugs</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
+ <span class="ruby-ivar">@text</span> = <span class="ruby-ivar">@bugs</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">summary</span>
+ <span class="ruby-identifier">suggestion</span> = <span class="ruby-identifier">render_to_string</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'tools/ajaxdescr'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@atoms</span> = []
+ <span class="ruby-ivar">@bugs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
+ <span class="ruby-identifier">matchdata</span> = <span class="ruby-regexp">/([\w-]+)\/([\w-]+)(-([\w.]+))?/</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">bug</span>.<span class="ruby-identifier">summary</span>)
+
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">matchdata</span>.<span class="ruby-identifier">nil?</span>
+ <span class="ruby-identifier">category</span> = <span class="ruby-identifier">matchdata</span>[<span class="ruby-value">1</span>]
+ <span class="ruby-identifier">package</span> = <span class="ruby-identifier">matchdata</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/-+?$/</span>, <span class="ruby-string">''</span>)
+
+ <span class="ruby-ivar">@atoms</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{category}/#{package}&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-ivar">@atoms</span>.<span class="ruby-identifier">uniq!</span>
+
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@atoms</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
+ <span class="ruby-ivar">@text</span> = <span class="ruby-ivar">@atoms</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">', '</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&quot;: Multiple vulnerabilities&quot;</span>
+ <span class="ruby-identifier">suggestion</span> = <span class="ruby-identifier">render_to_string</span> <span class="ruby-value">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'tools/ajaxdescr'</span>, <span class="ruby-value">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+
+ <span class="ruby-identifier">suggestion</span> <span class="ruby-operator">||=</span> <span class="ruby-string">&quot;(no suggestion available)&quot;</span>
+
+ <span class="ruby-identifier">render</span> <span class="ruby-value">:json</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-string">&quot;buginfo&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">buginfo</span>, <span class="ruby-string">&quot;title&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">suggestion</span>}
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- bugs_ajax_info-source -->
+
+ </div>
+
+
+
+
+ </div><!-- bugs_ajax_info-method -->
+
+
+ <div id="template-method" class="method-detail ">
+ <a name="method-i-template"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">template</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="template-source">
+<pre>
+<span class="ruby-comment"># File app/controllers/tools_controller.rb, line 73</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">template</span>
+ <span class="ruby-ivar">@target</span> = <span class="ruby-identifier">params</span>[<span class="ruby-value">:template</span>][<span class="ruby-value">:target</span>]
+
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">GLSAMAKER_TEMPLATE_TARGETS</span>.<span class="ruby-identifier">include?</span> <span class="ruby-ivar">@target</span>
+ <span class="ruby-keyword">begin</span>
+ <span class="ruby-ivar">@template</span> = <span class="ruby-constant">Template</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:template</span>][<span class="ruby-value">:id</span>])
+ <span class="ruby-keyword">rescue</span> <span class="ruby-constant">ActiveRecord</span><span class="ruby-operator">::</span><span class="ruby-constant">RecordNotFound</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-string">&quot;Cannot find template&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@error</span> = <span class="ruby-string">&quot;Invalid target&quot;</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- template-source -->
+
+ </div>
+
+
+
+
+ </div><!-- template-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/ToolsHelper.html b/doc/app/ToolsHelper.html
new file mode 100644
index 0000000..37a60fd
--- /dev/null
+++ b/doc/app/ToolsHelper.html
@@ -0,0 +1,263 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Module: ToolsHelper</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="module">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/helpers/tools_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/helpers/tools_helper.rb">app/helpers/tools_helper.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+
+
+
+
+
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="module">ToolsHelper</h1>
+
+ <div id="description" class="description">
+
+<p>Tools helper</p>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/User.html b/doc/app/User.html
new file mode 100644
index 0000000..eff1570
--- /dev/null
+++ b/doc/app/User.html
@@ -0,0 +1,444 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>Class: User</title>
+
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
+
+ <script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+<body id="top" class="class">
+
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="./index.html">Home</a>
+ <a href="./index.html#classes">Classes</a>
+ <a href="./index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="file-metadata">
+ <div id="file-list-section" class="section">
+ <h3 class="section-header">In Files</h3>
+ <div class="section-body">
+ <ul>
+
+ <li><a href="./app/models/user_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
+ class="thickbox" title="app/models/user.rb">app/models/user.rb</a></li>
+
+ </ul>
+ </div>
+ </div>
+
+
+ </div>
+
+ <div id="class-metadata">
+
+ <!-- Parent Class -->
+ <div id="parent-class-section" class="section">
+ <h3 class="section-header">Parent</h3>
+
+ <p class="link">ActiveRecord::Base</p>
+
+ </div>
+
+
+
+
+
+
+
+ <!-- Method Quickref -->
+ <div id="method-list-section" class="section">
+ <h3 class="section-header">Methods</h3>
+ <ul class="link-list">
+
+ <li><a href="#method-i-can_access-3F">#can_access?</a></li>
+
+ <li><a href="#method-i-get_pref_category">#get_pref_category</a></li>
+
+ <li><a href="#method-i-is_el_jefe-3F">#is_el_jefe?</a></li>
+
+ <li><a href="#method-i-to_s">#to_s</a></li>
+
+ </ul>
+ </div>
+
+
+
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class/Module Index
+ <span class="search-toggle"><img src="./images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="./Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="./Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="./Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="./Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="./Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="./Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="./Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="./Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="./Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="./Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="./Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="./Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="./Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="./Admin.html">Admin</a></li>
+
+ <li><a href="./Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="./Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="./Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="./Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="./Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="./Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="./Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="./Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="./Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="./Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="./Comment.html">Comment</a></li>
+
+ <li><a href="./Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="./ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="./Authentication.html">Authentication</a></li>
+
+ <li><a href="./Authorization.html">Authorization</a></li>
+
+ <li><a href="./Bug.html">Bug</a></li>
+
+ <li><a href="./BugController.html">BugController</a></li>
+
+ <li><a href="./BugHelper.html">BugHelper</a></li>
+
+ <li><a href="./BugsController.html">BugsController</a></li>
+
+ <li><a href="./BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="./CommentsController.html">CommentsController</a></li>
+
+ <li><a href="./CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="./Cpe.html">Cpe</a></li>
+
+ <li><a href="./Cve.html">Cve</a></li>
+
+ <li><a href="./CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="./CveChange.html">CveChange</a></li>
+
+ <li><a href="./CveComment.html">CveComment</a></li>
+
+ <li><a href="./CveController.html">CveController</a></li>
+
+ <li><a href="./CveHelper.html">CveHelper</a></li>
+
+ <li><a href="./CveReference.html">CveReference</a></li>
+
+ <li><a href="./GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="./Glsa.html">Glsa</a></li>
+
+ <li><a href="./GlsaController.html">GlsaController</a></li>
+
+ <li><a href="./GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="./GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="./IndexController.html">IndexController</a></li>
+
+ <li><a href="./IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="./Package.html">Package</a></li>
+
+ <li><a href="./Reference.html">Reference</a></li>
+
+ <li><a href="./Revision.html">Revision</a></li>
+
+ <li><a href="./SearchController.html">SearchController</a></li>
+
+ <li><a href="./SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="./String.html">String</a></li>
+
+ <li><a href="./Template.html">Template</a></li>
+
+ <li><a href="./ToolsController.html">ToolsController</a></li>
+
+ <li><a href="./ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="./User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+ <h1 class="class">User</h1>
+
+ <div id="description" class="description">
+
+<h1>Access levels</h1>
+<dl class="rdoc-list"><dt><b>0 (Contributor)</b></dt>
+<dd>
+<p>Can see own drafts, can fill in requests</p>
+</dd><dt><b>1 (Padawan)</b></dt>
+<dd>
+<p>all of the above, plus see and edit all drafts</p>
+</dd><dt><b>2 (Full member)</b></dt>
+<dd>
+<p>all of the above, plus voting</p>
+</dd><dt><b>3 (Confidential member)</b></dt>
+<dd>
+<p>all of the above, including restricted drafts</p>
+</dd></dl>
+
+ </div><!-- description -->
+
+
+
+
+ <div id="5Buntitled-5D" class="documentation-section">
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div id="public-instance-method-details" class="method-section section">
+ <h3 class="section-header">Public Instance Methods</h3>
+
+
+ <div id="can_access-3F-method" class="method-detail ">
+ <a name="method-i-can_access-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">can_access?</span><span
+ class="method-args">(glsa)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Checks access to a given GLSA</p>
+
+
+
+ <div class="method-source-code" id="can_access-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/user.rb, line 44</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">can_access?</span>(<span class="ruby-identifier">glsa</span>)
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">access</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">is_owner?</span> <span class="ruby-keyword">self</span>
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">access</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">3</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">restricted</span>
+
+ <span class="ruby-keyword">true</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- can_access-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- can_access-3F-method -->
+
+
+ <div id="get_pref_category-method" class="method-detail ">
+ <a name="method-i-get_pref_category"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">get_pref_category</span><span
+ class="method-args">(category)</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Returns a certain category form the user’s preferences or an empty hash
+if that category does not exist</p>
+
+
+
+ <div class="method-source-code" id="get_pref_category-source">
+<pre>
+<span class="ruby-comment"># File app/models/user.rb, line 57</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_pref_category</span>(<span class="ruby-identifier">category</span>)
+ <span class="ruby-keyword">return</span> {} <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">preferences</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">preferences</span>[<span class="ruby-identifier">category</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
+
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">preferences</span>[<span class="ruby-identifier">category</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- get_pref_category-source -->
+
+ </div>
+
+
+
+
+ </div><!-- get_pref_category-method -->
+
+
+ <div id="is_el_jefe-3F-method" class="method-detail ">
+ <a name="method-i-is_el_jefe-3F"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">is_el_jefe?</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+ <p>Is the user an admin? ;)</p>
+
+
+
+ <div class="method-source-code" id="is_el_jefe-3F-source">
+<pre>
+<span class="ruby-comment"># File app/models/user.rb, line 39</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_el_jefe?</span>
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">jefe</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- is_el_jefe-3F-source -->
+
+ </div>
+
+
+
+
+ </div><!-- is_el_jefe-3F-method -->
+
+
+ <div id="to_s-method" class="method-detail ">
+ <a name="method-i-to_s"></a>
+
+
+ <div class="method-heading">
+ <span class="method-name">to_s</span><span
+ class="method-args">()</span>
+ <span class="method-click-advice">click to toggle source</span>
+ </div>
+
+
+ <div class="method-description">
+
+
+
+
+
+ <div class="method-source-code" id="to_s-source">
+<pre>
+<span class="ruby-comment"># File app/models/user.rb, line 51</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
+ <span class="ruby-node">&quot;#{name} (#{login})&quot;</span>
+<span class="ruby-keyword">end</span></pre>
+ </div><!-- to_s-source -->
+
+ </div>
+
+
+
+
+ </div><!-- to_s-method -->
+
+
+ </div><!-- public-instance-method-details -->
+
+ </div><!-- 5Buntitled-5D -->
+
+
+ </div><!-- documentation -->
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/admin/index_controller_rb.html b/doc/app/app/controllers/admin/index_controller_rb.html
new file mode 100644
index 0000000..f67d077
--- /dev/null
+++ b/doc/app/app/controllers/admin/index_controller_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: index_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/admin/templates_controller_rb.html b/doc/app/app/controllers/admin/templates_controller_rb.html
new file mode 100644
index 0000000..28fc938
--- /dev/null
+++ b/doc/app/app/controllers/admin/templates_controller_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: templates_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/admin/users_controller_rb.html b/doc/app/app/controllers/admin/users_controller_rb.html
new file mode 100644
index 0000000..90174b6
--- /dev/null
+++ b/doc/app/app/controllers/admin/users_controller_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: users_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/application_controller_rb.html b/doc/app/app/controllers/application_controller_rb.html
new file mode 100644
index 0000000..5d26309
--- /dev/null
+++ b/doc/app/app/controllers/application_controller_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: application_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Thu Sep 01 20:06:30 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/bug_controller_rb.html b/doc/app/app/controllers/bug_controller_rb.html
new file mode 100644
index 0000000..dfff5bd
--- /dev/null
+++ b/doc/app/app/controllers/bug_controller_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bug_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/bugs_controller_rb.html b/doc/app/app/controllers/bugs_controller_rb.html
new file mode 100644
index 0000000..7ed9419
--- /dev/null
+++ b/doc/app/app/controllers/bugs_controller_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bugs_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Thu Sep 01 20:06:58 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2011 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/comments_controller_rb.html b/doc/app/app/controllers/comments_controller_rb.html
new file mode 100644
index 0000000..4c9c812
--- /dev/null
+++ b/doc/app/app/controllers/comments_controller_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: comments_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Sep 04 14:49:11 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2011 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/cve_controller_rb.html b/doc/app/app/controllers/cve_controller_rb.html
new file mode 100644
index 0000000..413121f
--- /dev/null
+++ b/doc/app/app/controllers/cve_controller_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/glsa_controller_rb.html b/doc/app/app/controllers/glsa_controller_rb.html
new file mode 100644
index 0000000..91d7860
--- /dev/null
+++ b/doc/app/app/controllers/glsa_controller_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: glsa_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Sep 04 00:52:07 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010-11 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/index_controller_rb.html b/doc/app/app/controllers/index_controller_rb.html
new file mode 100644
index 0000000..47199fe
--- /dev/null
+++ b/doc/app/app/controllers/index_controller_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: index_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 20:18:29 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/search_controller_rb.html b/doc/app/app/controllers/search_controller_rb.html
new file mode 100644
index 0000000..be6f4e9
--- /dev/null
+++ b/doc/app/app/controllers/search_controller_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: search_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Thu Sep 01 20:00:53 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/controllers/tools_controller_rb.html b/doc/app/app/controllers/tools_controller_rb.html
new file mode 100644
index 0000000..1ce2ac1
--- /dev/null
+++ b/doc/app/app/controllers/tools_controller_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: tools_controller.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 19:16:21 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/admin/index_helper_rb.html b/doc/app/app/helpers/admin/index_helper_rb.html
new file mode 100644
index 0000000..3f09817
--- /dev/null
+++ b/doc/app/app/helpers/admin/index_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: index_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/admin/templates_helper_rb.html b/doc/app/app/helpers/admin/templates_helper_rb.html
new file mode 100644
index 0000000..14d63e2
--- /dev/null
+++ b/doc/app/app/helpers/admin/templates_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: templates_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/admin/users_helper_rb.html b/doc/app/app/helpers/admin/users_helper_rb.html
new file mode 100644
index 0000000..04875e2
--- /dev/null
+++ b/doc/app/app/helpers/admin/users_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: users_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/application_helper_rb.html b/doc/app/app/helpers/application_helper_rb.html
new file mode 100644
index 0000000..8dfd4e7
--- /dev/null
+++ b/doc/app/app/helpers/application_helper_rb.html
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: application_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Tue Aug 30 18:13:21 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-11 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2006-07 Jean-Philippe Lang
+Copyright (C) 2008 Robert Buchholz &lt;rbu@gentoo.org&gt; and Tobias Heinlein &lt;keytoaster@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/bug_helper_rb.html b/doc/app/app/helpers/bug_helper_rb.html
new file mode 100644
index 0000000..f6efc2b
--- /dev/null
+++ b/doc/app/app/helpers/bug_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bug_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/bugs_helper_rb.html b/doc/app/app/helpers/bugs_helper_rb.html
new file mode 100644
index 0000000..9fb0d4a
--- /dev/null
+++ b/doc/app/app/helpers/bugs_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bugs_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/comments_helper_rb.html b/doc/app/app/helpers/comments_helper_rb.html
new file mode 100644
index 0000000..5e3f03f
--- /dev/null
+++ b/doc/app/app/helpers/comments_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: comments_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/cve_helper_rb.html b/doc/app/app/helpers/cve_helper_rb.html
new file mode 100644
index 0000000..536b23c
--- /dev/null
+++ b/doc/app/app/helpers/cve_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 22 23:12:58 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/glsa_helper_rb.html b/doc/app/app/helpers/glsa_helper_rb.html
new file mode 100644
index 0000000..3d3e6fa
--- /dev/null
+++ b/doc/app/app/helpers/glsa_helper_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: glsa_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 19:02:21 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/index_helper_rb.html b/doc/app/app/helpers/index_helper_rb.html
new file mode 100644
index 0000000..f737cd6
--- /dev/null
+++ b/doc/app/app/helpers/index_helper_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: index_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/search_helper_rb.html b/doc/app/app/helpers/search_helper_rb.html
new file mode 100644
index 0000000..ede1014
--- /dev/null
+++ b/doc/app/app/helpers/search_helper_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: search_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Tue Aug 30 15:17:23 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/helpers/tools_helper_rb.html b/doc/app/app/helpers/tools_helper_rb.html
new file mode 100644
index 0000000..26e2e42
--- /dev/null
+++ b/doc/app/app/helpers/tools_helper_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: tools_helper.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/mailers/glsa_mailer_rb.html b/doc/app/app/mailers/glsa_mailer_rb.html
new file mode 100644
index 0000000..43cd59d
--- /dev/null
+++ b/doc/app/app/mailers/glsa_mailer_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: glsa_mailer.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/bug_rb.html b/doc/app/app/models/bug_rb.html
new file mode 100644
index 0000000..01d0e8e
--- /dev/null
+++ b/doc/app/app/models/bug_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bug.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Tue Aug 30 15:17:23 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/comment_rb.html b/doc/app/app/models/comment_rb.html
new file mode 100644
index 0000000..7c05461
--- /dev/null
+++ b/doc/app/app/models/comment_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: comment.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Sep 04 15:03:52 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/cpe_rb.html b/doc/app/app/models/cpe_rb.html
new file mode 100644
index 0000000..12e0670
--- /dev/null
+++ b/doc/app/app/models/cpe_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cpe.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/cve_assignment_rb.html b/doc/app/app/models/cve_assignment_rb.html
new file mode 100644
index 0000000..b8d9d20
--- /dev/null
+++ b/doc/app/app/models/cve_assignment_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve_assignment.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/cve_change_rb.html b/doc/app/app/models/cve_change_rb.html
new file mode 100644
index 0000000..0b6b21c
--- /dev/null
+++ b/doc/app/app/models/cve_change_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve_change.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/cve_comment_rb.html b/doc/app/app/models/cve_comment_rb.html
new file mode 100644
index 0000000..b2a0d50
--- /dev/null
+++ b/doc/app/app/models/cve_comment_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve_comment.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Tue Aug 30 15:17:23 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/cve_rb.html b/doc/app/app/models/cve_rb.html
new file mode 100644
index 0000000..6aae252
--- /dev/null
+++ b/doc/app/app/models/cve_rb.html
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Tue Aug 30 15:17:23 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>glsamaker/helpers</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/cve_reference_rb.html b/doc/app/app/models/cve_reference_rb.html
new file mode 100644
index 0000000..5e57e0e
--- /dev/null
+++ b/doc/app/app/models/cve_reference_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: cve_reference.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/glsa_rb.html b/doc/app/app/models/glsa_rb.html
new file mode 100644
index 0000000..51ca649
--- /dev/null
+++ b/doc/app/app/models/glsa_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: glsa.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Sep 04 14:42:42 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/package_rb.html b/doc/app/app/models/package_rb.html
new file mode 100644
index 0000000..64e10d4
--- /dev/null
+++ b/doc/app/app/models/package_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: package.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/reference_rb.html b/doc/app/app/models/reference_rb.html
new file mode 100644
index 0000000..6e7ad5b
--- /dev/null
+++ b/doc/app/app/models/reference_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: reference.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/revision_rb.html b/doc/app/app/models/revision_rb.html
new file mode 100644
index 0000000..4d756da
--- /dev/null
+++ b/doc/app/app/models/revision_rb.html
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: revision.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Tue Aug 30 15:17:23 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>rexml/document</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/template_rb.html b/doc/app/app/models/template_rb.html
new file mode 100644
index 0000000..2e25072
--- /dev/null
+++ b/doc/app/app/models/template_rb.html
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: template.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/app/models/user_rb.html b/doc/app/app/models/user_rb.html
new file mode 100644
index 0000000..958fac4
--- /dev/null
+++ b/doc/app/app/models/user_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: user.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/classes/ApplicationController.html b/doc/app/classes/ApplicationController.html
deleted file mode 100644
index 58b9cd8..0000000
--- a/doc/app/classes/ApplicationController.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: ApplicationController</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">ApplicationController</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/controllers/application_controller_rb.html">
- app/controllers/application_controller.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActionController::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Filters added to this controller apply to all controllers in the
-application. Likewise, all the methods added will be available for all
-controllers.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
- <div id="includes">
- <h3 class="section-bar">Included Modules</h3>
-
- <div id="includes-list">
- <span class="include-name"><a href="Authentication.html">Authentication</a></span>
- </div>
- </div>
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/ApplicationHelper.html b/doc/app/classes/ApplicationHelper.html
deleted file mode 100644
index 99ecc08..0000000
--- a/doc/app/classes/ApplicationHelper.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: ApplicationHelper</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">ApplicationHelper</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/helpers/application_helper_rb.html">
- app/helpers/application_helper.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Methods added to this helper will be available to all templates in the
-application.
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000058">simple_format_without_paragraph</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000058" class="method-detail">
- <a name="M000058"></a>
-
- <div class="method-heading">
- <a href="#M000058" class="method-signature">
- <span class="method-name">simple_format_without_paragraph</span><span class="method-args">(text)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Same as Rails&#8217; simple_format helper without using paragraphs
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000058-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000058-source">
-<pre>
- <span class="ruby-comment cmt"># File app/helpers/application_helper.rb, line 16</span>
-16: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">simple_format_without_paragraph</span>(<span class="ruby-identifier">text</span>)
-17: <span class="ruby-identifier">text</span>.<span class="ruby-identifier">to_s</span>.
-18: <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/\r\n?/</span>, <span class="ruby-value str">&quot;\n&quot;</span>). <span class="ruby-comment cmt"># \r\n and \r -&gt; \n</span>
-19: <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/\n\n+/</span>, <span class="ruby-value str">&quot;&lt;br /&gt;&lt;br /&gt;&quot;</span>). <span class="ruby-comment cmt"># 2+ newline -&gt; 2 br</span>
-20: <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/([^\n]\n)(?=[^\n])/</span>, <span class="ruby-value str">'\1&lt;br /&gt;'</span>) <span class="ruby-comment cmt"># 1 newline -&gt; br</span>
-21: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Array.html b/doc/app/classes/Array.html
deleted file mode 100644
index 9fccc43..0000000
--- a/doc/app/classes/Array.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Array</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Array</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/diff_rb.html">
- lib/diff.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
- <div id="includes">
- <h3 class="section-bar">Included Modules</h3>
-
- <div id="includes-list">
- <span class="include-name"><a href="Diffable.html">Diffable</a></span>
- </div>
- </div>
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Authentication.html b/doc/app/classes/Authentication.html
deleted file mode 100644
index 2577805..0000000
--- a/doc/app/classes/Authentication.html
+++ /dev/null
@@ -1,242 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Authentication</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Authentication</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/authentication_rb.html">
- lib/authentication.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="Authentication.html">Authentication</a> module
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000053">current_user</a>&nbsp;&nbsp;
- <a href="#M000054">included</a>&nbsp;&nbsp;
- <a href="#M000052">login_required</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Protected Class methods</h3>
-
- <div id="method-M000054" class="method-detail">
- <a name="M000054"></a>
-
- <div class="method-heading">
- <a href="#M000054" class="method-signature">
- <span class="method-name">included</span><span class="method-args">(base)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Populate user to views, shamelessly stolen from restful auth. ;)
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000054-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000054-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/authentication.rb, line 63</span>
-63: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">included</span>(<span class="ruby-identifier">base</span>)
-64: <span class="ruby-identifier">base</span>.<span class="ruby-identifier">send</span> <span class="ruby-identifier">:helper_method</span>, <span class="ruby-identifier">:current_user</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">base</span>.<span class="ruby-identifier">respond_to?</span> <span class="ruby-identifier">:helper_method</span>
-65: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <h3 class="section-bar">Protected Instance methods</h3>
-
- <div id="method-M000053" class="method-detail">
- <a name="M000053"></a>
-
- <div class="method-heading">
- <a href="#M000053" class="method-signature">
- <span class="method-name">current_user</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns the ActiveRecord object of the currently logged in user
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000053-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000053-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/authentication.rb, line 58</span>
-58: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current_user</span>
-59: <span class="ruby-constant">User</span>.<span class="ruby-identifier">find_by_login</span>(<span class="ruby-identifier">user_name</span>)
-60: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000052" class="method-detail">
- <a name="M000052"></a>
-
- <div class="method-heading">
- <a href="#M000052" class="method-signature">
- <span class="method-name">login_required</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Login filter to be applied to <b>all</b> pages on GLSAMaker
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000052-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000052-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/authentication.rb, line 16</span>
-16: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">login_required</span>
-17: <span class="ruby-comment cmt"># Production authentication via REMOTE_USER</span>
-18: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">RAILS_ENV</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;production&quot;</span> <span class="ruby-keyword kw">or</span> <span class="ruby-constant">GLSAMAKER_FORCE_PRODUCTION_AUTH</span>
-19: <span class="ruby-comment cmt"># REMOTE_USER should be there in FCGI or Passenger</span>
-20: <span class="ruby-identifier">env_user_name</span> = <span class="ruby-identifier">user_name</span>
-21:
-22: <span class="ruby-comment cmt"># Autentication system most likely broken</span>
-23: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">env_user_name</span>.<span class="ruby-identifier">nil?</span>
-24: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'index'</span>, <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'error'</span>, <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'system'</span>
-25: <span class="ruby-keyword kw">return</span>
-26: <span class="ruby-keyword kw">end</span>
-27:
-28: <span class="ruby-identifier">user</span> = <span class="ruby-constant">User</span>.<span class="ruby-identifier">find_by_login</span>(<span class="ruby-identifier">env_user_name</span>)
-29:
-30: <span class="ruby-comment cmt"># User not known to GLSAMaker</span>
-31: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">user</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
-32: <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;Unknown user #{env_user_name} tried to log in from #{request.remote_ip}&quot;</span>
-33: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'index'</span>, <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'error'</span>, <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'user'</span>
-34: <span class="ruby-keyword kw">return</span>
-35: <span class="ruby-keyword kw">end</span>
-36:
-37: <span class="ruby-comment cmt"># User is marked as disabled in the DB</span>
-38: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">disabled</span>
-39: <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;Disabled user #{env_user_name} tried to log in from #{request.remote_ip}&quot;</span>
-40: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'index'</span>, <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'error'</span>, <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'disabled'</span>
-41: <span class="ruby-keyword kw">return</span>
-42: <span class="ruby-keyword kw">end</span>
-43:
-44: <span class="ruby-comment cmt"># Auth is fine now.</span>
-45: <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-node">&quot;Environment username: #{env_user_name}&quot;</span>
-46:
-47: <span class="ruby-comment cmt"># For all other environments request, HTTP auth by ourselves</span>
-48: <span class="ruby-comment cmt"># The password can be set in config/initializers/glsamaker.rb</span>
-49: <span class="ruby-keyword kw">else</span>
-50: <span class="ruby-identifier">authenticate_or_request_with_http_basic</span>(<span class="ruby-value str">&quot;GLSAMaker testing environment&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span><span class="ruby-operator">|</span>
-51: <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span> <span class="ruby-node">&quot;Environment username: #{username}&quot;</span>
-52: <span class="ruby-identifier">check_auth</span>(<span class="ruby-identifier">username</span>, <span class="ruby-identifier">password</span>)
-53: <span class="ruby-keyword kw">end</span>
-54: <span class="ruby-keyword kw">end</span>
-55: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Bug.html b/doc/app/classes/Bug.html
deleted file mode 100644
index 713f372..0000000
--- a/doc/app/classes/Bug.html
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Bug</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Bug</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/models/bug_rb.html">
- app/models/bug.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActiveRecord::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="Bug.html">Bug</a> model
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000034">bug_url</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000034" class="method-detail">
- <a name="M000034"></a>
-
- <div class="method-heading">
- <a href="#M000034" class="method-signature">
- <span class="method-name">bug_url</span><span class="method-args">(secure = true)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns the Gentoo <a href="Bugzilla.html">Bugzilla</a> URI for the bug.
-Set <tt>secure</tt> to false to get a HTTP instead of a HTTPS URI
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000034-source">
-<pre>
- <span class="ruby-comment cmt"># File app/models/bug.rb, line 18</span>
-18: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">bug_url</span>(<span class="ruby-identifier">secure</span> = <span class="ruby-keyword kw">true</span>)
-19: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">secure</span>
-20: <span class="ruby-node">&quot;https://bugs.gentoo.org/show_bug.cgi?id=#{self.bug_id}&quot;</span>
-21: <span class="ruby-keyword kw">else</span>
-22: <span class="ruby-node">&quot;http://bugs.gentoo.org/show_bug.cgi?id=#{self.bug_id}&quot;</span>
-23: <span class="ruby-keyword kw">end</span>
-24: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Bugzilla.html b/doc/app/classes/Bugzilla.html
deleted file mode 100644
index 8634b65..0000000
--- a/doc/app/classes/Bugzilla.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Bugzilla</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Bugzilla</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/bugzilla_rb.html">
- lib/bugzilla.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="Bugzilla.html">Bugzilla</a> module
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000035">find_glsa_bugs</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
- <div id="class-list">
- <h3 class="section-bar">Classes and Modules</h3>
-
- Class <a href="Bugzilla/Bug.html" class="link">Bugzilla::Bug</a><br />
-Class <a href="Bugzilla/Change.html" class="link">Bugzilla::Change</a><br />
-Class <a href="Bugzilla/Comment.html" class="link">Bugzilla::Comment</a><br />
-Class <a href="Bugzilla/History.html" class="link">Bugzilla::History</a><br />
-
- </div>
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000035" class="method-detail">
- <a name="M000035"></a>
-
- <div class="method-heading">
- <a href="#M000035" class="method-signature">
- <span class="method-name">find_glsa_bugs</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000035-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 119</span>
-119: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">find_glsa_bugs</span>
-120: <span class="ruby-identifier">url</span>=<span class="ruby-value str">&quot;http://bugs.gentoo.org/buglist.cgi?bug_file_loc=&amp;bug_file_loc_type=allwordssubstr&amp;bug_id=&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;bugidtype=include&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;component=Vulnerabilities&amp;email1=&amp;email2=&amp;emailassigned_to1=1&amp;emailassigned_to2=1&amp;emailcc2=1&amp;emailreporter2=1&amp;emailtype1=substring&amp;emailtype2=substring&amp;field-1-0-0=product&amp;field-1-1-0=component&amp;field-1-2-0=bug_status&amp;field-1-3-0=status_whiteboard&amp;field0-0-0=noop&amp;keywords=&amp;keywords_type=allwords&amp;long_desc=&amp;long_desc_type=substring&amp;product=Gentoo%20Security&amp;query_format=advanced&amp;remaction=&amp;short_desc=&amp;short_desc_type=allwordssubstr&amp;status_whiteboard=%5Bglsa%5D&amp;status_whiteboard_type=substring&amp;type-1-0-0=anyexact&amp;type-1-1-0=anyexact&amp;type-1-2-0=anyexact&amp;type-1-3-0=substring&amp;type0-0-0=noop&amp;value-1-0-0=Gentoo%20Security&amp;value-1-1-0=Vulnerabilities&amp;value-1-2-0=UNCONFIRMED%2CNEW%2CASSIGNED%2CREOPENED&amp;value-1-3-0=%5Bglsa%5D&amp;value0-0-0=&amp;votes=&amp;ctype=csv&quot;</span>
-121: <span class="ruby-identifier">bugs</span> = []
-122:
-123: <span class="ruby-constant">FasterCSV</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">row</span><span class="ruby-operator">|</span>
-124: <span class="ruby-identifier">bugs</span> <span class="ruby-operator">&lt;&lt;</span> { <span class="ruby-value str">&quot;bug_id&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-125: <span class="ruby-value str">&quot;severity&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-126: <span class="ruby-value str">&quot;priority&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-127: <span class="ruby-value str">&quot;os&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-128: <span class="ruby-value str">&quot;assignee&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-129: <span class="ruby-value str">&quot;status&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-130: <span class="ruby-value str">&quot;resolution&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>,
-131: <span class="ruby-value str">&quot;summary&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">shift</span>
-132: }
-133: <span class="ruby-keyword kw">end</span>
-134:
-135: <span class="ruby-identifier">bugs</span>.<span class="ruby-identifier">shift</span>
-136: <span class="ruby-identifier">bugs</span>
-137: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Bugzilla/Bug.html b/doc/app/classes/Bugzilla/Bug.html
deleted file mode 100644
index 5ac9c49..0000000
--- a/doc/app/classes/Bugzilla/Bug.html
+++ /dev/null
@@ -1,393 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Bugzilla::Bug</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Bugzilla::Bug</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/bugzilla_rb.html">
- lib/bugzilla.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Encapsulates a <a href="../Bugzilla.html">Bugzilla</a> <a
-href="Bug.html">Bug</a>
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000045">history</a>&nbsp;&nbsp;
- <a href="#M000043">load_from_id</a>&nbsp;&nbsp;
- <a href="#M000046">new</a>&nbsp;&nbsp;
- <a href="#M000047">str2bugIDs</a>&nbsp;&nbsp;
- <a href="#M000044">url</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
- <div id="attribute-list">
- <h3 class="section-bar">Attributes</h3>
-
- <div class="name-list">
- <table>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">alias</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">assigned_to</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">bug_id</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">cc</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">comments</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">component</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">created_at</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">product</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">reporter</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">resolution</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">status</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">status_whiteboard</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">summary</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">url</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000043" class="method-detail">
- <a name="M000043"></a>
-
- <div class="method-heading">
- <a href="#M000043" class="method-signature">
- <span class="method-name">load_from_id</span><span class="method-args">(bugid)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Creates a <a href="Bug.html#M000046">new</a> <tt><a
-href="Bug.html">Bug</a></tt> object from the Gentoo bug referenced as
-#<tt>bugid</tt>
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000043-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000043-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 23</span>
-23: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bugid</span>)
-24: <span class="ruby-keyword kw">begin</span>
-25: <span class="ruby-identifier">id</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">bugid</span>)
-26:
-27: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
-28: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">ArgumentError</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-29: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Invalid Bug ID&quot;</span>
-30: <span class="ruby-keyword kw">end</span>
-31:
-32: <span class="ruby-keyword kw">begin</span>
-33: <span class="ruby-identifier">xml</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-node">&quot;http://bugs.gentoo.org/show_bug.cgi?ctype=xml&amp;id=#{id}&quot;</span>))
-34: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-35: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Couldn't load bug: #{e.message}&quot;</span>
-36: <span class="ruby-keyword kw">end</span>
-37:
-38: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">xml</span>.<span class="ruby-identifier">root</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-value str">&quot;bug&quot;</span>).<span class="ruby-identifier">first</span>)
-39: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000046" class="method-detail">
- <a name="M000046"></a>
-
- <div class="method-heading">
- <a href="#M000046" class="method-signature">
- <span class="method-name">new</span><span class="method-args">(bug)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000046-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000046-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 54</span>
-54: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">bug</span>)
-55: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>
-56: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Nokogiri failure&quot;</span>
-57: <span class="ruby-keyword kw">end</span>
-58:
-59: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">bug</span>[<span class="ruby-value str">&quot;error&quot;</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;NotFound&quot;</span>
-60: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Bug not found&quot;</span>
-61: <span class="ruby-keyword kw">end</span>
-62:
-63: <span class="ruby-ivar">@bug_id</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'bug_id'</span>)
-64: <span class="ruby-ivar">@summary</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'short_desc'</span>)
-65: <span class="ruby-ivar">@created_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'creation_ts'</span>))
-66: <span class="ruby-ivar">@reporter</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'reporter'</span>)
-67: <span class="ruby-ivar">@alias</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'alias'</span>)
-68: <span class="ruby-ivar">@assigned_to</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'assigned_to'</span>)
-69: <span class="ruby-ivar">@cc</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'cc'</span>)
-70: <span class="ruby-ivar">@status_whiteboard</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'status_whiteboard'</span>)
-71: <span class="ruby-ivar">@product</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'product'</span>)
-72: <span class="ruby-ivar">@component</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'component'</span>)
-73: <span class="ruby-ivar">@status</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'bug_status'</span>)
-74: <span class="ruby-ivar">@resolution</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'resolution'</span>)
-75: <span class="ruby-ivar">@url</span> = <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">bug</span>, <span class="ruby-value str">'bug_file_loc'</span>)
-76:
-77: <span class="ruby-ivar">@comments</span> = []
-78: <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-value str">'long_desc'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">comment</span><span class="ruby-operator">|</span>
-79: <span class="ruby-ivar">@comments</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Comment</span>.<span class="ruby-identifier">new</span>(
-80: <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">comment</span>, <span class="ruby-value str">'who'</span>),
-81: <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">comment</span>, <span class="ruby-value str">'thetext'</span>),
-82: <span class="ruby-identifier">xml_content</span>(<span class="ruby-identifier">comment</span>, <span class="ruby-value str">'bug_when'</span>)
-83: )
-84: <span class="ruby-keyword kw">end</span>
-85: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000047" class="method-detail">
- <a name="M000047"></a>
-
- <div class="method-heading">
- <a href="#M000047" class="method-signature">
- <span class="method-name">str2bugIDs</span><span class="method-args">(str)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Splits a <a href="../String.html">String</a> <tt>str</tt> into an array of
-valid bug IDs
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000047-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000047-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 88</span>
-88: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">str</span>)
-89: <span class="ruby-identifier">bug_ids</span> = <span class="ruby-identifier">str</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/,\s*/</span>)
-90:
-91: <span class="ruby-identifier">bug_ids</span>.<span class="ruby-identifier">map</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
-92: <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/\D/</span>, <span class="ruby-value str">''</span>)
-93: <span class="ruby-keyword kw">end</span>
-94: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000045" class="method-detail">
- <a name="M000045"></a>
-
- <div class="method-heading">
- <a href="#M000045" class="method-signature">
- <span class="method-name">history</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000045-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 50</span>
-50: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">history</span>()
-51: <span class="ruby-ivar">@history</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">History</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
-52: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000044" class="method-detail">
- <a name="M000044"></a>
-
- <div class="method-heading">
- <a href="#M000044" class="method-signature">
- <span class="method-name">url</span><span class="method-args">(secure = true)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns the URL for the bug, set <tt>secure</tt> to false to get a <a
-href="http:-URL">-URL</a>
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000044-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000044-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 42</span>
-42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">url</span>(<span class="ruby-identifier">secure</span> = <span class="ruby-keyword kw">true</span>)
-43: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">secure</span>
-44: <span class="ruby-node">&quot;https://bugs.gentoo.org/show_bug.cgi?id=#{@bug_id}&quot;</span>
-45: <span class="ruby-keyword kw">else</span>
-46: <span class="ruby-node">&quot;http://bugs.gentoo.org/show_bug.cgi?id=#{@bug_id}&quot;</span>
-47: <span class="ruby-keyword kw">end</span>
-48: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Bugzilla/Change.html b/doc/app/classes/Bugzilla/Change.html
deleted file mode 100644
index 6f4418a..0000000
--- a/doc/app/classes/Bugzilla/Change.html
+++ /dev/null
@@ -1,243 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Bugzilla::Change</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Bugzilla::Change</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/bugzilla_rb.html">
- lib/bugzilla.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-This represents a single <a href="Change.html">Change</a> made to a <a
-href="Bug.html">Bug</a>
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000038">add_change</a>&nbsp;&nbsp;
- <a href="#M000037">new</a>&nbsp;&nbsp;
- <a href="#M000039">to_s</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
- <div id="attribute-list">
- <h3 class="section-bar">Attributes</h3>
-
- <div class="name-list">
- <table>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">changes</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">time</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">user</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000037" class="method-detail">
- <a name="M000037"></a>
-
- <div class="method-heading">
- <a href="#M000037" class="method-signature">
- <span class="method-name">new</span><span class="method-args">(user, time)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Creates a <a href="Change.html#M000037">new</a> <a
-href="Change.html">Change</a> made by <tt>user</tt> at <tt>time</tt>.
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000037-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 217</span>
-217: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">time</span>)
-218: <span class="ruby-ivar">@user</span> = <span class="ruby-identifier">user</span> <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;&quot;</span>
-219: <span class="ruby-ivar">@time</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">time</span>)
-220: <span class="ruby-ivar">@changes</span> = {}
-221: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000038" class="method-detail">
- <a name="M000038"></a>
-
- <div class="method-heading">
- <a href="#M000038" class="method-signature">
- <span class="method-name">add_change</span><span class="method-args">(field, removed, added)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Adds a changed <tt>field</tt> to the <a href="Change.html">Change</a>
-object. <tt>removed</tt> denotes the removed text and <tt>added</tt> is the
-<a href="Change.html#M000037">new</a> text
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000038-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 225</span>
-225: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_change</span>(<span class="ruby-identifier">field</span>, <span class="ruby-identifier">removed</span>, <span class="ruby-identifier">added</span>)
-226: <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;A change to this field is already registered.&quot;</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">field</span>)
-227: <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;field has to be a symbol&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">field</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Symbol</span>
-228:
-229: <span class="ruby-ivar">@changes</span>[<span class="ruby-identifier">field</span>] = [<span class="ruby-identifier">removed</span>, <span class="ruby-identifier">added</span>]
-230: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000039" class="method-detail">
- <a name="M000039"></a>
-
- <div class="method-heading">
- <a href="#M000039" class="method-signature">
- <span class="method-name">to_s</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns a string representation
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000039-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 233</span>
-233: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
-234: <span class="ruby-node">&quot;#{@user} changed at #{@time.to_s}: #{@changes.inspect}&quot;</span>
-235: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Bugzilla/Comment.html b/doc/app/classes/Bugzilla/Comment.html
deleted file mode 100644
index 6ed0c22..0000000
--- a/doc/app/classes/Bugzilla/Comment.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Bugzilla::Comment</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Bugzilla::Comment</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/bugzilla_rb.html">
- lib/bugzilla.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Encapsulates a comment to a <a href="Bug.html">Bug</a>
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000036">new</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
- <div id="attribute-list">
- <h3 class="section-bar">Attributes</h3>
-
- <div class="name-list">
- <table>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">author</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">date</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">text</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000036" class="method-detail">
- <a name="M000036"></a>
-
- <div class="method-heading">
- <a href="#M000036" class="method-signature">
- <span class="method-name">new</span><span class="method-args">(by, text, date)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000036-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 110</span>
-110: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">by</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">date</span>)
-111: <span class="ruby-ivar">@author</span> = <span class="ruby-identifier">by</span>
-112: <span class="ruby-ivar">@text</span> = <span class="ruby-identifier">text</span>
-113: <span class="ruby-ivar">@date</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">date</span>)
-114: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Bugzilla/History.html b/doc/app/classes/Bugzilla/History.html
deleted file mode 100644
index df32f3e..0000000
--- a/doc/app/classes/Bugzilla/History.html
+++ /dev/null
@@ -1,281 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Bugzilla::History</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Bugzilla::History</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/bugzilla_rb.html">
- lib/bugzilla.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Encapsulates a bug&#8216;s history
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000041">by_field</a>&nbsp;&nbsp;
- <a href="#M000042">by_user</a>&nbsp;&nbsp;
- <a href="#M000040">new</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
- <div id="attribute-list">
- <h3 class="section-bar">Attributes</h3>
-
- <div class="name-list">
- <table>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">changes</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000040" class="method-detail">
- <a name="M000040"></a>
-
- <div class="method-heading">
- <a href="#M000040" class="method-signature">
- <span class="method-name">new</span><span class="method-args">(bug)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Creates a <a href="History.html#M000040">new</a> <a
-href="History.html">History</a> for the <a href="Bug.html">Bug</a> object
-<tt>bug</tt>.
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000040-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 144</span>
-144: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">bug</span>)
-145: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">bug</span>.<span class="ruby-identifier">respond_to?</span> <span class="ruby-identifier">:bug_id</span>
-146: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Need a bug (or something that at least looks like a bug)&quot;</span>
-147: <span class="ruby-keyword kw">end</span>
-148:
-149: <span class="ruby-keyword kw">begin</span>
-150: <span class="ruby-identifier">html</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">HTML</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-node">&quot;http://bugs.gentoo.org/show_activity.cgi?id=#{bug.bug_id}&quot;</span>))
-151: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-152: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Couldn't load the bug history: #{e.message}&quot;</span>
-153: <span class="ruby-keyword kw">end</span>
-154:
-155: <span class="ruby-ivar">@changes</span> = []
-156: <span class="ruby-identifier">change_cache</span> = <span class="ruby-keyword kw">nil</span>
-157:
-158: <span class="ruby-identifier">html</span>.<span class="ruby-identifier">xpath</span>(<span class="ruby-value str">&quot;/html/body/table/tr&quot;</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
-159: <span class="ruby-comment cmt"># ignore header line</span>
-160: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;th&quot;</span>
-161:
-162: <span class="ruby-comment cmt"># First line in a multi-change set</span>
-163: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">chcount</span> = <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>[<span class="ruby-value str">&quot;rowspan&quot;</span>]) <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
-164: <span class="ruby-identifier">change_cache</span> = <span class="ruby-constant">Change</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>, <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>)
-165:
-166: <span class="ruby-identifier">change_cache</span>.<span class="ruby-identifier">add_change</span>(
-167: <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">to_sym</span>,
-168: <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">6</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>,
-169: <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">8</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>
-170: )
-171:
-172: <span class="ruby-ivar">@changes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">change_cache</span>
-173: <span class="ruby-keyword kw">else</span>
-174: <span class="ruby-identifier">change_cache</span>.<span class="ruby-identifier">add_change</span>(
-175: <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">to_sym</span>,
-176: <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>,
-177: <span class="ruby-identifier">change</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">content</span>.<span class="ruby-identifier">strip</span>
-178: )
-179: <span class="ruby-keyword kw">end</span>
-180: <span class="ruby-keyword kw">end</span>
-181: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000041" class="method-detail">
- <a name="M000041"></a>
-
- <div class="method-heading">
- <a href="#M000041" class="method-signature">
- <span class="method-name">by_field</span><span class="method-args">(field)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns an <a href="../Array.html">Array</a> of Changes made to the field
-<tt>field</tt>
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000041-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 184</span>
-184: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">by_field</span>(<span class="ruby-identifier">field</span>)
-185: <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Symbol expected&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">field</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Symbol</span>
-186:
-187: <span class="ruby-identifier">changes</span> = []
-188:
-189: <span class="ruby-ivar">@changes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
-190: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">change</span>.<span class="ruby-identifier">changes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">field</span>)
-191: <span class="ruby-identifier">changes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">change</span>
-192: <span class="ruby-keyword kw">end</span>
-193: <span class="ruby-keyword kw">end</span>
-194:
-195: <span class="ruby-identifier">changes</span>
-196: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000042" class="method-detail">
- <a name="M000042"></a>
-
- <div class="method-heading">
- <a href="#M000042" class="method-signature">
- <span class="method-name">by_user</span><span class="method-args">(user)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns an <a href="../Array.html">Array</a> of Changes made by the user
-<tt>user</tt>
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000042-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000042-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/bugzilla.rb, line 199</span>
-199: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">by_user</span>(<span class="ruby-identifier">user</span>)
-200: <span class="ruby-identifier">changes</span> = []
-201:
-202: <span class="ruby-ivar">@changes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
-203: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">change</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">user</span>
-204: <span class="ruby-identifier">changes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">change</span>
-205: <span class="ruby-keyword kw">end</span>
-206: <span class="ruby-keyword kw">end</span>
-207:
-208: <span class="ruby-identifier">changes</span>
-209: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Comment.html b/doc/app/classes/Comment.html
deleted file mode 100644
index 2a9761d..0000000
--- a/doc/app/classes/Comment.html
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Comment</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Comment</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/models/comment_rb.html">
- app/models/comment.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActiveRecord::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="Comment.html">Comment</a> model
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Diff.html b/doc/app/classes/Diff.html
deleted file mode 100644
index 8b15327..0000000
--- a/doc/app/classes/Diff.html
+++ /dev/null
@@ -1,494 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Diff</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Diff</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/diff_rb.html">
- lib/diff.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000031">compact</a>&nbsp;&nbsp;
- <a href="#M000032">compact!</a>&nbsp;&nbsp;
- <a href="#M000026">compactdiffs</a>&nbsp;&nbsp;
- <a href="#M000029">discarda</a>&nbsp;&nbsp;
- <a href="#M000030">discardb</a>&nbsp;&nbsp;
- <a href="#M000033">inspect</a>&nbsp;&nbsp;
- <a href="#M000024">lcs</a>&nbsp;&nbsp;
- <a href="#M000025">makediff</a>&nbsp;&nbsp;
- <a href="#M000028">match</a>&nbsp;&nbsp;
- <a href="#M000027">new</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
- <div id="constants-list">
- <h3 class="section-bar">Constants</h3>
-
- <div class="name-list">
- <table summary="Constants">
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">VERSION</td>
- <td>=</td>
- <td class="context-item-value">0.3</td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <div id="attribute-list">
- <h3 class="section-bar">Attributes</h3>
-
- <div class="name-list">
- <table>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">diffs</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">difftype</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000024" class="method-detail">
- <a name="M000024"></a>
-
- <div class="method-heading">
- <a href="#M000024" class="method-signature">
- <span class="method-name">lcs</span><span class="method-args">(a, b)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000024-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000024-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 5</span>
- 5: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">Diff</span>.<span class="ruby-identifier">lcs</span>(<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>)
- 6: <span class="ruby-identifier">astart</span> = <span class="ruby-value">0</span>
- 7: <span class="ruby-identifier">bstart</span> = <span class="ruby-value">0</span>
- 8: <span class="ruby-identifier">afinish</span> = <span class="ruby-identifier">a</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>
- 9: <span class="ruby-identifier">bfinish</span> = <span class="ruby-identifier">b</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>
-10: <span class="ruby-identifier">mvector</span> = []
-11:
-12: <span class="ruby-comment cmt"># First we prune off any common elements at the beginning</span>
-13: <span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">astart</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-identifier">afinish</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">bstart</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-identifier">afinish</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">a</span>[<span class="ruby-identifier">astart</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">b</span>[<span class="ruby-identifier">bstart</span>])
-14: <span class="ruby-identifier">mvector</span>[<span class="ruby-identifier">astart</span>] = <span class="ruby-identifier">bstart</span>
-15: <span class="ruby-identifier">astart</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-16: <span class="ruby-identifier">bstart</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-17: <span class="ruby-keyword kw">end</span>
-18:
-19: <span class="ruby-comment cmt"># now the end</span>
-20: <span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">astart</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-identifier">afinish</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">bstart</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-identifier">bfinish</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">a</span>[<span class="ruby-identifier">afinish</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">b</span>[<span class="ruby-identifier">bfinish</span>])
-21: <span class="ruby-identifier">mvector</span>[<span class="ruby-identifier">afinish</span>] = <span class="ruby-identifier">bfinish</span>
-22: <span class="ruby-identifier">afinish</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
-23: <span class="ruby-identifier">bfinish</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
-24: <span class="ruby-keyword kw">end</span>
-25:
-26: <span class="ruby-identifier">bmatches</span> = <span class="ruby-identifier">b</span>.<span class="ruby-identifier">reverse_hash</span>(<span class="ruby-identifier">bstart</span><span class="ruby-operator">..</span><span class="ruby-identifier">bfinish</span>)
-27: <span class="ruby-identifier">thresh</span> = []
-28: <span class="ruby-identifier">links</span> = []
-29:
-30: (<span class="ruby-identifier">astart</span><span class="ruby-operator">..</span><span class="ruby-identifier">afinish</span>).<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">aindex</span><span class="ruby-operator">|</span>
-31: <span class="ruby-identifier">aelem</span> = <span class="ruby-identifier">a</span>[<span class="ruby-identifier">aindex</span>]
-32: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">bmatches</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-identifier">aelem</span>
-33: <span class="ruby-identifier">k</span> = <span class="ruby-keyword kw">nil</span>
-34: <span class="ruby-identifier">bmatches</span>[<span class="ruby-identifier">aelem</span>].<span class="ruby-identifier">reverse</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">bindex</span><span class="ruby-operator">|</span>
-35: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">thresh</span>[<span class="ruby-identifier">k</span>] <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">bindex</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">thresh</span>[<span class="ruby-identifier">k</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>] <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">bindex</span>)
-36: <span class="ruby-identifier">thresh</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">bindex</span>
-37: <span class="ruby-keyword kw">else</span>
-38: <span class="ruby-identifier">k</span> = <span class="ruby-identifier">thresh</span>.<span class="ruby-identifier">replacenextlarger</span>(<span class="ruby-identifier">bindex</span>, <span class="ruby-identifier">k</span>)
-39: <span class="ruby-keyword kw">end</span>
-40: <span class="ruby-identifier">links</span>[<span class="ruby-identifier">k</span>] = [ (<span class="ruby-identifier">k</span><span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-operator">?</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">links</span>[<span class="ruby-identifier">k</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>], <span class="ruby-identifier">aindex</span>, <span class="ruby-identifier">bindex</span> ] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>
-41: }
-42: }
-43:
-44: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">thresh</span>.<span class="ruby-identifier">empty?</span>
-45: <span class="ruby-identifier">link</span> = <span class="ruby-identifier">links</span>[<span class="ruby-identifier">thresh</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>]
-46: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">link</span>
-47: <span class="ruby-identifier">mvector</span>[<span class="ruby-identifier">link</span>[<span class="ruby-value">1</span>]] = <span class="ruby-identifier">link</span>[<span class="ruby-value">2</span>]
-48: <span class="ruby-identifier">link</span> = <span class="ruby-identifier">link</span>[<span class="ruby-value">0</span>]
-49: <span class="ruby-keyword kw">end</span>
-50: <span class="ruby-keyword kw">end</span>
-51:
-52: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">mvector</span>
-53: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000027" class="method-detail">
- <a name="M000027"></a>
-
- <div class="method-heading">
- <a href="#M000027" class="method-signature">
- <span class="method-name">new</span><span class="method-args">(diffs_or_a, b = nil, isstring = nil)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000027-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000027-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 109</span>
-109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">diffs_or_a</span>, <span class="ruby-identifier">b</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">isstring</span> = <span class="ruby-keyword kw">nil</span>)
-110: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">nil?</span>
-111: <span class="ruby-ivar">@diffs</span> = <span class="ruby-identifier">diffs_or_a</span>
-112: <span class="ruby-ivar">@isstring</span> = <span class="ruby-identifier">isstring</span>
-113: <span class="ruby-keyword kw">else</span>
-114: <span class="ruby-ivar">@diffs</span> = []
-115: <span class="ruby-ivar">@curdiffs</span> = []
-116: <span class="ruby-identifier">makediff</span>(<span class="ruby-identifier">diffs_or_a</span>, <span class="ruby-identifier">b</span>)
-117: <span class="ruby-ivar">@difftype</span> = <span class="ruby-identifier">diffs_or_a</span>.<span class="ruby-identifier">class</span>
-118: <span class="ruby-keyword kw">end</span>
-119: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000031" class="method-detail">
- <a name="M000031"></a>
-
- <div class="method-heading">
- <a href="#M000031" class="method-signature">
- <span class="method-name">compact</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000031-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000031-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 134</span>
-134: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">compact</span>
-135: <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Diff</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">compactdiffs</span>)
-136: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000032" class="method-detail">
- <a name="M000032"></a>
-
- <div class="method-heading">
- <a href="#M000032" class="method-signature">
- <span class="method-name">compact!</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000032-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000032-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 138</span>
-138: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">compact!</span>
-139: <span class="ruby-ivar">@diffs</span> = <span class="ruby-identifier">compactdiffs</span>
-140: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000026" class="method-detail">
- <a name="M000026"></a>
-
- <div class="method-heading">
- <a href="#M000026" class="method-signature">
- <span class="method-name">compactdiffs</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000026-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000026-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 84</span>
- 84: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">compactdiffs</span>
- 85: <span class="ruby-identifier">diffs</span> = []
- 86: <span class="ruby-ivar">@diffs</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">df</span><span class="ruby-operator">|</span>
- 87: <span class="ruby-identifier">i</span> = <span class="ruby-value">0</span>
- 88: <span class="ruby-identifier">curdiff</span> = []
- 89: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">df</span>.<span class="ruby-identifier">length</span>
- 90: <span class="ruby-identifier">whot</span> = <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">0</span>]
- 91: <span class="ruby-identifier">s</span> = <span class="ruby-ivar">@isstring</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">2</span>].<span class="ruby-identifier">chr</span> <span class="ruby-operator">:</span> [<span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">2</span>]]
- 92: <span class="ruby-identifier">p</span> = <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">1</span>]
- 93: <span class="ruby-identifier">last</span> = <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">1</span>]
- 94: <span class="ruby-identifier">i</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
- 95: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">whot</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">last</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>
- 96: <span class="ruby-identifier">s</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">2</span>]
- 97: <span class="ruby-identifier">last</span> = <span class="ruby-identifier">df</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">1</span>]
- 98: <span class="ruby-identifier">i</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
- 99: <span class="ruby-keyword kw">end</span>
-100: <span class="ruby-identifier">curdiff</span>.<span class="ruby-identifier">push</span> [<span class="ruby-identifier">whot</span>, <span class="ruby-identifier">p</span>, <span class="ruby-identifier">s</span>]
-101: <span class="ruby-keyword kw">end</span>
-102: <span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">push</span> <span class="ruby-identifier">curdiff</span>
-103: }
-104: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">diffs</span>
-105: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000029" class="method-detail">
- <a name="M000029"></a>
-
- <div class="method-heading">
- <a href="#M000029" class="method-signature">
- <span class="method-name">discarda</span><span class="method-args">(i, elem)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000029-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000029-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 126</span>
-126: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">discarda</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">elem</span>)
-127: <span class="ruby-ivar">@curdiffs</span>.<span class="ruby-identifier">push</span> [<span class="ruby-value str">'-'</span>, <span class="ruby-identifier">i</span>, <span class="ruby-identifier">elem</span>]
-128: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000030" class="method-detail">
- <a name="M000030"></a>
-
- <div class="method-heading">
- <a href="#M000030" class="method-signature">
- <span class="method-name">discardb</span><span class="method-args">(i, elem)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000030-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000030-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 130</span>
-130: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">discardb</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">elem</span>)
-131: <span class="ruby-ivar">@curdiffs</span>.<span class="ruby-identifier">push</span> [<span class="ruby-value str">'+'</span>, <span class="ruby-identifier">i</span>, <span class="ruby-identifier">elem</span>]
-132: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000033" class="method-detail">
- <a name="M000033"></a>
-
- <div class="method-heading">
- <a href="#M000033" class="method-signature">
- <span class="method-name">inspect</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000033-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 142</span>
-142: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inspect</span>
-143: <span class="ruby-ivar">@diffs</span>.<span class="ruby-identifier">inspect</span>
-144: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000025" class="method-detail">
- <a name="M000025"></a>
-
- <div class="method-heading">
- <a href="#M000025" class="method-signature">
- <span class="method-name">makediff</span><span class="method-args">(a, b)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000025-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000025-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 55</span>
-55: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">makediff</span>(<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>)
-56: <span class="ruby-identifier">mvector</span> = <span class="ruby-constant">Diff</span>.<span class="ruby-identifier">lcs</span>(<span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span>)
-57: <span class="ruby-identifier">ai</span> = <span class="ruby-identifier">bi</span> = <span class="ruby-value">0</span>
-58: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">ai</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">mvector</span>.<span class="ruby-identifier">length</span>
-59: <span class="ruby-identifier">bline</span> = <span class="ruby-identifier">mvector</span>[<span class="ruby-identifier">ai</span>]
-60: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">bline</span>
-61: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">bi</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">bline</span>
-62: <span class="ruby-identifier">discardb</span>(<span class="ruby-identifier">bi</span>, <span class="ruby-identifier">b</span>[<span class="ruby-identifier">bi</span>])
-63: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-64: <span class="ruby-keyword kw">end</span>
-65: <span class="ruby-identifier">match</span>(<span class="ruby-identifier">ai</span>, <span class="ruby-identifier">bi</span>)
-66: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-67: <span class="ruby-keyword kw">else</span>
-68: <span class="ruby-identifier">discarda</span>(<span class="ruby-identifier">ai</span>, <span class="ruby-identifier">a</span>[<span class="ruby-identifier">ai</span>])
-69: <span class="ruby-keyword kw">end</span>
-70: <span class="ruby-identifier">ai</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-71: <span class="ruby-keyword kw">end</span>
-72: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">ai</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">a</span>.<span class="ruby-identifier">length</span>
-73: <span class="ruby-identifier">discarda</span>(<span class="ruby-identifier">ai</span>, <span class="ruby-identifier">a</span>[<span class="ruby-identifier">ai</span>])
-74: <span class="ruby-identifier">ai</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-75: <span class="ruby-keyword kw">end</span>
-76: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">bi</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">length</span>
-77: <span class="ruby-identifier">discardb</span>(<span class="ruby-identifier">bi</span>, <span class="ruby-identifier">b</span>[<span class="ruby-identifier">bi</span>])
-78: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-79: <span class="ruby-keyword kw">end</span>
-80: <span class="ruby-identifier">match</span>(<span class="ruby-identifier">ai</span>, <span class="ruby-identifier">bi</span>)
-81: <span class="ruby-value">1</span>
-82: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000028" class="method-detail">
- <a name="M000028"></a>
-
- <div class="method-heading">
- <a href="#M000028" class="method-signature">
- <span class="method-name">match</span><span class="method-args">(ai, bi)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000028-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000028-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 121</span>
-121: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">ai</span>, <span class="ruby-identifier">bi</span>)
-122: <span class="ruby-ivar">@diffs</span>.<span class="ruby-identifier">push</span> <span class="ruby-ivar">@curdiffs</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@curdiffs</span>.<span class="ruby-identifier">empty?</span>
-123: <span class="ruby-ivar">@curdiffs</span> = []
-124: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Diffable.html b/doc/app/classes/Diffable.html
deleted file mode 100644
index 79190bd..0000000
--- a/doc/app/classes/Diffable.html
+++ /dev/null
@@ -1,284 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Diffable</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Diffable</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/diff_rb.html">
- lib/diff.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000048">diff</a>&nbsp;&nbsp;
- <a href="#M000051">patch</a>&nbsp;&nbsp;
- <a href="#M000050">replacenextlarger</a>&nbsp;&nbsp;
- <a href="#M000049">reverse_hash</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000048" class="method-detail">
- <a name="M000048"></a>
-
- <div class="method-heading">
- <a href="#M000048" class="method-signature">
- <span class="method-name">diff</span><span class="method-args">(b)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000048-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000048-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 149</span>
-149: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">diff</span>(<span class="ruby-identifier">b</span>)
-150: <span class="ruby-constant">Diff</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">b</span>)
-151: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000051" class="method-detail">
- <a name="M000051"></a>
-
- <div class="method-heading">
- <a href="#M000051" class="method-signature">
- <span class="method-name">patch</span><span class="method-args">(diff)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000051-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000051-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 196</span>
-196: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">patch</span>(<span class="ruby-identifier">diff</span>)
-197: <span class="ruby-identifier">newary</span> = <span class="ruby-keyword kw">nil</span>
-198: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">diff</span>.<span class="ruby-identifier">difftype</span> <span class="ruby-operator">==</span> <span class="ruby-constant">String</span>
-199: <span class="ruby-identifier">newary</span> = <span class="ruby-identifier">diff</span>.<span class="ruby-identifier">difftype</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">''</span>)
-200: <span class="ruby-keyword kw">else</span>
-201: <span class="ruby-identifier">newary</span> = <span class="ruby-identifier">diff</span>.<span class="ruby-identifier">difftype</span>.<span class="ruby-identifier">new</span>
-202: <span class="ruby-keyword kw">end</span>
-203: <span class="ruby-identifier">ai</span> = <span class="ruby-value">0</span>
-204: <span class="ruby-identifier">bi</span> = <span class="ruby-value">0</span>
-205: <span class="ruby-identifier">diff</span>.<span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">d</span><span class="ruby-operator">|</span>
-206: <span class="ruby-identifier">d</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">mod</span><span class="ruby-operator">|</span>
-207: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">mod</span>[<span class="ruby-value">0</span>]
-208: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'-'</span>
-209: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">ai</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">mod</span>[<span class="ruby-value">1</span>]
-210: <span class="ruby-identifier">newary</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">ai</span>]
-211: <span class="ruby-identifier">ai</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-212: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-213: <span class="ruby-keyword kw">end</span>
-214: <span class="ruby-identifier">ai</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-215: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'+'</span>
-216: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">bi</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">mod</span>[<span class="ruby-value">1</span>]
-217: <span class="ruby-identifier">newary</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">ai</span>]
-218: <span class="ruby-identifier">ai</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-219: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-220: <span class="ruby-keyword kw">end</span>
-221: <span class="ruby-identifier">newary</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">mod</span>[<span class="ruby-value">2</span>]
-222: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-223: <span class="ruby-keyword kw">else</span>
-224: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Unknown diff action&quot;</span>
-225: <span class="ruby-keyword kw">end</span>
-226: }
-227: }
-228: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">ai</span> <span class="ruby-operator">&lt;</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">length</span>
-229: <span class="ruby-identifier">newary</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">ai</span>]
-230: <span class="ruby-identifier">ai</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-231: <span class="ruby-identifier">bi</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-232: <span class="ruby-keyword kw">end</span>
-233: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">newary</span>
-234: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000050" class="method-detail">
- <a name="M000050"></a>
-
- <div class="method-heading">
- <a href="#M000050" class="method-signature">
- <span class="method-name">replacenextlarger</span><span class="method-args">(value, high = nil)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000050-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000050-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 169</span>
-169: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">replacenextlarger</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">high</span> = <span class="ruby-keyword kw">nil</span>)
-170: <span class="ruby-identifier">high</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">length</span>
-171: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">value</span> <span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">self</span>[<span class="ruby-value">-1</span>]
-172: <span class="ruby-identifier">push</span> <span class="ruby-identifier">value</span>
-173: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">high</span>
-174: <span class="ruby-keyword kw">end</span>
-175: <span class="ruby-comment cmt"># binary search for replacement point</span>
-176: <span class="ruby-identifier">low</span> = <span class="ruby-value">0</span>
-177: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">low</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">high</span>
-178: <span class="ruby-identifier">index</span> = (<span class="ruby-identifier">high</span><span class="ruby-operator">+</span><span class="ruby-identifier">low</span>)<span class="ruby-operator">/</span><span class="ruby-value">2</span>
-179: <span class="ruby-identifier">found</span> = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">index</span>]
-180: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">value</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">found</span>
-181: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">value</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">found</span>
-182: <span class="ruby-identifier">low</span> = <span class="ruby-identifier">index</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
-183: <span class="ruby-keyword kw">else</span>
-184: <span class="ruby-identifier">high</span> = <span class="ruby-identifier">index</span>
-185: <span class="ruby-keyword kw">end</span>
-186: <span class="ruby-keyword kw">end</span>
-187:
-188: <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">low</span>] = <span class="ruby-identifier">value</span>
-189: <span class="ruby-comment cmt"># $stderr &lt;&lt; &quot;replace #{value} : 0/#{low}/#{init_high} (#{steps} steps) (#{init_high-low} off )\n&quot;</span>
-190: <span class="ruby-comment cmt"># $stderr.puts self.inspect</span>
-191: <span class="ruby-comment cmt">#gets</span>
-192: <span class="ruby-comment cmt">#p length - low</span>
-193: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">low</span>
-194: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000049" class="method-detail">
- <a name="M000049"></a>
-
- <div class="method-heading">
- <a href="#M000049" class="method-signature">
- <span class="method-name">reverse_hash</span><span class="method-args">(range = (0...self.length))</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Create a hash that maps elements of the array to arrays of indices where
-the elements are found.
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000049-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000049-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/diff.rb, line 156</span>
-156: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reverse_hash</span>(<span class="ruby-identifier">range</span> = (<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">length</span>))
-157: <span class="ruby-identifier">revmap</span> = {}
-158: <span class="ruby-identifier">range</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
-159: <span class="ruby-identifier">elem</span> = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">i</span>]
-160: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">revmap</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-identifier">elem</span>
-161: <span class="ruby-identifier">revmap</span>[<span class="ruby-identifier">elem</span>].<span class="ruby-identifier">push</span> <span class="ruby-identifier">i</span>
-162: <span class="ruby-keyword kw">else</span>
-163: <span class="ruby-identifier">revmap</span>[<span class="ruby-identifier">elem</span>] = [<span class="ruby-identifier">i</span>]
-164: <span class="ruby-keyword kw">end</span>
-165: }
-166: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">revmap</span>
-167: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsa.html b/doc/app/classes/Glsa.html
deleted file mode 100644
index 60fbc7a..0000000
--- a/doc/app/classes/Glsa.html
+++ /dev/null
@@ -1,271 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Glsa</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Glsa</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/models/glsa_rb.html">
- app/models/glsa.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActiveRecord::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-GLSA model
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000019">last_revision</a>&nbsp;&nbsp;
- <a href="#M000021">new_request</a>&nbsp;&nbsp;
- <a href="#M000020">next_revid</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
- <div id="includes">
- <h3 class="section-bar">Included Modules</h3>
-
- <div id="includes-list">
- <span class="include-name"><a href="Authentication.html">Authentication</a></span>
- </div>
- </div>
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000021" class="method-detail">
- <a name="M000021"></a>
-
- <div class="method-heading">
- <a href="#M000021" class="method-signature">
- <span class="method-name">new_request</span><span class="method-args">(title, bugs, comment, access, user)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Files a new GLSA request
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000021-source">
-<pre>
- <span class="ruby-comment cmt"># File app/models/glsa.rb, line 41</span>
-41: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">new_request</span>(<span class="ruby-identifier">title</span>, <span class="ruby-identifier">bugs</span>, <span class="ruby-identifier">comment</span>, <span class="ruby-identifier">access</span>, <span class="ruby-identifier">user</span>)
-42: <span class="ruby-identifier">glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">new</span>
-43: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">requester</span> = <span class="ruby-identifier">user</span>
-44: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">glsa_id</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">MD5</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-identifier">title</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">to_s</span>)[<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-value">10</span>]
-45: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">restricted</span> = (<span class="ruby-identifier">access</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;confidential&quot;</span>)
-46: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">status</span> = <span class="ruby-value str">&quot;request&quot;</span>
-47:
-48: <span class="ruby-keyword kw">begin</span>
-49: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">save!</span>
-50: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-51: <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while saving the GLSA object: #{e.message}&quot;</span>
-52: <span class="ruby-keyword kw">end</span>
-53:
-54: <span class="ruby-identifier">revision</span> = <span class="ruby-constant">Revision</span>.<span class="ruby-identifier">new</span>
-55: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">revid</span> = <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">next_revid</span>
-56: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">glsa</span> = <span class="ruby-identifier">glsa</span>
-57: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">title</span> = <span class="ruby-identifier">title</span>
-58: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">user</span> = <span class="ruby-identifier">user</span>
-59:
-60: <span class="ruby-keyword kw">begin</span>
-61: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">save!</span>
-62: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-63: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">delete</span>
-64: <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while saving Revision object: #{e.message}&quot;</span>
-65: <span class="ruby-keyword kw">end</span>
-66:
-67: <span class="ruby-identifier">bug_ids</span> = <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">bugs</span>)
-68:
-69: <span class="ruby-identifier">bug_ids</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
-70: <span class="ruby-keyword kw">begin</span>
-71: <span class="ruby-identifier">bugzie</span> = <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug</span>)
-72: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-73: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">delete</span>
-74: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">delete</span>
-75: <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while loading bug id #{bug}: #{e.message}&quot;</span>
-76: <span class="ruby-keyword kw">end</span>
-77:
-78: <span class="ruby-keyword kw">begin</span>
-79: <span class="ruby-identifier">b</span> = <span class="ruby-constant">Bug</span>.<span class="ruby-identifier">new</span>
-80: <span class="ruby-identifier">b</span>.<span class="ruby-identifier">revision</span> = <span class="ruby-identifier">revision</span>
-81: <span class="ruby-identifier">b</span>.<span class="ruby-identifier">bug_id</span> = <span class="ruby-identifier">bugzie</span>.<span class="ruby-identifier">bug_id</span>.<span class="ruby-identifier">to_i</span>
-82: <span class="ruby-identifier">b</span>.<span class="ruby-identifier">title</span> = <span class="ruby-identifier">bugzie</span>.<span class="ruby-identifier">summary</span>
-83: <span class="ruby-identifier">b</span>.<span class="ruby-identifier">save!</span>
-84: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-85: <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">delete</span>
-86: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">delete</span>
-87: <span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">&quot;Error while saving Bug object: #{e.message}&quot;</span>
-88: <span class="ruby-keyword kw">end</span>
-89: <span class="ruby-keyword kw">end</span>
-90:
-91: <span class="ruby-identifier">glsa</span>
-92: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000019" class="method-detail">
- <a name="M000019"></a>
-
- <div class="method-heading">
- <a href="#M000019" class="method-signature">
- <span class="method-name">last_revision</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns the last revision object, referring to the current state of things
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000019-source">
-<pre>
- <span class="ruby-comment cmt"># File app/models/glsa.rb, line 27</span>
-27: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">last_revision</span>
-28: <span class="ruby-ivar">@last_revision</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:first</span>, <span class="ruby-identifier">:order</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;revid DESC&quot;</span>)
-29: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000020" class="method-detail">
- <a name="M000020"></a>
-
- <div class="method-heading">
- <a href="#M000020" class="method-signature">
- <span class="method-name">next_revid</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Returns the next revision ID to be given for this GLSA
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000020-source">
-<pre>
- <span class="ruby-comment cmt"># File app/models/glsa.rb, line 32</span>
-32: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">next_revid</span>
-33: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">rev</span> = <span class="ruby-identifier">last_revision</span>)
-34: <span class="ruby-identifier">rev</span>.<span class="ruby-identifier">revid</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
-35: <span class="ruby-keyword kw">else</span>
-36: <span class="ruby-value">1</span>
-37: <span class="ruby-keyword kw">end</span>
-38: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/GlsaController.html b/doc/app/classes/GlsaController.html
deleted file mode 100644
index 72b95fa..0000000
--- a/doc/app/classes/GlsaController.html
+++ /dev/null
@@ -1,450 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: GlsaController</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">GlsaController</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/controllers/glsa_controller_rb.html">
- app/controllers/glsa_controller.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- <a href="ApplicationController.html">
- ApplicationController
- </a>
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-GLSA controller
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000009">comment</a>&nbsp;&nbsp;
- <a href="#M000003">create</a>&nbsp;&nbsp;
- <a href="#M000008">destroy</a>&nbsp;&nbsp;
- <a href="#M000007">diff</a>&nbsp;&nbsp;
- <a href="#M000005">edit</a>&nbsp;&nbsp;
- <a href="#M000001">index</a>&nbsp;&nbsp;
- <a href="#M000002">new</a>&nbsp;&nbsp;
- <a href="#M000004">show</a>&nbsp;&nbsp;
- <a href="#M000006">update</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000009" class="method-detail">
- <a name="M000009"></a>
-
- <div class="method-heading">
- <a href="#M000009" class="method-signature">
- <span class="method-name">comment</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000009-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000009-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 153</span>
-153: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">comment</span>
-154: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000003" class="method-detail">
- <a name="M000003"></a>
-
- <div class="method-heading">
- <a href="#M000003" class="method-signature">
- <span class="method-name">create</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000003-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000003-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 45</span>
-45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">create</span>
-46: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:what</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;request&quot;</span>
-47: <span class="ruby-keyword kw">begin</span>
-48: <span class="ruby-identifier">glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">new_request</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:title</span>], <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:bugs</span>], <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:comment</span>], <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:access</span>], <span class="ruby-identifier">current_user</span>)
-49: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:notice</span>] = <span class="ruby-node">&quot;Successfully created GLSA #{glsa.glsa_id}&quot;</span>
-50: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;show&quot;</span>, <span class="ruby-identifier">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">glsa</span>.<span class="ruby-identifier">id</span>
-51: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-52: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>
-53: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;new-request&quot;</span>
-54: <span class="ruby-keyword kw">end</span>
-55: <span class="ruby-keyword kw">end</span>
-56: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000008" class="method-detail">
- <a name="M000008"></a>
-
- <div class="method-heading">
- <a href="#M000008" class="method-signature">
- <span class="method-name">destroy</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000008-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000008-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 150</span>
-150: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">destroy</span>
-151: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000007" class="method-detail">
- <a name="M000007"></a>
-
- <div class="method-heading">
- <a href="#M000007" class="method-signature">
- <span class="method-name">diff</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000007-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000007-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 128</span>
-128: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">diff</span>
-129: <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
-130:
-131: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">nil?</span>
-132: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;GLSA not found.&quot;</span>
-133: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;index&quot;</span>
-134: <span class="ruby-keyword kw">return</span>
-135: <span class="ruby-keyword kw">end</span>
-136:
-137: <span class="ruby-ivar">@rev_from</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:from</span>])
-138: <span class="ruby-ivar">@rev_to</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:to</span>])
-139:
-140: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rev_from</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@rev_to</span>.<span class="ruby-identifier">nil?</span>
-141: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;Invalid revision given&quot;</span>
-142: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;index&quot;</span>
-143: <span class="ruby-keyword kw">return</span>
-144: <span class="ruby-keyword kw">end</span>
-145:
-146: <span class="ruby-ivar">@diffs</span> = {}
-147: <span class="ruby-ivar">@diff</span> = <span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">Diff</span><span class="ruby-operator">::</span><span class="ruby-constant">DiffContainer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@rev_from</span>.<span class="ruby-identifier">description</span>, <span class="ruby-ivar">@rev_to</span>.<span class="ruby-identifier">description</span>)
-148: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000005" class="method-detail">
- <a name="M000005"></a>
-
- <div class="method-heading">
- <a href="#M000005" class="method-signature">
- <span class="method-name">edit</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000005-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000005-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 72</span>
-72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">edit</span>
-73: <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
-74: <span class="ruby-ivar">@rev</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span>
-75:
-76: <span class="ruby-comment cmt"># Reset added bugs in the meantime</span>
-77: <span class="ruby-identifier">session</span>[<span class="ruby-identifier">:addbugs</span>] <span class="ruby-operator">||=</span> []
-78: <span class="ruby-identifier">session</span>[<span class="ruby-identifier">:addbugs</span>][<span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">id</span>] = []
-79: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000001" class="method-detail">
- <a name="M000001"></a>
-
- <div class="method-heading">
- <a href="#M000001" class="method-signature">
- <span class="method-name">index</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000001-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000001-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 16</span>
-16: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">index</span>
-17: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:show</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;requests&quot;</span>
-18: <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>)
-19: <span class="ruby-ivar">@pageID</span> = <span class="ruby-value str">&quot;requests&quot;</span>
-20: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:show</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;drafts&quot;</span>
-21: <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>)
-22: <span class="ruby-ivar">@pageID</span> = <span class="ruby-value str">&quot;drafts&quot;</span>
-23: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:show</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;archive&quot;</span>
-24: <span class="ruby-ivar">@glsas</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>)
-25: <span class="ruby-ivar">@pageID</span> = <span class="ruby-value str">&quot;archive&quot;</span>
-26: <span class="ruby-keyword kw">else</span>
-27: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;Don't know what to show you.&quot;</span>
-28: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:controller</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;index&quot;</span>, <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;index&quot;</span>
-29: <span class="ruby-keyword kw">end</span>
-30: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000002" class="method-detail">
- <a name="M000002"></a>
-
- <div class="method-heading">
- <a href="#M000002" class="method-signature">
- <span class="method-name">new</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000002-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000002-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 32</span>
-32: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">new</span>
-33: <span class="ruby-ivar">@pageID</span> = <span class="ruby-value str">&quot;new&quot;</span>
-34: <span class="ruby-ivar">@pageTitle</span> = <span class="ruby-value str">&quot;New GLSA&quot;</span>
-35:
-36: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:what</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;request&quot;</span>
-37: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;new-request&quot;</span>
-38: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:what</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;draft&quot;</span>
-39: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;new-draft&quot;</span>
-40: <span class="ruby-keyword kw">else</span>
-41: <span class="ruby-identifier">render</span>
-42: <span class="ruby-keyword kw">end</span>
-43: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000004" class="method-detail">
- <a name="M000004"></a>
-
- <div class="method-heading">
- <a href="#M000004" class="method-signature">
- <span class="method-name">show</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000004-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000004-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 58</span>
-58: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">show</span>
-59: <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
-60: <span class="ruby-ivar">@rev</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:rev_id</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-value">? </span><span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">last_revision</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">revisions</span>.<span class="ruby-identifier">find_by_revid</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:rev_id</span>])
-61:
-62: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;[debug] id = %d, rev_id = %d&quot;</span> <span class="ruby-operator">%</span> [ <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>], <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:rev_id</span>] ]
-63:
-64: <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">wants</span><span class="ruby-operator">|</span>
-65: <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">html</span> { <span class="ruby-identifier">render</span> }
-66: <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">xml</span> { }
-67: <span class="ruby-identifier">wants</span>.<span class="ruby-identifier">txt</span> { <span class="ruby-identifier">render</span> <span class="ruby-identifier">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;text to render...&quot;</span> }
-68: <span class="ruby-keyword kw">end</span>
-69:
-70: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000006" class="method-detail">
- <a name="M000006"></a>
-
- <div class="method-heading">
- <a href="#M000006" class="method-signature">
- <span class="method-name">update</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000006-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000006-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/glsa_controller.rb, line 81</span>
- 81: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">update</span>
- 82: <span class="ruby-ivar">@glsa</span> = <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
- 83:
- 84: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">nil?</span>
- 85: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;Unknown GLSA ID&quot;</span>
- 86: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;index&quot;</span>
- 87: <span class="ruby-keyword kw">return</span>
- 88: <span class="ruby-keyword kw">end</span>
- 89:
- 90: <span class="ruby-comment cmt"># GLSA object</span>
- 91: <span class="ruby-comment cmt"># The first editor is submitter</span>
- 92: <span class="ruby-comment cmt"># TODO: Maybe take a better condition (adding bugs would make so. the submitter)</span>
- 93: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">submitter</span>.<span class="ruby-identifier">nil?</span>
- 94: <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">submitter</span> = <span class="ruby-identifier">current_user</span>
- 95: <span class="ruby-keyword kw">end</span>
- 96:
- 97: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">save</span>
- 98: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;Errors occurred while saving the GLSA object&quot;</span>
- 99: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;edit2&quot;</span>
-100: <span class="ruby-keyword kw">end</span>
-101:
-102: <span class="ruby-identifier">revision</span> = <span class="ruby-constant">Revision</span>.<span class="ruby-identifier">new</span>
-103: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">revid</span> = <span class="ruby-ivar">@glsa</span>.<span class="ruby-identifier">next_revid</span>
-104: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">glsa</span> = <span class="ruby-ivar">@glsa</span>
-105: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">user</span> = <span class="ruby-identifier">current_user</span>
-106: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">title</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:title</span>]
-107: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">synopsis</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:synopsis</span>]
-108: <span class="ruby-comment cmt"># TODO: secure</span>
-109: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">access</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:access</span>]
-110: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">product</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:keyword</span>]
-111: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">description</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:description</span>]
-112: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">background</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:background</span>]
-113: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">impact</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:impact</span>]
-114: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">workaround</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:workaround</span>]
-115: <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">resolution</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">:resolution</span>]
-116:
-117: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">revision</span>.<span class="ruby-identifier">save</span>
-118: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-value str">&quot;Errors occurred while saving the GLSA object&quot;</span>
-119: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;edit2&quot;</span>
-120: <span class="ruby-keyword kw">end</span>
-121:
-122: <span class="ruby-comment cmt"># TODO: bugs, packages, references</span>
-123: <span class="ruby-identifier">flash</span>[<span class="ruby-identifier">:notice</span>] = <span class="ruby-value str">&quot;Saving was successful.&quot;</span>
-124: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">:action</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'show'</span>, <span class="ruby-identifier">:id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@glsa</span>
-125:
-126: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/GlsaHelper.html b/doc/app/classes/GlsaHelper.html
deleted file mode 100644
index 7f5fa0f..0000000
--- a/doc/app/classes/GlsaHelper.html
+++ /dev/null
@@ -1,227 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: GlsaHelper</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">GlsaHelper</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/helpers/glsa_helper_rb.html">
- app/helpers/glsa_helper.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-GLSA Helper
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000055">glsa_content</a>&nbsp;&nbsp;
- <a href="#M000057">html_diff</a>&nbsp;&nbsp;
- <a href="#M000056">lastrev_content</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000055" class="method-detail">
- <a name="M000055"></a>
-
- <div class="method-heading">
- <a href="#M000055" class="method-signature">
- <span class="method-name">glsa_content</span><span class="method-args">(g, field)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000055-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000055-source">
-<pre>
- <span class="ruby-comment cmt"># File app/helpers/glsa_helper.rb, line 16</span>
-16: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">glsa_content</span>(<span class="ruby-identifier">g</span>, <span class="ruby-identifier">field</span>)
-17: (<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">field</span>.<span class="ruby-identifier">to_sym</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>]) <span class="ruby-operator">||</span> <span class="ruby-identifier">g</span>[<span class="ruby-identifier">field</span>]
-18: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000057" class="method-detail">
- <a name="M000057"></a>
-
- <div class="method-heading">
- <a href="#M000057" class="method-signature">
- <span class="method-name">html_diff</span><span class="method-args">(wdiff)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000057-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000057-source">
-<pre>
- <span class="ruby-comment cmt"># File app/helpers/glsa_helper.rb, line 24</span>
-24: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">html_diff</span>(<span class="ruby-identifier">wdiff</span>)
-25: <span class="ruby-identifier">words</span> = <span class="ruby-identifier">wdiff</span>.<span class="ruby-identifier">words</span>.<span class="ruby-identifier">collect</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">word</span><span class="ruby-operator">|</span> <span class="ruby-identifier">h</span>(<span class="ruby-identifier">word</span>) }
-26: <span class="ruby-identifier">words_add</span> = <span class="ruby-value">0</span>
-27: <span class="ruby-identifier">words_del</span> = <span class="ruby-value">0</span>
-28: <span class="ruby-identifier">dels</span> = <span class="ruby-value">0</span>
-29: <span class="ruby-identifier">del_off</span> = <span class="ruby-value">0</span>
-30: <span class="ruby-identifier">wdiff</span>.<span class="ruby-identifier">diff</span>.<span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">diff</span><span class="ruby-operator">|</span>
-31: <span class="ruby-identifier">add_at</span> = <span class="ruby-keyword kw">nil</span>
-32: <span class="ruby-identifier">add_to</span> = <span class="ruby-keyword kw">nil</span>
-33: <span class="ruby-identifier">del_at</span> = <span class="ruby-keyword kw">nil</span>
-34: <span class="ruby-identifier">deleted</span> = <span class="ruby-value str">&quot;&quot;</span>
-35: <span class="ruby-identifier">diff</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
-36: <span class="ruby-identifier">pos</span> = <span class="ruby-identifier">change</span>[<span class="ruby-value">1</span>]
-37: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">change</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;+&quot;</span>
-38: <span class="ruby-identifier">add_at</span> = <span class="ruby-identifier">pos</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">dels</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">add_at</span>
-39: <span class="ruby-identifier">add_to</span> = <span class="ruby-identifier">pos</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">dels</span>
-40: <span class="ruby-identifier">words_add</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-41: <span class="ruby-keyword kw">else</span>
-42: <span class="ruby-identifier">del_at</span> = <span class="ruby-identifier">pos</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">del_at</span>
-43: <span class="ruby-identifier">deleted</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">change</span>[<span class="ruby-value">2</span>]
-44: <span class="ruby-identifier">words_del</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-45: <span class="ruby-keyword kw">end</span>
-46: <span class="ruby-keyword kw">end</span>
-47: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">add_at</span>
-48: <span class="ruby-identifier">words</span>[<span class="ruby-identifier">add_at</span>] = <span class="ruby-value str">'&lt;span class=&quot;diff_in&quot;&gt;'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">words</span>[<span class="ruby-identifier">add_at</span>]
-49: <span class="ruby-identifier">words</span>[<span class="ruby-identifier">add_to</span>] = <span class="ruby-identifier">words</span>[<span class="ruby-identifier">add_to</span>] <span class="ruby-operator">+</span> <span class="ruby-value str">'&lt;/span&gt;'</span>
-50: <span class="ruby-keyword kw">end</span>
-51: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">del_at</span>
-52: <span class="ruby-identifier">words</span>.<span class="ruby-identifier">insert</span> <span class="ruby-identifier">del_at</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">del_off</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">dels</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">words_add</span>, <span class="ruby-value str">'&lt;span class=&quot;diff_out&quot;&gt;'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">deleted</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'&lt;/span&gt;'</span>
-53: <span class="ruby-identifier">dels</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
-54: <span class="ruby-identifier">del_off</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">words_del</span>
-55: <span class="ruby-identifier">words_del</span> = <span class="ruby-value">0</span>
-56: <span class="ruby-keyword kw">end</span>
-57: <span class="ruby-keyword kw">end</span>
-58: <span class="ruby-identifier">simple_format_without_paragraph</span>(<span class="ruby-identifier">words</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; &quot;</span>))
-59: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000056" class="method-detail">
- <a name="M000056"></a>
-
- <div class="method-heading">
- <a href="#M000056" class="method-signature">
- <span class="method-name">lastrev_content</span><span class="method-args">(g, field)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000056-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000056-source">
-<pre>
- <span class="ruby-comment cmt"># File app/helpers/glsa_helper.rb, line 20</span>
-20: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">lastrev_content</span>(<span class="ruby-identifier">g</span>, <span class="ruby-identifier">field</span>)
-21: (<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>][<span class="ruby-identifier">field</span>.<span class="ruby-identifier">to_sym</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:glsa</span>]) <span class="ruby-operator">||</span> <span class="ruby-identifier">g</span>.<span class="ruby-identifier">last_revision</span>[<span class="ruby-identifier">field</span>]
-22: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker.html b/doc/app/classes/Glsamaker.html
deleted file mode 100644
index b20a1b0..0000000
--- a/doc/app/classes/Glsamaker.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Glsamaker</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Glsamaker</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/glsamaker/bugs_rb.html">
- lib/glsamaker/bugs.rb
- </a>
- <br />
- <a href="../files/lib/glsamaker/diff_rb.html">
- lib/glsamaker/diff.rb
- </a>
- <br />
- <a href="../files/lib/glsamaker/http_rb.html">
- lib/glsamaker/http.rb
- </a>
- <br />
- <a href="../files/lib/glsamaker/portage_rb.html">
- lib/glsamaker/portage.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-GLSAMaker library
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
- <div id="class-list">
- <h3 class="section-bar">Classes and Modules</h3>
-
- Module <a href="Glsamaker/Bugs.html" class="link">Glsamaker::Bugs</a><br />
-Module <a href="Glsamaker/Diff.html" class="link">Glsamaker::Diff</a><br />
-Module <a href="Glsamaker/HTTP.html" class="link">Glsamaker::HTTP</a><br />
-Module <a href="Glsamaker/Portage.html" class="link">Glsamaker::Portage</a><br />
-
- </div>
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker/Bugs.html b/doc/app/classes/Glsamaker/Bugs.html
deleted file mode 100644
index d94b36f..0000000
--- a/doc/app/classes/Glsamaker/Bugs.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Glsamaker::Bugs</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Glsamaker::Bugs</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/glsamaker/bugs_rb.html">
- lib/glsamaker/bugs.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker/Diff.html b/doc/app/classes/Glsamaker/Diff.html
deleted file mode 100644
index ca983d7..0000000
--- a/doc/app/classes/Glsamaker/Diff.html
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Glsamaker::Diff</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Glsamaker::Diff</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/glsamaker/diff_rb.html">
- lib/glsamaker/diff.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Module providing diff support
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
- <div id="class-list">
- <h3 class="section-bar">Classes and Modules</h3>
-
- Class <a href="Diff/DiffContainer.html" class="link">Glsamaker::Diff::DiffContainer</a><br />
-
- </div>
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker/Diff/DiffContainer.html b/doc/app/classes/Glsamaker/Diff/DiffContainer.html
deleted file mode 100644
index c27e2aa..0000000
--- a/doc/app/classes/Glsamaker/Diff/DiffContainer.html
+++ /dev/null
@@ -1,186 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Glsamaker::Diff::DiffContainer</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Glsamaker::Diff::DiffContainer</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../../files/lib/glsamaker/diff_rb.html">
- lib/glsamaker/diff.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="DiffContainer.html">DiffContainer</a> represents a set of diffs
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000066">new</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
- <div id="attribute-list">
- <h3 class="section-bar">Attributes</h3>
-
- <div class="name-list">
- <table>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">content_from</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">content_to</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">diff</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- <tr class="top-aligned-row context-row">
- <td class="context-item-name">words</td>
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
- <td class="context-item-desc"></td>
- </tr>
- </table>
- </div>
- </div>
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000066" class="method-detail">
- <a name="M000066"></a>
-
- <div class="method-heading">
- <a href="#M000066" class="method-signature">
- <span class="method-name">new</span><span class="method-args">(content_to, content_from)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000066-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000066-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/diff.rb, line 23</span>
-23: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">content_to</span>, <span class="ruby-identifier">content_from</span>)
-24: <span class="ruby-ivar">@content_to</span> = <span class="ruby-identifier">content_to</span> <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;&quot;</span>
-25: <span class="ruby-ivar">@content_from</span> = <span class="ruby-identifier">content_from</span> <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;&quot;</span>
-26: <span class="ruby-ivar">@words</span> = <span class="ruby-ivar">@content_to</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/(\s+)/</span>)
-27: <span class="ruby-ivar">@words</span> = <span class="ruby-ivar">@words</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">word</span><span class="ruby-operator">|</span> <span class="ruby-identifier">word</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">' '</span>}
-28: <span class="ruby-identifier">words_from</span> = <span class="ruby-ivar">@content_from</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/(\s+)/</span>)
-29: <span class="ruby-identifier">words_from</span> = <span class="ruby-identifier">words_from</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">word</span><span class="ruby-operator">|</span> <span class="ruby-identifier">word</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">' '</span>}
-30: <span class="ruby-ivar">@diff</span> = <span class="ruby-identifier">words_from</span>.<span class="ruby-identifier">diff</span> <span class="ruby-ivar">@words</span>
-31: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker/HTTP.html b/doc/app/classes/Glsamaker/HTTP.html
deleted file mode 100644
index c846daf..0000000
--- a/doc/app/classes/Glsamaker/HTTP.html
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Glsamaker::HTTP</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Glsamaker::HTTP</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/glsamaker/http_rb.html">
- lib/glsamaker/http.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-GLSAMaker <a href="HTTP.html">HTTP</a> utilities
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000065">get</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000065" class="method-detail">
- <a name="M000065"></a>
-
- <div class="method-heading">
- <a href="#M000065" class="method-signature">
- <span class="method-name">get</span><span class="method-args">(url)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Tries to fetch <tt>url</tt> via <a href="HTTP.html">HTTP</a> GET, sending a
-GLSAMaker custom <a href="../User.html">User</a>-Agent header. The body
-part is returned.
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000065-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000065-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/http.rb, line 21</span>
-21: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
-22: <span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">url</span>)
-23:
-24: <span class="ruby-identifier">http</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">host</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span>)
-25: <span class="ruby-identifier">http</span>.<span class="ruby-identifier">use_ssl</span> = <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;https&quot;</span>
-26: <span class="ruby-identifier">res</span> = <span class="ruby-identifier">http</span>.<span class="ruby-identifier">start</span> {
-27: <span class="ruby-identifier">http</span>.<span class="ruby-identifier">request_get</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">request_uri</span>, {<span class="ruby-value str">'User-Agent'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;GLSAMaker/#{GLSAMAKER_VERSION} (http://security.gentoo.org/)&quot;</span>})
-28: }
-29:
-30: <span class="ruby-comment cmt"># Raises an exception if HTTP status suggests something went wrong</span>
-31: <span class="ruby-identifier">res</span>.<span class="ruby-identifier">value</span>
-32: <span class="ruby-identifier">res</span>.<span class="ruby-identifier">body</span>
-33: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker/Portage.html b/doc/app/classes/Glsamaker/Portage.html
deleted file mode 100644
index 70117d7..0000000
--- a/doc/app/classes/Glsamaker/Portage.html
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: Glsamaker::Portage</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">Glsamaker::Portage</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../files/lib/glsamaker/portage_rb.html">
- lib/glsamaker/portage.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Helper functions for <a href="Portage.html">Portage</a> tree interaction
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000059">getDescription</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
- <div id="class-list">
- <h3 class="section-bar">Classes and Modules</h3>
-
- Class <a href="Portage/Description.html" class="link">Glsamaker::Portage::Description</a><br />
-
- </div>
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000059" class="method-detail">
- <a name="M000059"></a>
-
- <div class="method-heading">
- <a href="#M000059" class="method-signature">
- <span class="method-name">getDescription</span><span class="method-args">(atom)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000059-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000059-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/portage.rb, line 64</span>
-64: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getDescription</span>(<span class="ruby-identifier">atom</span>)
-65: <span class="ruby-constant">Description</span>.<span class="ruby-identifier">eix</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
-66: <span class="ruby-constant">Description</span>.<span class="ruby-identifier">ebuild</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
-67: <span class="ruby-constant">Description</span>.<span class="ruby-identifier">pgo</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
-68: <span class="ruby-constant">Description</span>.<span class="ruby-identifier">google</span>(<span class="ruby-identifier">atom</span>) <span class="ruby-operator">||</span>
-69: <span class="ruby-value str">&quot;[could not get a description]&quot;</span>
-70: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Glsamaker/Portage/Description.html b/doc/app/classes/Glsamaker/Portage/Description.html
deleted file mode 100644
index c81bfa6..0000000
--- a/doc/app/classes/Glsamaker/Portage/Description.html
+++ /dev/null
@@ -1,276 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Glsamaker::Portage::Description</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Glsamaker::Portage::Description</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../../../files/lib/glsamaker/portage_rb.html">
- lib/glsamaker/portage.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Package description helper
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000060">ebuild</a>&nbsp;&nbsp;
- <a href="#M000061">eix</a>&nbsp;&nbsp;
- <a href="#M000063">google</a>&nbsp;&nbsp;
- <a href="#M000062">pgo</a>&nbsp;&nbsp;
- <a href="#M000064">validAtom?</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Class methods</h3>
-
- <div id="method-M000060" class="method-detail">
- <a name="M000060"></a>
-
- <div class="method-heading">
- <a href="#M000060" class="method-signature">
- <span class="method-name">ebuild</span><span class="method-args">(atom)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Tries to fetch the description for the package <tt>atom</tt> from an <a
-href="Description.html#M000060">ebuild</a>&#8216;s entry (works if running
-on Gentoo)
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000060-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000060-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/portage.rb, line 23</span>
-23: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ebuild</span>(<span class="ruby-identifier">atom</span>)
-24: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">GLSAMAKER_PORTDIR</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">false</span>
-25: <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Invalid package atom&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">validAtom?</span>(<span class="ruby-identifier">atom</span>)
-26:
-27: <span class="ruby-identifier">dir</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">GLSAMAKER_PORTDIR</span>, <span class="ruby-identifier">atom</span>)
-28:
-29: <span class="ruby-keyword kw">nil</span>
-30: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000061" class="method-detail">
- <a name="M000061"></a>
-
- <div class="method-heading">
- <a href="#M000061" class="method-signature">
- <span class="method-name">eix</span><span class="method-args">(atom)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000061-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000061-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/portage.rb, line 32</span>
-32: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eix</span>(<span class="ruby-identifier">atom</span>)
-33: <span class="ruby-keyword kw">nil</span>
-34: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000063" class="method-detail">
- <a name="M000063"></a>
-
- <div class="method-heading">
- <a href="#M000063" class="method-signature">
- <span class="method-name">google</span><span class="method-args">(atom)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Loads a description for <tt>atom</tt> from Google
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000063-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000063-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/portage.rb, line 51</span>
-51: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">google</span>(<span class="ruby-identifier">atom</span>)
-52: <span class="ruby-keyword kw">nil</span>
-53: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000062" class="method-detail">
- <a name="M000062"></a>
-
- <div class="method-heading">
- <a href="#M000062" class="method-signature">
- <span class="method-name">pgo</span><span class="method-args">(atom)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Loads a description for <tt>atom</tt> from packages.gentoo.org
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000062-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000062-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/portage.rb, line 37</span>
-37: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">pgo</span>(<span class="ruby-identifier">atom</span>)
-38: <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Invalid package atom&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">validAtom?</span>(<span class="ruby-identifier">atom</span>)
-39:
-40: <span class="ruby-identifier">n</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>(<span class="ruby-constant">Glsamaker</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">get</span>(<span class="ruby-node">&quot;http://packages.gentoo.org/package/#{atom}&quot;</span>))
-41:
-42: <span class="ruby-identifier">node</span> = <span class="ruby-identifier">n</span>.<span class="ruby-identifier">css</span>(<span class="ruby-value str">'p.description'</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">first</span>
-43: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Node</span><span class="ruby-operator">::</span><span class="ruby-constant">TEXT_NODE</span>
-44: <span class="ruby-identifier">node</span>.<span class="ruby-identifier">to_s</span>
-45: <span class="ruby-keyword kw">else</span>
-46: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;XML parse error&quot;</span>
-47: <span class="ruby-keyword kw">end</span>
-48: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000064" class="method-detail">
- <a name="M000064"></a>
-
- <div class="method-heading">
- <a href="#M000064" class="method-signature">
- <span class="method-name">validAtom?</span><span class="method-args">(atom)</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Validates the atom <tt>atom</tt>
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000064-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000064-source">
-<pre>
- <span class="ruby-comment cmt"># File lib/glsamaker/portage.rb, line 56</span>
-56: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">validAtom?</span>(<span class="ruby-identifier">atom</span>)
-57: <span class="ruby-regexp re">/[a-zA-Z0-9_-]\/[a-zA-Z0-9_-]/</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">atom</span>)
-58: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/IndexController.html b/doc/app/classes/IndexController.html
deleted file mode 100644
index ce65213..0000000
--- a/doc/app/classes/IndexController.html
+++ /dev/null
@@ -1,206 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: IndexController</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">IndexController</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/controllers/index_controller_rb.html">
- app/controllers/index_controller.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- <a href="ApplicationController.html">
- ApplicationController
- </a>
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Index controller
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000018">about</a>&nbsp;&nbsp;
- <a href="#M000017">error</a>&nbsp;&nbsp;
- <a href="#M000016">index</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000018" class="method-detail">
- <a name="M000018"></a>
-
- <div class="method-heading">
- <a href="#M000018" class="method-signature">
- <span class="method-name">about</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000018-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000018-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/index_controller.rb, line 29</span>
-29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">about</span>
-30: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000017" class="method-detail">
- <a name="M000017"></a>
-
- <div class="method-heading">
- <a href="#M000017" class="method-signature">
- <span class="method-name">error</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000017-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000017-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/index_controller.rb, line 19</span>
-19: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>
-20: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;user&quot;</span>
-21: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'index/error-user'</span>, <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'notice'</span>
-22: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;disabled&quot;</span>
-23: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'index/error-disabled'</span>, <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'notice'</span>
-24: <span class="ruby-keyword kw">else</span>
-25: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:template</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'index/error-system'</span>, <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'notice'</span>
-26: <span class="ruby-keyword kw">end</span>
-27: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000016" class="method-detail">
- <a name="M000016"></a>
-
- <div class="method-heading">
- <a href="#M000016" class="method-signature">
- <span class="method-name">index</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000016-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000016-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/index_controller.rb, line 16</span>
-16: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">index</span>
-17: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/IndexHelper.html b/doc/app/classes/IndexHelper.html
deleted file mode 100644
index bc246b3..0000000
--- a/doc/app/classes/IndexHelper.html
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: IndexHelper</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">IndexHelper</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/helpers/index_helper_rb.html">
- app/helpers/index_helper.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Index Helper
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Reference.html b/doc/app/classes/Reference.html
deleted file mode 100644
index e286d5f..0000000
--- a/doc/app/classes/Reference.html
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Reference</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Reference</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/models/reference_rb.html">
- app/models/reference.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActiveRecord::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="Reference.html">Reference</a> model
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/Revision.html b/doc/app/classes/Revision.html
deleted file mode 100644
index 11559e2..0000000
--- a/doc/app/classes/Revision.html
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: Revision</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">Revision</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/models/revision_rb.html">
- app/models/revision.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActiveRecord::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-<a href="Revision.html">Revision</a> model
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/SparklinesController.html b/doc/app/classes/SparklinesController.html
deleted file mode 100644
index 022d8ba..0000000
--- a/doc/app/classes/SparklinesController.html
+++ /dev/null
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: SparklinesController</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">SparklinesController</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/controllers/sparklines_controller_rb.html">
- app/controllers/sparklines_controller.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- <a href="ApplicationController.html">
- ApplicationController
- </a>
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000022">index</a>&nbsp;&nbsp;
- <a href="#M000023">show</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000022" class="method-detail">
- <a name="M000022"></a>
-
- <div class="method-heading">
- <a href="#M000022" class="method-signature">
- <span class="method-name">index</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Handles requests for sparkline graphs from views.
-</p>
-<p>
-Params are generated by the sparkline_tag helper method.
-</p>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000022-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/sparklines_controller.rb, line 7</span>
- 7: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">index</span>
- 8: <span class="ruby-comment cmt"># Make array from comma-delimited list of data values</span>
- 9: <span class="ruby-identifier">ary</span> = []
-10: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value str">'results'</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">params</span>[<span class="ruby-value str">'results'</span>].<span class="ruby-identifier">nil?</span>
-11: <span class="ruby-identifier">params</span>[<span class="ruby-value str">'results'</span>].<span class="ruby-identifier">split</span>(<span class="ruby-value str">','</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
-12: <span class="ruby-identifier">ary</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">to_i</span>
-13: <span class="ruby-keyword kw">end</span>
-14: <span class="ruby-keyword kw">end</span>
-15:
-16: <span class="ruby-identifier">send_data</span>( <span class="ruby-constant">Sparklines</span>.<span class="ruby-identifier">plot</span>( <span class="ruby-identifier">ary</span>, <span class="ruby-identifier">params</span> ),
-17: <span class="ruby-identifier">:disposition</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'inline'</span>,
-18: <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'image/png'</span>,
-19: <span class="ruby-identifier">:filename</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;spark_#{params[:type]}.png&quot;</span> )
-20: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000023" class="method-detail">
- <a name="M000023"></a>
-
- <div class="method-heading">
- <a href="#M000023" class="method-signature">
- <span class="method-name">show</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p>
-Use this type of method for sparklines that can be cached. (Doesn&#8216;t
-work with the helper.)
-</p>
-<p>
-To make caching easier, add a line like this to config/routes.rb:
-map.sparklines &quot;sparklines/:action/:id/image.png&quot;, :controller
-=&gt; &quot;sparklines&quot;
-</p>
-<p>
-Then reference it with the named route:
-</p>
-<pre>
- image_tag sparklines_url(:action =&gt; 'show', :id =&gt; 42)
-</pre>
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000023-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000023-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/sparklines_controller.rb, line 30</span>
-30: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">show</span>
-31: <span class="ruby-identifier">send_data</span>(<span class="ruby-constant">Sparklines</span>.<span class="ruby-identifier">plot</span>(
-32: [<span class="ruby-value">42</span>, <span class="ruby-value">37</span>, <span class="ruby-value">89</span>, <span class="ruby-value">74</span>, <span class="ruby-value">70</span>, <span class="ruby-value">50</span>, <span class="ruby-value">40</span>, <span class="ruby-value">30</span>, <span class="ruby-value">40</span>, <span class="ruby-value">50</span>],
-33: <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'bar'</span>, <span class="ruby-identifier">:above_color</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'orange'</span>
-34: ),
-35: <span class="ruby-identifier">:disposition</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'inline'</span>,
-36: <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'image/png'</span>,
-37: <span class="ruby-identifier">:filename</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;sparkline.png&quot;</span>)
-38: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/String.html b/doc/app/classes/String.html
deleted file mode 100644
index e0fd3af..0000000
--- a/doc/app/classes/String.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: String</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">String</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/lib/diff_rb.html">
- lib/diff.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- Object
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
- <div id="includes">
- <h3 class="section-bar">Included Modules</h3>
-
- <div id="includes-list">
- <span class="include-name"><a href="Diffable.html">Diffable</a></span>
- </div>
- </div>
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/ToolsController.html b/doc/app/classes/ToolsController.html
deleted file mode 100644
index e4a9c70..0000000
--- a/doc/app/classes/ToolsController.html
+++ /dev/null
@@ -1,337 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: ToolsController</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">ToolsController</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/controllers/tools_controller_rb.html">
- app/controllers/tools_controller.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- <a href="ApplicationController.html">
- ApplicationController
- </a>
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Tools controller
-</p>
-
- </div>
-
-
- </div>
-
- <div id="method-list">
- <h3 class="section-bar">Methods</h3>
-
- <div class="name-list">
- <a href="#M000013">addbug</a>&nbsp;&nbsp;
- <a href="#M000014">addbugsave</a>&nbsp;&nbsp;
- <a href="#M000011">ajaxbugs</a>&nbsp;&nbsp;
- <a href="#M000012">ajaxdescr</a>&nbsp;&nbsp;
- <a href="#M000015">background</a>&nbsp;&nbsp;
- <a href="#M000010">buginfo</a>&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
- <div id="methods">
- <h3 class="section-bar">Public Instance methods</h3>
-
- <div id="method-M000013" class="method-detail">
- <a name="M000013"></a>
-
- <div class="method-heading">
- <a href="#M000013" class="method-signature">
- <span class="method-name">addbug</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000013-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000013-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/tools_controller.rb, line 81</span>
-81: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addbug</span>
-82: <span class="ruby-ivar">@glsa_id</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>]
-83: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>
-84: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000014" class="method-detail">
- <a name="M000014"></a>
-
- <div class="method-heading">
- <a href="#M000014" class="method-signature">
- <span class="method-name">addbugsave</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000014-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000014-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/tools_controller.rb, line 86</span>
-86: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addbugsave</span>
-87: <span class="ruby-identifier">glsa_id</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>]
-88:
-89: <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">Glsa</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">glsa_id</span>) <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
-90: <span class="ruby-identifier">session</span>[<span class="ruby-identifier">:addbugs</span>][<span class="ruby-identifier">glsa_id</span>] <span class="ruby-operator">||=</span> []
-91: <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:bugs</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bugid</span><span class="ruby-operator">|</span>
-92: <span class="ruby-identifier">session</span>[<span class="ruby-identifier">:addbugs</span>][<span class="ruby-identifier">glsa_id</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">bugid</span>
-93: <span class="ruby-keyword kw">end</span>
-94: <span class="ruby-keyword kw">end</span>
-95: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000011" class="method-detail">
- <a name="M000011"></a>
-
- <div class="method-heading">
- <a href="#M000011" class="method-signature">
- <span class="method-name">ajaxbugs</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000011-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000011-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/tools_controller.rb, line 25</span>
-25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ajaxbugs</span>
-26: <span class="ruby-identifier">bug_ids</span> = <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:bugs</span>])
-27:
-28: <span class="ruby-ivar">@bugs</span> = []
-29: <span class="ruby-identifier">bug_ids</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug_id</span><span class="ruby-operator">|</span>
-30: <span class="ruby-keyword kw">begin</span>
-31: <span class="ruby-ivar">@bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug_id</span>.<span class="ruby-identifier">to_i</span>)
-32: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-33: <span class="ruby-ivar">@bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;Ignoring #{CGI.escapeHTML(bug_id)} (#{CGI.escapeHTML(e.message)})&quot;</span>
-34: <span class="ruby-keyword kw">end</span>
-35: <span class="ruby-keyword kw">end</span>
-36:
-37: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>
-38: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000012" class="method-detail">
- <a name="M000012"></a>
-
- <div class="method-heading">
- <a href="#M000012" class="method-signature">
- <span class="method-name">ajaxdescr</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000012-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000012-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/tools_controller.rb, line 40</span>
-40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ajaxdescr</span>
-41: <span class="ruby-identifier">bug_ids</span> = <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">str2bugIDs</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:bugs</span>])
-42:
-43: <span class="ruby-ivar">@bugs</span> = []
-44: <span class="ruby-identifier">bug_ids</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug_id</span><span class="ruby-operator">|</span>
-45: <span class="ruby-keyword kw">begin</span>
-46: <span class="ruby-ivar">@bugs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">Bugzilla</span><span class="ruby-operator">::</span><span class="ruby-constant">Bug</span>.<span class="ruby-identifier">load_from_id</span>(<span class="ruby-identifier">bug_id</span>.<span class="ruby-identifier">to_i</span>)
-47: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
-48: <span class="ruby-keyword kw">end</span>
-49: <span class="ruby-keyword kw">end</span>
-50:
-51: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@bugs</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
-52: <span class="ruby-ivar">@text</span> = <span class="ruby-ivar">@bugs</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">summary</span>
-53: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>
-54: <span class="ruby-keyword kw">return</span>
-55: <span class="ruby-keyword kw">end</span>
-56:
-57: <span class="ruby-comment cmt"># Process 2 or more bugs</span>
-58: <span class="ruby-ivar">@atoms</span> = []
-59: <span class="ruby-ivar">@bugs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">bug</span><span class="ruby-operator">|</span>
-60: <span class="ruby-identifier">matchdata</span> = <span class="ruby-regexp re">/([\w-]+)\/([\w-]+)(-([\w.]+))?/</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">bug</span>.<span class="ruby-identifier">summary</span>)
-61:
-62: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">matchdata</span>.<span class="ruby-identifier">nil?</span>
-63: <span class="ruby-identifier">category</span> = <span class="ruby-identifier">matchdata</span>[<span class="ruby-value">1</span>]
-64: <span class="ruby-identifier">package</span> = <span class="ruby-identifier">matchdata</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/-+?$/</span>, <span class="ruby-value str">''</span>)
-65:
-66: <span class="ruby-ivar">@atoms</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{category}/#{package}&quot;</span>
-67: <span class="ruby-keyword kw">end</span>
-68: <span class="ruby-keyword kw">end</span>
-69:
-70: <span class="ruby-ivar">@atoms</span>.<span class="ruby-identifier">uniq!</span>
-71:
-72: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@atoms</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
-73: <span class="ruby-ivar">@text</span> = <span class="ruby-ivar">@atoms</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">', '</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;: Multiple vulnerabilities&quot;</span>
-74: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>
-75: <span class="ruby-keyword kw">return</span>
-76: <span class="ruby-keyword kw">end</span>
-77:
-78: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;(no suggestion available)&quot;</span>, <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>
-79: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000015" class="method-detail">
- <a name="M000015"></a>
-
- <div class="method-heading">
- <a href="#M000015" class="method-signature">
- <span class="method-name">background</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000015-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000015-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/tools_controller.rb, line 97</span>
-97: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">background</span>
-98: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:layout</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>
-99: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
- <div id="method-M000010" class="method-detail">
- <a name="M000010"></a>
-
- <div class="method-heading">
- <a href="#M000010" class="method-signature">
- <span class="method-name">buginfo</span><span class="method-args">()</span>
- </a>
- </div>
-
- <div class="method-description">
- <p><a class="source-toggle" href="#"
- onclick="toggleCode('M000010-source');return false;">[Source]</a></p>
- <div class="method-source-code" id="M000010-source">
-<pre>
- <span class="ruby-comment cmt"># File app/controllers/tools_controller.rb, line 14</span>
-14: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">buginfo</span>
-15: <span class="ruby-comment cmt"># bug = Bugzilla::Bug.load_from_id(params[:id])</span>
-16:
-17: <span class="ruby-identifier">str</span> = <span class="ruby-value str">&quot;&lt;dev-ruby/rails-2.2.2: XSS (CVE 2009-5607)&quot;</span>
-18:
-19: <span class="ruby-identifier">respond_to</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
-20: <span class="ruby-identifier">format</span>.<span class="ruby-identifier">html</span> { }
-21: <span class="ruby-identifier">format</span>.<span class="ruby-identifier">ajax</span> { <span class="ruby-identifier">render</span> <span class="ruby-identifier">:text</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;text to render...&quot;</span>, <span class="ruby-identifier">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span> }
-22: <span class="ruby-keyword kw">end</span>
-23: <span class="ruby-keyword kw">end</span>
-</pre>
- </div>
- </div>
- </div>
-
-
- </div>
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/ToolsHelper.html b/doc/app/classes/ToolsHelper.html
deleted file mode 100644
index 792b1a8..0000000
--- a/doc/app/classes/ToolsHelper.html
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module: ToolsHelper</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Module</strong></td>
- <td class="class-name-in-header">ToolsHelper</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/helpers/tools_helper_rb.html">
- app/helpers/tools_helper.rb
- </a>
- <br />
- </td>
- </tr>
-
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <p>
-Tools helper
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/classes/User.html b/doc/app/classes/User.html
deleted file mode 100644
index 3542fef..0000000
--- a/doc/app/classes/User.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class: User</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="classHeader">
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Class</strong></td>
- <td class="class-name-in-header">User</td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>In:</strong></td>
- <td>
- <a href="../files/app/models/user_rb.html">
- app/models/user.rb
- </a>
- <br />
- </td>
- </tr>
-
- <tr class="top-aligned-row">
- <td><strong>Parent:</strong></td>
- <td>
- ActiveRecord::Base
- </td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h1>Access levels</h1>
-<dl>
-<dt><b>0 (Contributor)</b></dt><dd>Can see own drafts, can fill in requests
-
-</dd>
-<dt><b>1 (Padawan)</b></dt><dd>all of the above, plus see and edit all drafts
-
-</dd>
-<dt><b>2 (Full member)</b></dt><dd>all of the above, plus voting
-
-</dd>
-<dt><b>3 (Confidential member)</b></dt><dd>all of the above, including restricted drafts
-
-</dd>
-</dl>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/created.rid b/doc/app/created.rid
index 17ab1b6..07ced90 100644
--- a/doc/app/created.rid
+++ b/doc/app/created.rid
@@ -1 +1,56 @@
-Sun, 03 May 2009 19:14:09 +0200
+Sun, 04 Sep 2011 22:29:19 +0200
+app/helpers/application_helper.rb Tue, 30 Aug 2011 18:13:21 +0200
+app/helpers/tools_helper.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/models/comment.rb Sun, 04 Sep 2011 15:03:52 +0200
+lib/glsamaker/portage.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/helpers/admin/users_helper.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/helpers/bugs_helper.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/models/reference.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/models/cve_reference.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/models/bug.rb Tue, 30 Aug 2011 15:17:23 +0200
+lib/bugzilla.rb Thu, 01 Sep 2011 20:47:04 +0200
+lib/tasks/utils.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/controllers/admin/templates_controller.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/helpers/index_helper.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/helpers/admin/index_helper.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/helpers/cve_helper.rb Mon, 22 Aug 2011 23:12:58 +0200
+app/models/cve_assignment.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/models/glsa.rb Sun, 04 Sep 2011 14:42:42 +0200
+lib/glsamaker/helpers.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/models/cve_comment.rb Tue, 30 Aug 2011 15:17:23 +0200
+app/models/cve.rb Tue, 30 Aug 2011 15:17:23 +0200
+app/controllers/admin/index_controller.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/controllers/tools_controller.rb Mon, 29 Aug 2011 19:16:21 +0200
+app/helpers/bug_helper.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/models/user.rb Mon, 29 Aug 2011 14:56:39 +0200
+lib/glsamaker.rb Sun, 14 Aug 2011 14:43:15 +0200
+lib/glsamaker/http.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/models/revision.rb Tue, 30 Aug 2011 15:17:23 +0200
+lib/bugzilla/bug.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/controllers/application_controller.rb Thu, 01 Sep 2011 20:06:30 +0200
+app/controllers/index_controller.rb Mon, 29 Aug 2011 20:18:29 +0200
+app/controllers/search_controller.rb Thu, 01 Sep 2011 20:00:53 +0200
+app/controllers/cve_controller.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/mailers/glsa_mailer.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/models/package.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/models/template.rb Mon, 29 Aug 2011 14:56:39 +0200
+lib/glsamaker/bugs.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/controllers/admin/users_controller.rb Mon, 29 Aug 2011 14:56:39 +0200
+lib/bugzilla/comment.rb Sun, 14 Aug 2011 14:43:15 +0200
+lib/bugzilla/history.rb Mon, 29 Aug 2011 14:56:39 +0200
+lib/authorization.rb Sun, 04 Sep 2011 11:11:44 +0200
+lib/authentication.rb Mon, 29 Aug 2011 14:56:39 +0200
+lib/glsamaker/diff.rb Sun, 14 Aug 2011 14:43:15 +0200
+lib/glsamaker/xml.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/controllers/bug_controller.rb Sun, 14 Aug 2011 14:43:15 +0200
+app/controllers/glsa_controller.rb Sun, 04 Sep 2011 00:52:07 +0200
+app/helpers/glsa_helper.rb Mon, 29 Aug 2011 19:02:21 +0200
+doc/README_FOR_APP Sun, 04 Sep 2011 22:27:27 +0200
+lib/glsamaker/mail.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/controllers/comments_controller.rb Sun, 04 Sep 2011 14:49:11 +0200
+app/helpers/comments_helper.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/helpers/admin/templates_helper.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/models/cpe.rb Mon, 29 Aug 2011 14:56:39 +0200
+app/controllers/bugs_controller.rb Thu, 01 Sep 2011 20:06:58 +0200
+app/helpers/search_helper.rb Tue, 30 Aug 2011 15:17:23 +0200
+app/models/cve_change.rb Mon, 29 Aug 2011 14:56:39 +0200
diff --git a/doc/app/doc/README_FOR_APP.html b/doc/app/doc/README_FOR_APP.html
new file mode 100644
index 0000000..ffbe146
--- /dev/null
+++ b/doc/app/doc/README_FOR_APP.html
@@ -0,0 +1,260 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: README_FOR_APP [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet" />
+
+ <script src="../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file">
+ <div id="metadata">
+ <div id="home-metadata">
+ <div id="home-section" class="section">
+ <h3 class="section-header">
+ <a href="../index.html">Home</a>
+ <a href="../index.html#classes">Classes</a>
+ <a href="../index.html#methods">Methods</a>
+ </h3>
+ </div>
+ </div>
+
+ <div id="project-metadata">
+
+
+ <div id="fileindex-section" class="section project-section">
+ <h3 class="section-header">Files</h3>
+ <ul>
+
+ <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+ </div>
+
+
+ <div id="classindex-section" class="section project-section">
+ <h3 class="section-header">Class Index
+ <span class="search-toggle"><img src="../images/find.png"
+ height="16" width="16" alt="[+]"
+ title="show/hide quicksearch" /></span></h3>
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
+ <fieldset>
+ <legend>Quicksearch</legend>
+ <input type="text" name="quicksearch" value=""
+ class="quicksearch-field" />
+ </fieldset>
+ </form>
+
+ <ul class="link-list">
+
+ <li><a href="../Glsamaker.html">Glsamaker</a></li>
+
+ <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li><a href="../Admin.html">Admin</a></li>
+
+ <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li><a href="../Bugzilla.html">Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li><a href="../Comment.html">Comment</a></li>
+
+ <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li><a href="../ApplicationController.html">ApplicationController</a></li>
+
+ <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li><a href="../Authentication.html">Authentication</a></li>
+
+ <li><a href="../Authorization.html">Authorization</a></li>
+
+ <li><a href="../Bug.html">Bug</a></li>
+
+ <li><a href="../BugController.html">BugController</a></li>
+
+ <li><a href="../BugHelper.html">BugHelper</a></li>
+
+ <li><a href="../BugsController.html">BugsController</a></li>
+
+ <li><a href="../BugsHelper.html">BugsHelper</a></li>
+
+ <li><a href="../CommentsController.html">CommentsController</a></li>
+
+ <li><a href="../CommentsHelper.html">CommentsHelper</a></li>
+
+ <li><a href="../Cpe.html">Cpe</a></li>
+
+ <li><a href="../Cve.html">Cve</a></li>
+
+ <li><a href="../CveAssignment.html">CveAssignment</a></li>
+
+ <li><a href="../CveChange.html">CveChange</a></li>
+
+ <li><a href="../CveComment.html">CveComment</a></li>
+
+ <li><a href="../CveController.html">CveController</a></li>
+
+ <li><a href="../CveHelper.html">CveHelper</a></li>
+
+ <li><a href="../CveReference.html">CveReference</a></li>
+
+ <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li><a href="../Glsa.html">Glsa</a></li>
+
+ <li><a href="../GlsaController.html">GlsaController</a></li>
+
+ <li><a href="../GlsaHelper.html">GlsaHelper</a></li>
+
+ <li><a href="../GlsaMailer.html">GlsaMailer</a></li>
+
+ <li><a href="../IndexController.html">IndexController</a></li>
+
+ <li><a href="../IndexHelper.html">IndexHelper</a></li>
+
+ <li><a href="../Package.html">Package</a></li>
+
+ <li><a href="../Reference.html">Reference</a></li>
+
+ <li><a href="../Revision.html">Revision</a></li>
+
+ <li><a href="../SearchController.html">SearchController</a></li>
+
+ <li><a href="../SearchHelper.html">SearchHelper</a></li>
+
+ <li><a href="../String.html">String</a></li>
+
+ <li><a href="../Template.html">Template</a></li>
+
+ <li><a href="../ToolsController.html">ToolsController</a></li>
+
+ <li><a href="../ToolsHelper.html">ToolsHelper</a></li>
+
+ <li><a href="../User.html">User</a></li>
+
+ </ul>
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
+ </div>
+
+
+ </div>
+ </div>
+
+ <div id="documentation">
+
+<h1>GLSAMaker v2</h1>
+
+<p>GLSAMaker is a core tool for the Gentoo Security Team. It is used to track,
+create, edit and review Security announcements and drafts.</p>
+
+<p>Project website: <a
+href="https://redmine.a3li.li/projects/glsamaker2">redmine.a3li.li/projects/glsamaker2</a></p>
+
+<h2>Needed libraries</h2>
+<ul><li>
+<p>Rails 3.1</p>
+</li><li>
+<p>Nokogiri</p>
+</li><li>
+<p>FasterCSV</p>
+</li><li>
+<p>JSON</p>
+</li><li>
+<p>Mechanize</p>
+</li><li>
+<p>Rcov</p>
+</li><li>
+<p>text-format</p>
+</li><li>
+<p>xmlindent</p>
+</li><li>
+<p>Sphinx</p>
+</li><li>
+<p>Sparklines</p>
+</li></ul>
+
+<h2>Copyright</h2>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
+Portions Copyright (C) 2006-2007 Jean-Philippe Lang</pre>
+
+<h2>License</h2>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/files/app/controllers/application_controller_rb.html b/doc/app/files/app/controllers/application_controller_rb.html
deleted file mode 100644
index 0e3b222..0000000
--- a/doc/app/files/app/controllers/application_controller_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: application_controller.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>application_controller.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/controllers/application_controller.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Tue Mar 31 22:26:09 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/controllers/glsa_controller_rb.html b/doc/app/files/app/controllers/glsa_controller_rb.html
deleted file mode 100644
index 9c92f52..0000000
--- a/doc/app/files/app/controllers/glsa_controller_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: glsa_controller.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>glsa_controller.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/controllers/glsa_controller.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Fri May 01 13:35:34 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/controllers/index_controller_rb.html b/doc/app/files/app/controllers/index_controller_rb.html
deleted file mode 100644
index 2d2bdfc..0000000
--- a/doc/app/files/app/controllers/index_controller_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: index_controller.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>index_controller.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/controllers/index_controller.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Fri Apr 10 19:16:25 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/controllers/sparklines_controller_rb.html b/doc/app/files/app/controllers/sparklines_controller_rb.html
deleted file mode 100644
index e85357a..0000000
--- a/doc/app/files/app/controllers/sparklines_controller_rb.html
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: sparklines_controller.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>sparklines_controller.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/controllers/sparklines_controller.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun Apr 26 12:51:38 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/controllers/tools_controller_rb.html b/doc/app/files/app/controllers/tools_controller_rb.html
deleted file mode 100644
index 0eb05ef..0000000
--- a/doc/app/files/app/controllers/tools_controller_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: tools_controller.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>tools_controller.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/controllers/tools_controller.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Thu Apr 30 21:57:12 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/helpers/application_helper_rb.html b/doc/app/files/app/helpers/application_helper_rb.html
deleted file mode 100644
index 4497d66..0000000
--- a/doc/app/files/app/helpers/application_helper_rb.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: application_helper.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>application_helper.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/helpers/application_helper.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Thu Apr 30 23:22:44 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
- Copyright (C) 2006-2007 Jean-Philippe Lang
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/helpers/glsa_helper_rb.html b/doc/app/files/app/helpers/glsa_helper_rb.html
deleted file mode 100644
index b23c0df..0000000
--- a/doc/app/files/app/helpers/glsa_helper_rb.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: glsa_helper.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>glsa_helper.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/helpers/glsa_helper.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun Apr 26 00:01:25 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
- Copyright (C) 2006-2007 Jean-Philippe Lang
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/helpers/index_helper_rb.html b/doc/app/files/app/helpers/index_helper_rb.html
deleted file mode 100644
index 06a74f0..0000000
--- a/doc/app/files/app/helpers/index_helper_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: index_helper.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>index_helper.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/helpers/index_helper.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Tue Mar 31 22:26:09 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/helpers/tools_helper_rb.html b/doc/app/files/app/helpers/tools_helper_rb.html
deleted file mode 100644
index 9f1649a..0000000
--- a/doc/app/files/app/helpers/tools_helper_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: tools_helper.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>tools_helper.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/helpers/tools_helper.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Tue Mar 31 22:26:09 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/models/bug_rb.html b/doc/app/files/app/models/bug_rb.html
deleted file mode 100644
index 64c46cb..0000000
--- a/doc/app/files/app/models/bug_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: bug.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>bug.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/models/bug.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Tue Mar 31 22:26:09 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/models/comment_rb.html b/doc/app/files/app/models/comment_rb.html
deleted file mode 100644
index 320fb09..0000000
--- a/doc/app/files/app/models/comment_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: comment.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>comment.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/models/comment.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Tue Mar 31 22:26:09 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/models/glsa_rb.html b/doc/app/files/app/models/glsa_rb.html
deleted file mode 100644
index 0ca875c..0000000
--- a/doc/app/files/app/models/glsa_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: glsa.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>glsa.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/models/glsa.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Fri May 01 13:34:21 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/models/reference_rb.html b/doc/app/files/app/models/reference_rb.html
deleted file mode 100644
index 4246ae8..0000000
--- a/doc/app/files/app/models/reference_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: reference.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>reference.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/models/reference.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Tue Mar 31 22:26:09 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/models/revision_rb.html b/doc/app/files/app/models/revision_rb.html
deleted file mode 100644
index 7304915..0000000
--- a/doc/app/files/app/models/revision_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: revision.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>revision.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/models/revision.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Fri Apr 10 23:35:23 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/app/models/user_rb.html b/doc/app/files/app/models/user_rb.html
deleted file mode 100644
index d800a67..0000000
--- a/doc/app/files/app/models/user_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: user.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>user.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>app/models/user.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Fri Apr 10 23:35:23 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/doc/README_FOR_APP.html b/doc/app/files/doc/README_FOR_APP.html
deleted file mode 100644
index f00ac4d..0000000
--- a/doc/app/files/doc/README_FOR_APP.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: README_FOR_APP</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>README_FOR_APP</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>doc/README_FOR_APP
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun Apr 26 12:41:17 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h1>GLSAMaker v2</h1>
-<p>
-GLSAMaker is a core tool for the Gentoo Security Team. It is used to track,
-create, edit and review Security announcements and drafts.
-</p>
-<p>
-Project website: <a
-href="http://security.gentoo.org">security.gentoo.org</a>
-</p>
-<h2>Needed libraries</h2>
-<ul>
-<li>Rails 2.3.2
-
-</li>
-<li>Nokogiri
-
-</li>
-<li>FasterCSV
-
-</li>
-<li>Sparklines
-
-</li>
-</ul>
-<h2>Copyright</h2>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
- Portions Copyright (C) 2006-2007 Jean-Philippe Lang
-</pre>
-<h2>License</h2>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/authentication_rb.html b/doc/app/files/lib/authentication_rb.html
deleted file mode 100644
index e395400..0000000
--- a/doc/app/files/lib/authentication_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: authentication.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>authentication.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/authentication.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun May 03 16:45:44 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/bugzilla_rb.html b/doc/app/files/lib/bugzilla_rb.html
deleted file mode 100644
index 0aa3283..0000000
--- a/doc/app/files/lib/bugzilla_rb.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: bugzilla.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>bugzilla.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/bugzilla.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun May 03 19:10:15 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
- <div id="requires-list">
- <h3 class="section-bar">Required files</h3>
-
- <div class="name-list">
- nokogiri&nbsp;&nbsp;
- fastercsv&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/diff_rb.html b/doc/app/files/lib/diff_rb.html
deleted file mode 100644
index 8dda00e..0000000
--- a/doc/app/files/lib/diff_rb.html
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: diff.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>diff.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/diff.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sat Apr 25 23:56:50 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/glsamaker/bugs_rb.html b/doc/app/files/lib/glsamaker/bugs_rb.html
deleted file mode 100644
index 39be965..0000000
--- a/doc/app/files/lib/glsamaker/bugs_rb.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: bugs.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>bugs.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/glsamaker/bugs.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun May 03 16:44:41 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/glsamaker/diff_rb.html b/doc/app/files/lib/glsamaker/diff_rb.html
deleted file mode 100644
index e1c2119..0000000
--- a/doc/app/files/lib/glsamaker/diff_rb.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: diff.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>diff.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/glsamaker/diff.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun Apr 26 12:43:12 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
- Copyright (C) 2006-2007 Jean-Philippe Lang
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
- <div id="requires-list">
- <h3 class="section-bar">Required files</h3>
-
- <div class="name-list">
- diff&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/glsamaker/http_rb.html b/doc/app/files/lib/glsamaker/http_rb.html
deleted file mode 100644
index 22e3b1d..0000000
--- a/doc/app/files/lib/glsamaker/http_rb.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: http.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>http.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/glsamaker/http.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun Apr 19 14:05:16 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
- <div id="requires-list">
- <h3 class="section-bar">Required files</h3>
-
- <div class="name-list">
- net/http&nbsp;&nbsp;
- net/https&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/glsamaker/portage_rb.html b/doc/app/files/lib/glsamaker/portage_rb.html
deleted file mode 100644
index c4c6449..0000000
--- a/doc/app/files/lib/glsamaker/portage_rb.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: portage.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>portage.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/glsamaker/portage.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sun Apr 19 14:05:16 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
- <div id="requires-list">
- <h3 class="section-bar">Required files</h3>
-
- <div class="name-list">
- nokogiri&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/files/lib/glsamaker_rb.html b/doc/app/files/lib/glsamaker_rb.html
deleted file mode 100644
index 95dfe94..0000000
--- a/doc/app/files/lib/glsamaker_rb.html
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>File: glsamaker.rb</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
- <script type="text/javascript">
- // <![CDATA[
-
- function popupCode( url ) {
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
- }
-
- function toggleCode( id ) {
- if ( document.getElementById )
- elem = document.getElementById( id );
- else if ( document.all )
- elem = eval( "document.all." + id );
- else
- return false;
-
- elemStyle = elem.style;
-
- if ( elemStyle.display != "block" ) {
- elemStyle.display = "block"
- } else {
- elemStyle.display = "none"
- }
-
- return true;
- }
-
- // Make codeblocks hidden by default
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
-
- // ]]>
- </script>
-
-</head>
-<body>
-
-
-
- <div id="fileHeader">
- <h1>glsamaker.rb</h1>
- <table class="header-table">
- <tr class="top-aligned-row">
- <td><strong>Path:</strong></td>
- <td>lib/glsamaker.rb
- </td>
- </tr>
- <tr class="top-aligned-row">
- <td><strong>Last Update:</strong></td>
- <td>Sat Apr 25 23:39:30 +0200 2009</td>
- </tr>
- </table>
- </div>
- <!-- banner header -->
-
- <div id="bodyContent">
-
-
-
- <div id="contextContent">
-
- <div id="description">
- <h3>GLSAMaker v2</h3>
-<pre>
- Copyright (C) 2009 Alex Legler &lt;a3li@gentoo.org&gt;
- Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
-</pre>
-<p>
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or (at your
-option) any later version.
-</p>
-<p>
-For more information, see the LICENSE file.
-</p>
-
- </div>
-
- <div id="requires-list">
- <h3 class="section-bar">Required files</h3>
-
- <div class="name-list">
- glsamaker/http&nbsp;&nbsp;
- glsamaker/portage&nbsp;&nbsp;
- glsamaker/diff&nbsp;&nbsp;
- </div>
- </div>
-
- </div>
-
-
- </div>
-
-
- <!-- if includes -->
-
- <div id="section">
-
-
-
-
-
-
-
-
- <!-- if method_list -->
-
-
- </div>
-
-
-<div id="validator-badges">
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
-</div>
-
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/fr_class_index.html b/doc/app/fr_class_index.html
deleted file mode 100644
index 8e6025a..0000000
--- a/doc/app/fr_class_index.html
+++ /dev/null
@@ -1,58 +0,0 @@
-
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
-
- Classes
-
- -->
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Classes</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
- <base target="docwin" />
-</head>
-<body>
-<div id="index">
- <h1 class="section-bar">Classes</h1>
- <div id="index-entries">
- <a href="classes/ApplicationController.html">ApplicationController</a><br />
- <a href="classes/ApplicationHelper.html">ApplicationHelper</a><br />
- <a href="classes/Array.html">Array</a><br />
- <a href="classes/Authentication.html">Authentication</a><br />
- <a href="classes/Bug.html">Bug</a><br />
- <a href="classes/Bugzilla.html">Bugzilla</a><br />
- <a href="classes/Bugzilla/Bug.html">Bugzilla::Bug</a><br />
- <a href="classes/Bugzilla/Change.html">Bugzilla::Change</a><br />
- <a href="classes/Bugzilla/Comment.html">Bugzilla::Comment</a><br />
- <a href="classes/Bugzilla/History.html">Bugzilla::History</a><br />
- <a href="classes/Comment.html">Comment</a><br />
- <a href="classes/Diff.html">Diff</a><br />
- <a href="classes/Diffable.html">Diffable</a><br />
- <a href="classes/Glsa.html">Glsa</a><br />
- <a href="classes/GlsaController.html">GlsaController</a><br />
- <a href="classes/GlsaHelper.html">GlsaHelper</a><br />
- <a href="classes/Glsamaker.html">Glsamaker</a><br />
- <a href="classes/Glsamaker/Bugs.html">Glsamaker::Bugs</a><br />
- <a href="classes/Glsamaker/Diff.html">Glsamaker::Diff</a><br />
- <a href="classes/Glsamaker/Diff/DiffContainer.html">Glsamaker::Diff::DiffContainer</a><br />
- <a href="classes/Glsamaker/HTTP.html">Glsamaker::HTTP</a><br />
- <a href="classes/Glsamaker/Portage.html">Glsamaker::Portage</a><br />
- <a href="classes/Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a><br />
- <a href="classes/IndexController.html">IndexController</a><br />
- <a href="classes/IndexHelper.html">IndexHelper</a><br />
- <a href="classes/Reference.html">Reference</a><br />
- <a href="classes/Revision.html">Revision</a><br />
- <a href="classes/SparklinesController.html">SparklinesController</a><br />
- <a href="classes/String.html">String</a><br />
- <a href="classes/ToolsController.html">ToolsController</a><br />
- <a href="classes/ToolsHelper.html">ToolsHelper</a><br />
- <a href="classes/User.html">User</a><br />
- </div>
-</div>
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/fr_file_index.html b/doc/app/fr_file_index.html
deleted file mode 100644
index e1eda18..0000000
--- a/doc/app/fr_file_index.html
+++ /dev/null
@@ -1,50 +0,0 @@
-
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
-
- Files
-
- -->
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Files</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
- <base target="docwin" />
-</head>
-<body>
-<div id="index">
- <h1 class="section-bar">Files</h1>
- <div id="index-entries">
- <a href="files/app/controllers/application_controller_rb.html">app/controllers/application_controller.rb</a><br />
- <a href="files/app/controllers/glsa_controller_rb.html">app/controllers/glsa_controller.rb</a><br />
- <a href="files/app/controllers/index_controller_rb.html">app/controllers/index_controller.rb</a><br />
- <a href="files/app/controllers/sparklines_controller_rb.html">app/controllers/sparklines_controller.rb</a><br />
- <a href="files/app/controllers/tools_controller_rb.html">app/controllers/tools_controller.rb</a><br />
- <a href="files/app/helpers/application_helper_rb.html">app/helpers/application_helper.rb</a><br />
- <a href="files/app/helpers/glsa_helper_rb.html">app/helpers/glsa_helper.rb</a><br />
- <a href="files/app/helpers/index_helper_rb.html">app/helpers/index_helper.rb</a><br />
- <a href="files/app/helpers/tools_helper_rb.html">app/helpers/tools_helper.rb</a><br />
- <a href="files/app/models/bug_rb.html">app/models/bug.rb</a><br />
- <a href="files/app/models/comment_rb.html">app/models/comment.rb</a><br />
- <a href="files/app/models/glsa_rb.html">app/models/glsa.rb</a><br />
- <a href="files/app/models/reference_rb.html">app/models/reference.rb</a><br />
- <a href="files/app/models/revision_rb.html">app/models/revision.rb</a><br />
- <a href="files/app/models/user_rb.html">app/models/user.rb</a><br />
- <a href="files/doc/README_FOR_APP.html">doc/README_FOR_APP</a><br />
- <a href="files/lib/authentication_rb.html">lib/authentication.rb</a><br />
- <a href="files/lib/bugzilla_rb.html">lib/bugzilla.rb</a><br />
- <a href="files/lib/diff_rb.html">lib/diff.rb</a><br />
- <a href="files/lib/glsamaker_rb.html">lib/glsamaker.rb</a><br />
- <a href="files/lib/glsamaker/bugs_rb.html">lib/glsamaker/bugs.rb</a><br />
- <a href="files/lib/glsamaker/diff_rb.html">lib/glsamaker/diff.rb</a><br />
- <a href="files/lib/glsamaker/http_rb.html">lib/glsamaker/http.rb</a><br />
- <a href="files/lib/glsamaker/portage_rb.html">lib/glsamaker/portage.rb</a><br />
- </div>
-</div>
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/fr_method_index.html b/doc/app/fr_method_index.html
deleted file mode 100644
index a736331..0000000
--- a/doc/app/fr_method_index.html
+++ /dev/null
@@ -1,92 +0,0 @@
-
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
-
- Methods
-
- -->
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Methods</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
- <base target="docwin" />
-</head>
-<body>
-<div id="index">
- <h1 class="section-bar">Methods</h1>
- <div id="index-entries">
- <a href="classes/IndexController.html#M000018">about (IndexController)</a><br />
- <a href="classes/Bugzilla/Change.html#M000038">add_change (Bugzilla::Change)</a><br />
- <a href="classes/ToolsController.html#M000013">addbug (ToolsController)</a><br />
- <a href="classes/ToolsController.html#M000014">addbugsave (ToolsController)</a><br />
- <a href="classes/ToolsController.html#M000011">ajaxbugs (ToolsController)</a><br />
- <a href="classes/ToolsController.html#M000012">ajaxdescr (ToolsController)</a><br />
- <a href="classes/ToolsController.html#M000015">background (ToolsController)</a><br />
- <a href="classes/Bug.html#M000034">bug_url (Bug)</a><br />
- <a href="classes/ToolsController.html#M000010">buginfo (ToolsController)</a><br />
- <a href="classes/Bugzilla/History.html#M000041">by_field (Bugzilla::History)</a><br />
- <a href="classes/Bugzilla/History.html#M000042">by_user (Bugzilla::History)</a><br />
- <a href="classes/GlsaController.html#M000009">comment (GlsaController)</a><br />
- <a href="classes/Diff.html#M000031">compact (Diff)</a><br />
- <a href="classes/Diff.html#M000032">compact! (Diff)</a><br />
- <a href="classes/Diff.html#M000026">compactdiffs (Diff)</a><br />
- <a href="classes/GlsaController.html#M000003">create (GlsaController)</a><br />
- <a href="classes/Authentication.html#M000053">current_user (Authentication)</a><br />
- <a href="classes/GlsaController.html#M000008">destroy (GlsaController)</a><br />
- <a href="classes/Diffable.html#M000048">diff (Diffable)</a><br />
- <a href="classes/GlsaController.html#M000007">diff (GlsaController)</a><br />
- <a href="classes/Diff.html#M000029">discarda (Diff)</a><br />
- <a href="classes/Diff.html#M000030">discardb (Diff)</a><br />
- <a href="classes/Glsamaker/Portage/Description.html#M000060">ebuild (Glsamaker::Portage::Description)</a><br />
- <a href="classes/GlsaController.html#M000005">edit (GlsaController)</a><br />
- <a href="classes/Glsamaker/Portage/Description.html#M000061">eix (Glsamaker::Portage::Description)</a><br />
- <a href="classes/IndexController.html#M000017">error (IndexController)</a><br />
- <a href="classes/Bugzilla.html#M000035">find_glsa_bugs (Bugzilla)</a><br />
- <a href="classes/Glsamaker/HTTP.html#M000065">get (Glsamaker::HTTP)</a><br />
- <a href="classes/Glsamaker/Portage.html#M000059">getDescription (Glsamaker::Portage)</a><br />
- <a href="classes/GlsaHelper.html#M000055">glsa_content (GlsaHelper)</a><br />
- <a href="classes/Glsamaker/Portage/Description.html#M000063">google (Glsamaker::Portage::Description)</a><br />
- <a href="classes/Bugzilla/Bug.html#M000045">history (Bugzilla::Bug)</a><br />
- <a href="classes/GlsaHelper.html#M000057">html_diff (GlsaHelper)</a><br />
- <a href="classes/Authentication.html#M000054">included (Authentication)</a><br />
- <a href="classes/GlsaController.html#M000001">index (GlsaController)</a><br />
- <a href="classes/IndexController.html#M000016">index (IndexController)</a><br />
- <a href="classes/SparklinesController.html#M000022">index (SparklinesController)</a><br />
- <a href="classes/Diff.html#M000033">inspect (Diff)</a><br />
- <a href="classes/Glsa.html#M000019">last_revision (Glsa)</a><br />
- <a href="classes/GlsaHelper.html#M000056">lastrev_content (GlsaHelper)</a><br />
- <a href="classes/Diff.html#M000024">lcs (Diff)</a><br />
- <a href="classes/Bugzilla/Bug.html#M000043">load_from_id (Bugzilla::Bug)</a><br />
- <a href="classes/Authentication.html#M000052">login_required (Authentication)</a><br />
- <a href="classes/Diff.html#M000025">makediff (Diff)</a><br />
- <a href="classes/Diff.html#M000028">match (Diff)</a><br />
- <a href="classes/GlsaController.html#M000002">new (GlsaController)</a><br />
- <a href="classes/Bugzilla/History.html#M000040">new (Bugzilla::History)</a><br />
- <a href="classes/Bugzilla/Bug.html#M000046">new (Bugzilla::Bug)</a><br />
- <a href="classes/Diff.html#M000027">new (Diff)</a><br />
- <a href="classes/Bugzilla/Change.html#M000037">new (Bugzilla::Change)</a><br />
- <a href="classes/Bugzilla/Comment.html#M000036">new (Bugzilla::Comment)</a><br />
- <a href="classes/Glsamaker/Diff/DiffContainer.html#M000066">new (Glsamaker::Diff::DiffContainer)</a><br />
- <a href="classes/Glsa.html#M000021">new_request (Glsa)</a><br />
- <a href="classes/Glsa.html#M000020">next_revid (Glsa)</a><br />
- <a href="classes/Diffable.html#M000051">patch (Diffable)</a><br />
- <a href="classes/Glsamaker/Portage/Description.html#M000062">pgo (Glsamaker::Portage::Description)</a><br />
- <a href="classes/Diffable.html#M000050">replacenextlarger (Diffable)</a><br />
- <a href="classes/Diffable.html#M000049">reverse_hash (Diffable)</a><br />
- <a href="classes/GlsaController.html#M000004">show (GlsaController)</a><br />
- <a href="classes/SparklinesController.html#M000023">show (SparklinesController)</a><br />
- <a href="classes/ApplicationHelper.html#M000058">simple_format_without_paragraph (ApplicationHelper)</a><br />
- <a href="classes/Bugzilla/Bug.html#M000047">str2bugIDs (Bugzilla::Bug)</a><br />
- <a href="classes/Bugzilla/Change.html#M000039">to_s (Bugzilla::Change)</a><br />
- <a href="classes/GlsaController.html#M000006">update (GlsaController)</a><br />
- <a href="classes/Bugzilla/Bug.html#M000044">url (Bugzilla::Bug)</a><br />
- <a href="classes/Glsamaker/Portage/Description.html#M000064">validAtom? (Glsamaker::Portage::Description)</a><br />
- </div>
-</div>
-</body>
-</html> \ No newline at end of file
diff --git a/doc/app/images/brick.png b/doc/app/images/brick.png
new file mode 100644
index 0000000..7851cf3
--- /dev/null
+++ b/doc/app/images/brick.png
Binary files differ
diff --git a/doc/app/images/brick_link.png b/doc/app/images/brick_link.png
new file mode 100644
index 0000000..9ebf013
--- /dev/null
+++ b/doc/app/images/brick_link.png
Binary files differ
diff --git a/doc/app/images/bug.png b/doc/app/images/bug.png
new file mode 100644
index 0000000..2d5fb90
--- /dev/null
+++ b/doc/app/images/bug.png
Binary files differ
diff --git a/doc/app/images/bullet_black.png b/doc/app/images/bullet_black.png
new file mode 100644
index 0000000..5761970
--- /dev/null
+++ b/doc/app/images/bullet_black.png
Binary files differ
diff --git a/doc/app/images/bullet_toggle_minus.png b/doc/app/images/bullet_toggle_minus.png
new file mode 100644
index 0000000..b47ce55
--- /dev/null
+++ b/doc/app/images/bullet_toggle_minus.png
Binary files differ
diff --git a/doc/app/images/bullet_toggle_plus.png b/doc/app/images/bullet_toggle_plus.png
new file mode 100644
index 0000000..9ab4a89
--- /dev/null
+++ b/doc/app/images/bullet_toggle_plus.png
Binary files differ
diff --git a/doc/app/images/date.png b/doc/app/images/date.png
new file mode 100644
index 0000000..783c833
--- /dev/null
+++ b/doc/app/images/date.png
Binary files differ
diff --git a/doc/app/images/find.png b/doc/app/images/find.png
new file mode 100644
index 0000000..1547479
--- /dev/null
+++ b/doc/app/images/find.png
Binary files differ
diff --git a/doc/app/images/loadingAnimation.gif b/doc/app/images/loadingAnimation.gif
new file mode 100644
index 0000000..82290f4
--- /dev/null
+++ b/doc/app/images/loadingAnimation.gif
Binary files differ
diff --git a/doc/app/images/macFFBgHack.png b/doc/app/images/macFFBgHack.png
new file mode 100644
index 0000000..c6473b3
--- /dev/null
+++ b/doc/app/images/macFFBgHack.png
Binary files differ
diff --git a/doc/app/images/package.png b/doc/app/images/package.png
new file mode 100644
index 0000000..da3c2a2
--- /dev/null
+++ b/doc/app/images/package.png
Binary files differ
diff --git a/doc/app/images/page_green.png b/doc/app/images/page_green.png
new file mode 100644
index 0000000..de8e003
--- /dev/null
+++ b/doc/app/images/page_green.png
Binary files differ
diff --git a/doc/app/images/page_white_text.png b/doc/app/images/page_white_text.png
new file mode 100644
index 0000000..813f712
--- /dev/null
+++ b/doc/app/images/page_white_text.png
Binary files differ
diff --git a/doc/app/images/page_white_width.png b/doc/app/images/page_white_width.png
new file mode 100644
index 0000000..1eb8809
--- /dev/null
+++ b/doc/app/images/page_white_width.png
Binary files differ
diff --git a/doc/app/images/plugin.png b/doc/app/images/plugin.png
new file mode 100644
index 0000000..6187b15
--- /dev/null
+++ b/doc/app/images/plugin.png
Binary files differ
diff --git a/doc/app/images/ruby.png b/doc/app/images/ruby.png
new file mode 100644
index 0000000..f763a16
--- /dev/null
+++ b/doc/app/images/ruby.png
Binary files differ
diff --git a/doc/app/images/tag_green.png b/doc/app/images/tag_green.png
new file mode 100644
index 0000000..83ec984
--- /dev/null
+++ b/doc/app/images/tag_green.png
Binary files differ
diff --git a/doc/app/images/wrench.png b/doc/app/images/wrench.png
new file mode 100644
index 0000000..5c8213f
--- /dev/null
+++ b/doc/app/images/wrench.png
Binary files differ
diff --git a/doc/app/images/wrench_orange.png b/doc/app/images/wrench_orange.png
new file mode 100644
index 0000000..565a933
--- /dev/null
+++ b/doc/app/images/wrench_orange.png
Binary files differ
diff --git a/doc/app/images/zoom.png b/doc/app/images/zoom.png
new file mode 100644
index 0000000..908612e
--- /dev/null
+++ b/doc/app/images/zoom.png
Binary files differ
diff --git a/doc/app/index.html b/doc/app/index.html
index bf4361d..97d1bec 100644
--- a/doc/app/index.html
+++ b/doc/app/index.html
@@ -1,24 +1,612 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<!--
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
- Rails Application Documentation
+ <title>GLSAMaker 2</title>
+
+ <link type="text/css" media="screen" href="rdoc.css" rel="stylesheet" />
+
+ <script src="js/jquery.js" type="text/javascript" charset="utf-8"></script>
+ <script src="js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
+ <script src="js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
+ <script src="js/darkfish.js" type="text/javascript" charset="utf-8"></script>
- -->
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Rails Application Documentation</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
-<frameset rows="20%, 80%">
- <frameset cols="25%,35%,45%">
- <frame src="fr_file_index.html" title="Files" name="Files" />
- <frame src="fr_class_index.html" name="Classes" />
- <frame src="fr_method_index.html" name="Methods" />
- </frameset>
- <frame src="files/doc/README_FOR_APP.html" name="docwin" />
-</frameset>
-</html> \ No newline at end of file
+<body class="indexpage">
+
+
+ <h1>GLSAMaker 2</h1>
+
+
+ <p>This is the API documentation for 'GLSAMaker 2'.</p>
+
+
+
+
+ <h2>Files</h2>
+ <ul>
+
+ <li class="file"><a href="doc/README_FOR_APP.html">README_FOR_APP</a></li>
+
+ </ul>
+
+
+ <h2 id="classes">Classes/Modules</h2>
+ <ul>
+
+ <li class="module"><a href="Glsamaker.html">Glsamaker</a></li>
+
+ <li class="module"><a href="Glsamaker/Bugs.html">Glsamaker::Bugs</a></li>
+
+ <li class="module"><a href="Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li class="class"><a href="Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li>
+
+ <li class="module"><a href="Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li class="class"><a href="Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li>
+
+ <li class="module"><a href="Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li class="module"><a href="Glsamaker/Diff.html">Glsamaker::Diff</a></li>
+
+ <li class="module"><a href="Glsamaker/HTTP.html">Glsamaker::HTTP</a></li>
+
+ <li class="class"><a href="Glsamaker/Helper.html">Glsamaker::Helper</a></li>
+
+ <li class="module"><a href="Glsamaker/Mail.html">Glsamaker::Mail</a></li>
+
+ <li class="module"><a href="Glsamaker/Portage.html">Glsamaker::Portage</a></li>
+
+ <li class="class"><a href="Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li>
+
+ <li class="module"><a href="Glsamaker/XML.html">Glsamaker::XML</a></li>
+
+ <li class="module"><a href="Admin.html">Admin</a></li>
+
+ <li class="class"><a href="Admin/IndexController.html">Admin::IndexController</a></li>
+
+ <li class="module"><a href="Admin/IndexHelper.html">Admin::IndexHelper</a></li>
+
+ <li class="class"><a href="Admin/TemplatesController.html">Admin::TemplatesController</a></li>
+
+ <li class="module"><a href="Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li>
+
+ <li class="class"><a href="Admin/UsersController.html">Admin::UsersController</a></li>
+
+ <li class="module"><a href="Admin/UsersHelper.html">Admin::UsersHelper</a></li>
+
+ <li class="module"><a href="Bugzilla.html">Bugzilla</a></li>
+
+ <li class="class"><a href="Bugzilla/Bug.html">Bugzilla::Bug</a></li>
+
+ <li class="module"><a href="Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li>
+
+ <li class="module"><a href="Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li>
+
+ <li class="class"><a href="Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li class="class"><a href="Bugzilla/Comment.html">Bugzilla::Comment</a></li>
+
+ <li class="class"><a href="Bugzilla/History.html">Bugzilla::History</a></li>
+
+ <li class="class"><a href="Comment.html">Comment</a></li>
+
+ <li class="class"><a href="Comment/CommentValidator.html">Comment::CommentValidator</a></li>
+
+ <li class="class"><a href="ApplicationController.html">ApplicationController</a></li>
+
+ <li class="module"><a href="ApplicationHelper.html">ApplicationHelper</a></li>
+
+ <li class="module"><a href="Authentication.html">Authentication</a></li>
+
+ <li class="module"><a href="Authorization.html">Authorization</a></li>
+
+ <li class="class"><a href="Bug.html">Bug</a></li>
+
+ <li class="class"><a href="BugController.html">BugController</a></li>
+
+ <li class="module"><a href="BugHelper.html">BugHelper</a></li>
+
+ <li class="class"><a href="BugsController.html">BugsController</a></li>
+
+ <li class="module"><a href="BugsHelper.html">BugsHelper</a></li>
+
+ <li class="class"><a href="CommentsController.html">CommentsController</a></li>
+
+ <li class="module"><a href="CommentsHelper.html">CommentsHelper</a></li>
+
+ <li class="class"><a href="Cpe.html">Cpe</a></li>
+
+ <li class="class"><a href="Cve.html">Cve</a></li>
+
+ <li class="class"><a href="CveAssignment.html">CveAssignment</a></li>
+
+ <li class="class"><a href="CveChange.html">CveChange</a></li>
+
+ <li class="class"><a href="CveComment.html">CveComment</a></li>
+
+ <li class="class"><a href="CveController.html">CveController</a></li>
+
+ <li class="module"><a href="CveHelper.html">CveHelper</a></li>
+
+ <li class="class"><a href="CveReference.html">CveReference</a></li>
+
+ <li class="class"><a href="GLSAReleaseError.html">GLSAReleaseError</a></li>
+
+ <li class="class"><a href="Glsa.html">Glsa</a></li>
+
+ <li class="class"><a href="GlsaController.html">GlsaController</a></li>
+
+ <li class="module"><a href="GlsaHelper.html">GlsaHelper</a></li>
+
+ <li class="class"><a href="GlsaMailer.html">GlsaMailer</a></li>
+
+ <li class="class"><a href="IndexController.html">IndexController</a></li>
+
+ <li class="module"><a href="IndexHelper.html">IndexHelper</a></li>
+
+ <li class="class"><a href="Package.html">Package</a></li>
+
+ <li class="class"><a href="Reference.html">Reference</a></li>
+
+ <li class="class"><a href="Revision.html">Revision</a></li>
+
+ <li class="class"><a href="SearchController.html">SearchController</a></li>
+
+ <li class="module"><a href="SearchHelper.html">SearchHelper</a></li>
+
+ <li class="class"><a href="String.html">String</a></li>
+
+ <li class="class"><a href="Template.html">Template</a></li>
+
+ <li class="class"><a href="ToolsController.html">ToolsController</a></li>
+
+ <li class="module"><a href="ToolsHelper.html">ToolsHelper</a></li>
+
+ <li class="class"><a href="User.html">User</a></li>
+
+ </ul>
+
+ <h2 id="methods">Methods</h2>
+ <ul>
+
+ <li><a href="Cve.html#method-c-concat">::concat &mdash; Cve</a></li>
+
+ <li><a href="Glsamaker/Portage/Description.html#method-c-ebuild">::ebuild &mdash; Glsamaker::Portage::Description</a></li>
+
+ <li><a href="Glsamaker/Portage/Description.html#method-c-eix">::eix &mdash; Glsamaker::Portage::Description</a></li>
+
+ <li><a href="Glsamaker/HTTP.html#method-c-get">::get &mdash; Glsamaker::HTTP</a></li>
+
+ <li><a href="Glsamaker/Portage/Description.html#method-c-google">::google &mdash; Glsamaker::Portage::Description</a></li>
+
+ <li><a href="Authentication.html#method-c-included">::included &mdash; Authentication</a></li>
+
+ <li><a href="Bugzilla/Bug.html#method-c-load_from_id">::load_from_id &mdash; Bugzilla::Bug</a></li>
+
+ <li><a href="Bugzilla/Comment.html#method-c-new">::new &mdash; Bugzilla::Comment</a></li>
+
+ <li><a href="Bugzilla/Bugzilla/Bugzilla/Change.html#method-c-new">::new &mdash; Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="Bugzilla/Bug.html#method-c-new">::new &mdash; Bugzilla::Bug</a></li>
+
+ <li><a href="Bugzilla/History.html#method-c-new">::new &mdash; Bugzilla::History</a></li>
+
+ <li><a href="Glsamaker/Bugs/Status.html#method-c-new">::new &mdash; Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="Glsa.html#method-c-new_request">::new_request &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-c-next_id">::next_id &mdash; Glsa</a></li>
+
+ <li><a href="Glsamaker/Portage/Description.html#method-c-pgo">::pgo &mdash; Glsamaker::Portage::Description</a></li>
+
+ <li><a href="Bugzilla/Bug.html#method-c-str2bugIDs">::str2bugIDs &mdash; Bugzilla::Bug</a></li>
+
+ <li><a href="Glsamaker/Bugs/Status.html#method-i-3C-3D-3E">#<=> &mdash; Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="IndexController.html#method-i-about">#about &mdash; IndexController</a></li>
+
+ <li><a href="Admin/UsersHelper.html#method-i-access_list">#access_list &mdash; Admin::UsersHelper</a></li>
+
+ <li><a href="Admin/UsersHelper.html#method-i-access_string">#access_string &mdash; Admin::UsersHelper</a></li>
+
+ <li><a href="CveController.html#method-i-actions">#actions &mdash; CveController</a></li>
+
+ <li><a href="Bugzilla/Bugzilla/Bugzilla/Change.html#method-i-add_change">#add_change &mdash; Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="Bugzilla.html#method-i-add_comment">#add_comment &mdash; Bugzilla</a></li>
+
+ <li><a href="Cve.html#method-i-add_comment">#add_comment &mdash; Cve</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-add_reference_link">#add_reference_link &mdash; GlsaHelper</a></li>
+
+ <li><a href="Glsa.html#method-i-add_references">#add_references &mdash; Glsa</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-add_unaffected_package_link">#add_unaffected_package_link &mdash; GlsaHelper</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-add_vulnerable_package_link">#add_vulnerable_package_link &mdash; GlsaHelper</a></li>
+
+ <li><a href="Authentication.html#method-i-admin_access_required">#admin_access_required &mdash; Authentication</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-adv_wrap">#adv_wrap &mdash; GlsaHelper</a></li>
+
+ <li><a href="GlsaMailer.html#method-i-approval">#approval &mdash; GlsaMailer</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-approval_icon">#approval_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="Glsamaker/Mail.html#method-i-approval_notification">#approval_notification &mdash; Glsamaker::Mail</a></li>
+
+ <li><a href="Glsa.html#method-i-approval_status">#approval_status &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-approvals">#approvals &mdash; Glsa</a></li>
+
+ <li><a href="Glsamaker/Bugs/ArchesMixin.html#method-i-arch_cc">#arch_cc &mdash; Glsamaker::Bugs::ArchesMixin</a></li>
+
+ <li><a href="GlsaController.html#method-i-archive">#archive &mdash; GlsaController</a></li>
+
+ <li><a href="CveController.html#method-i-assign">#assign &mdash; CveController</a></li>
+
+ <li><a href="Cve.html#method-i-assign">#assign &mdash; Cve</a></li>
+
+ <li><a href="CveController.html#method-i-assign_preview">#assign_preview &mdash; CveController</a></li>
+
+ <li><a href="ToolsController.html#method-i-background">#background &mdash; ToolsController</a></li>
+
+ <li><a href="Glsamaker/Bugs/Status.html#method-i-blocked-3F">#blocked? &mdash; Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="String.html#method-i-bold">#bold &mdash; String</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-box_title">#box_title &mdash; ApplicationHelper</a></li>
+
+ <li><a href="CveController.html#method-i-bug">#bug &mdash; CveController</a></li>
+
+ <li><a href="BugController.html#method-i-bug">#bug &mdash; BugController</a></li>
+
+ <li><a href="CveController.html#method-i-bug_package">#bug_package &mdash; CveController</a></li>
+
+ <li><a href="CveController.html#method-i-bug_preview">#bug_preview &mdash; CveController</a></li>
+
+ <li><a href="Glsamaker/Bugs/BugReadyMixin.html#method-i-bug_ready-3F">#bug_ready? &mdash; Glsamaker::Bugs::BugReadyMixin</a></li>
+
+ <li><a href="Revision.html#method-i-bug_ready-3F">#bug_ready? &mdash; Revision</a></li>
+
+ <li><a href="Bug.html#method-i-bug_url">#bug_url &mdash; Bug</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-bugready_icon">#bugready_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="ToolsController.html#method-i-bugs_ajax_info">#bugs_ajax_info &mdash; ToolsController</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-bugs_unify_cvenames">#bugs_unify_cvenames &mdash; ApplicationHelper</a></li>
+
+ <li><a href="Bugzilla/History.html#method-i-by_field">#by_field &mdash; Bugzilla::History</a></li>
+
+ <li><a href="Bugzilla/History.html#method-i-by_user">#by_user &mdash; Bugzilla::History</a></li>
+
+ <li><a href="User.html#method-i-can_access-3F">#can_access? &mdash; User</a></li>
+
+ <li><a href="Bug.html#method-i-cc">#cc &mdash; Bug</a></li>
+
+ <li><a href="Glsamaker/Bugs/Bug.html#method-i-cc">#cc &mdash; Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="CveController.html#method-i-changes">#changes &mdash; CveController</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-check_icon">#check_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="Authorization.html#method-i-check_object_access">#check_object_access &mdash; Authorization</a></li>
+
+ <li><a href="Authorization.html#method-i-check_object_access-21">#check_object_access! &mdash; Authorization</a></li>
+
+ <li><a href="Cve.html#method-i-colorize">#colorize &mdash; Cve</a></li>
+
+ <li><a href="GlsaController.html#method-i-comment">#comment &mdash; GlsaController</a></li>
+
+ <li><a href="GlsaMailer.html#method-i-comment">#comment &mdash; GlsaMailer</a></li>
+
+ <li><a href="Glsamaker/Mail.html#method-i-comment_notification">#comment_notification &mdash; Glsamaker::Mail</a></li>
+
+ <li><a href="CveController.html#method-i-comments">#comments &mdash; CveController</a></li>
+
+ <li><a href="GlsaController.html#method-i-create">#create &mdash; GlsaController</a></li>
+
+ <li><a href="BugsController.html#method-i-create">#create &mdash; BugsController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-create">#create &mdash; Admin::UsersController</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-create">#create &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="CommentsController.html#method-i-create">#create &mdash; CommentsController</a></li>
+
+ <li><a href="Authentication.html#method-i-current_user">#current_user &mdash; Authentication</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-cveify_bug_title">#cveify_bug_title &mdash; ApplicationHelper</a></li>
+
+ <li><a href="Revision.html#method-i-deep_copy">#deep_copy &mdash; Revision</a></li>
+
+ <li><a href="Authorization.html#method-i-deny_access">#deny_access &mdash; Authorization</a></li>
+
+ <li><a href="Bugzilla/Bug.html#method-i-description">#description &mdash; Bugzilla::Bug</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-destroy">#destroy &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-destroy">#destroy &mdash; Admin::UsersController</a></li>
+
+ <li><a href="CommentsController.html#method-i-destroy">#destroy &mdash; CommentsController</a></li>
+
+ <li><a href="BugsController.html#method-i-destroy">#destroy &mdash; BugsController</a></li>
+
+ <li><a href="GlsaController.html#method-i-destroy">#destroy &mdash; GlsaController</a></li>
+
+ <li><a href="GlsaController.html#method-i-diff">#diff &mdash; GlsaController</a></li>
+
+ <li><a href="Glsamaker/Diff.html#method-i-diff">#diff &mdash; Glsamaker::Diff</a></li>
+
+ <li><a href="GlsaController.html#method-i-download">#download &mdash; GlsaController</a></li>
+
+ <li><a href="GlsaController.html#method-i-drafts">#drafts &mdash; GlsaController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-edit">#edit &mdash; Admin::UsersController</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-edit">#edit &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="GlsaController.html#method-i-edit">#edit &mdash; GlsaController</a></li>
+
+ <li><a href="GlsaMailer.html#method-i-edit">#edit &mdash; GlsaMailer</a></li>
+
+ <li><a href="Glsamaker/Mail.html#method-i-edit_notification">#edit_notification &mdash; Glsamaker::Mail</a></li>
+
+ <li><a href="IndexController.html#method-i-error">#error &mdash; IndexController</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-error_msg">#error_msg &mdash; ApplicationHelper</a></li>
+
+ <li><a href="Bugzilla.html#method-i-file_bug">#file_bug &mdash; Bugzilla</a></li>
+
+ <li><a href="Glsamaker/Portage.html#method-i-find_packages">#find_packages &mdash; Glsamaker::Portage</a></li>
+
+ <li><a href="CveController.html#method-i-general_info">#general_info &mdash; CveController</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-get_bug_cves">#get_bug_cves &mdash; ApplicationHelper</a></li>
+
+ <li><a href="Glsamaker/Portage.html#method-i-get_description">#get_description &mdash; Glsamaker::Portage</a></li>
+
+ <li><a href="Revision.html#method-i-get_linked_bugs">#get_linked_bugs &mdash; Revision</a></li>
+
+ <li><a href="Glsamaker/Portage.html#method-i-get_maintainers">#get_maintainers &mdash; Glsamaker::Portage</a></li>
+
+ <li><a href="Glsamaker/Portage.html#method-i-get_metadata">#get_metadata &mdash; Glsamaker::Portage</a></li>
+
+ <li><a href="User.html#method-i-get_pref_category">#get_pref_category &mdash; User</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-glsa_content">#glsa_content &mdash; GlsaHelper</a></li>
+
+ <li><a href="String.html#method-i-green">#green &mdash; String</a></li>
+
+ <li><a href="Glsa.html#method-i-has_comments-3F">#has_comments? &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-has_pending_comments-3F">#has_pending_comments? &mdash; Glsa</a></li>
+
+ <li><a href="Glsamaker.html#method-i-help">#help &mdash; Glsamaker</a></li>
+
+ <li><a href="Bugzilla/Bug.html#method-i-history">#history &mdash; Bugzilla::Bug</a></li>
+
+ <li><a href="BugController.html#method-i-history">#history &mdash; BugController</a></li>
+
+ <li><a href="GlsaController.html#method-i-import_references">#import_references &mdash; GlsaController</a></li>
+
+ <li><a href="Glsamaker/XML.html#method-i-indent">#indent &mdash; Glsamaker::XML</a></li>
+
+ <li><a href="IndexController.html#method-i-index">#index &mdash; IndexController</a></li>
+
+ <li><a href="Admin/IndexController.html#method-i-index">#index &mdash; Admin::IndexController</a></li>
+
+ <li><a href="SearchController.html#method-i-index">#index &mdash; SearchController</a></li>
+
+ <li><a href="CveController.html#method-i-index">#index &mdash; CveController</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-index">#index &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-index">#index &mdash; Admin::UsersController</a></li>
+
+ <li><a href="CveController.html#method-i-info">#info &mdash; CveController</a></li>
+
+ <li><a href="CveController.html#method-i-invalid">#invalid &mdash; CveController</a></li>
+
+ <li><a href="Cve.html#method-i-invalidate">#invalidate &mdash; Cve</a></li>
+
+ <li><a href="Glsa.html#method-i-invalidate_last_revision_cache">#invalidate_last_revision_cache &mdash; Glsa</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-is_approval_icon">#is_approval_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="Glsa.html#method-i-is_approved-3F">#is_approved? &mdash; Glsa</a></li>
+
+ <li><a href="User.html#method-i-is_el_jefe-3F">#is_el_jefe? &mdash; User</a></li>
+
+ <li><a href="Glsa.html#method-i-is_owner-3F">#is_owner? &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-last_release_revision">#last_release_revision &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-last_revision">#last_revision &mdash; Glsa</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-lastrev_content">#lastrev_content &mdash; GlsaHelper</a></li>
+
+ <li><a href="CveController.html#method-i-later">#later &mdash; CveController</a></li>
+
+ <li><a href="Cve.html#method-i-later">#later &mdash; Cve</a></li>
+
+ <li><a href="BugHelper.html#method-i-linkify_comment">#linkify_comment &mdash; BugHelper</a></li>
+
+ <li><a href="CveController.html#method-i-list">#list &mdash; CveController</a></li>
+
+ <li><a href="ApplicationController.html#method-i-log_error">#log_error &mdash; ApplicationController</a></li>
+
+ <li><a href="Bugzilla.html#method-i-log_in">#log_in &mdash; Bugzilla</a></li>
+
+ <li><a href="Authorization.html#method-i-log_unauthorized_access">#log_unauthorized_access &mdash; Authorization</a></li>
+
+ <li><a href="Authentication.html#method-i-login_required">#login_required &mdash; Authentication</a></li>
+
+ <li><a href="Cve.html#method-i-mark_new">#mark_new &mdash; Cve</a></li>
+
+ <li><a href="CveController.html#method-i-mark_new">#mark_new &mdash; CveController</a></li>
+
+ <li><a href="BugsController.html#method-i-new">#new &mdash; BugsController</a></li>
+
+ <li><a href="CommentsController.html#method-i-new">#new &mdash; CommentsController</a></li>
+
+ <li><a href="GlsaController.html#method-i-new">#new &mdash; GlsaController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-new">#new &mdash; Admin::UsersController</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-new">#new &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="GlsaMailer.html#method-i-new_request">#new_request &mdash; GlsaMailer</a></li>
+
+ <li><a href="Glsa.html#method-i-next_releaseid">#next_releaseid &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-next_revid">#next_revid &mdash; Glsa</a></li>
+
+ <li><a href="Cve.html#method-i-nfu">#nfu &mdash; Cve</a></li>
+
+ <li><a href="CveController.html#method-i-nfu">#nfu &mdash; CveController</a></li>
+
+ <li><a href="CveController.html#method-i-note">#note &mdash; CveController</a></li>
+
+ <li><a href="Glsamaker/Bugs/Status.html#method-i-overdue-3F">#overdue? &mdash; Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="Cve.html#method-i-package_hints">#package_hints &mdash; Cve</a></li>
+
+ <li><a href="CveController.html#method-i-packages">#packages &mdash; CveController</a></li>
+
+ <li><a href="Revision.html#method-i-packages_by_atom">#packages_by_atom &mdash; Revision</a></li>
+
+ <li><a href="Glsamaker/Bugs/Status.html#method-i-pending-3F">#pending? &mdash; Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="Glsamaker/Portage.html#method-i-portdir">#portdir &mdash; Glsamaker::Portage</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-prefixed_item">#prefixed_item &mdash; GlsaHelper</a></li>
+
+ <li><a href="GlsaController.html#method-i-prepare_release">#prepare_release &mdash; GlsaController</a></li>
+
+ <li><a href="Cpe.html#method-i-product">#product &mdash; Cpe</a></li>
+
+ <li><a href="IndexController.html#method-i-profile">#profile &mdash; IndexController</a></li>
+
+ <li><a href="String.html#method-i-purple">#purple &mdash; String</a></li>
+
+ <li><a href="String.html#method-i-red">#red &mdash; String</a></li>
+
+ <li><a href="CveController.html#method-i-references">#references &mdash; CveController</a></li>
+
+ <li><a href="Glsa.html#method-i-rejections">#rejections &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-related_cves">#related_cves &mdash; Glsa</a></li>
+
+ <li><a href="Glsa.html#method-i-release">#release &mdash; Glsa</a></li>
+
+ <li><a href="GlsaController.html#method-i-release">#release &mdash; GlsaController</a></li>
+
+ <li><a href="Glsa.html#method-i-release-21">#release! &mdash; Glsa</a></li>
+
+ <li><a href="Glsamaker/Mail.html#method-i-request_notification">#request_notification &mdash; Glsamaker::Mail</a></li>
+
+ <li><a href="GlsaController.html#method-i-requests">#requests &mdash; GlsaController</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-restricted_icon">#restricted_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="SearchController.html#method-i-results">#results &mdash; SearchController</a></li>
+
+ <li><a href="GlsaController.html#method-i-rev_diff">#rev_diff &mdash; GlsaController</a></li>
+
+ <li><a href="Cve.html#method-i-search">#search &mdash; Cve</a></li>
+
+ <li><a href="Glsamaker/Bugs/StatusMixin.html#method-i-secbug_status">#secbug_status &mdash; Glsamaker::Bugs::StatusMixin</a></li>
+
+ <li><a href="Glsamaker/Mail.html#method-i-send_text">#send_text &mdash; Glsamaker::Mail</a></li>
+
+ <li><a href="BugsController.html#method-i-show">#show &mdash; BugsController</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-show">#show &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="CommentsController.html#method-i-show">#show &mdash; CommentsController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-show">#show &mdash; Admin::UsersController</a></li>
+
+ <li><a href="GlsaController.html#method-i-show">#show &mdash; GlsaController</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-simple_format_without_paragraph">#simple_format_without_paragraph &mdash; ApplicationHelper</a></li>
+
+ <li><a href="Cpe.html#method-i-split">#split &mdash; Cpe</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-status_icon">#status_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="Admin/TemplatesHelper.html#method-i-target_list">#target_list &mdash; Admin::TemplatesHelper</a></li>
+
+ <li><a href="ToolsController.html#method-i-template">#template &mdash; ToolsController</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-template_popups">#template_popups &mdash; GlsaHelper</a></li>
+
+ <li><a href="Bugzilla/Bugzilla/Bugzilla/Change.html#method-i-to_s">#to_s &mdash; Bugzilla::Bugzilla::Bugzilla::Change</a></li>
+
+ <li><a href="Cve.html#method-i-to_s">#to_s &mdash; Cve</a></li>
+
+ <li><a href="User.html#method-i-to_s">#to_s &mdash; User</a></li>
+
+ <li><a href="Glsamaker/Bugs/Status.html#method-i-to_s">#to_s &mdash; Glsamaker::Bugs::Status</a></li>
+
+ <li><a href="Revision.html#method-i-to_s">#to_s &mdash; Revision</a></li>
+
+ <li><a href="IndexController.html#method-i-update">#update &mdash; IndexController</a></li>
+
+ <li><a href="Admin/UsersController.html#method-i-update">#update &mdash; Admin::UsersController</a></li>
+
+ <li><a href="GlsaController.html#method-i-update">#update &mdash; GlsaController</a></li>
+
+ <li><a href="Admin/TemplatesController.html#method-i-update">#update &mdash; Admin::TemplatesController</a></li>
+
+ <li><a href="Bugzilla.html#method-i-update_bug">#update_bug &mdash; Bugzilla</a></li>
+
+ <li><a href="GlsaController.html#method-i-update_cache">#update_cache &mdash; GlsaController</a></li>
+
+ <li><a href="Revision.html#method-i-update_cached_bug_metadata">#update_cached_bug_metadata &mdash; Revision</a></li>
+
+ <li><a href="Bug.html#method-i-update_cached_metadata">#update_cached_metadata &mdash; Bug</a></li>
+
+ <li><a href="Cve.html#method-i-url">#url &mdash; Cve</a></li>
+
+ <li><a href="Glsamaker/Portage.html#method-i-valid_atom-3F">#valid_atom? &mdash; Glsamaker::Portage</a></li>
+
+ <li><a href="Comment/CommentValidator.html#method-i-validate">#validate &mdash; Comment::CommentValidator</a></li>
+
+ <li><a href="Cpe.html#method-i-vendor">#vendor &mdash; Cpe</a></li>
+
+ <li><a href="Cpe.html#method-i-version">#version &mdash; Cpe</a></li>
+
+ <li><a href="CveHelper.html#method-i-view_mask_to_condition">#view_mask_to_condition &mdash; CveHelper</a></li>
+
+ <li><a href="Glsamaker/Bugs/Bug.html#method-i-whiteboard">#whiteboard &mdash; Glsamaker::Bugs::Bug</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-whiteboard_to_severity">#whiteboard_to_severity &mdash; ApplicationHelper</a></li>
+
+ <li><a href="ApplicationHelper.html#method-i-with_format">#with_format &mdash; ApplicationHelper</a></li>
+
+ <li><a href="GlsaHelper.html#method-i-workflow_icon">#workflow_icon &mdash; GlsaHelper</a></li>
+
+ <li><a href="Glsa.html#method-i-workflow_status">#workflow_status &mdash; Glsa</a></li>
+
+ <li><a href="Package.html#method-i-xml_comp">#xml_comp &mdash; Package</a></li>
+
+ <li><a href="Bugzilla.html#method-i-xmlrpc_client">#xmlrpc_client &mdash; Bugzilla</a></li>
+
+ </ul>
+
+ <div id="validator-badges">
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
+ Rdoc Generator</a> 2</small>.</p>
+ </div>
+</body>
+</html>
diff --git a/doc/app/js/darkfish.js b/doc/app/js/darkfish.js
new file mode 100644
index 0000000..84565c1
--- /dev/null
+++ b/doc/app/js/darkfish.js
@@ -0,0 +1,116 @@
+/**
+ *
+ * Darkfish Page Functions
+ * $Id: darkfish.js 53 2009-01-07 02:52:03Z deveiant $
+ *
+ * Author: Michael Granger <mgranger@laika.com>
+ *
+ */
+
+/* Provide console simulation for firebug-less environments */
+if (!("console" in window) || !("firebug" in console)) {
+ var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
+ "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
+
+ window.console = {};
+ for (var i = 0; i < names.length; ++i)
+ window.console[names[i]] = function() {};
+};
+
+
+/**
+ * Unwrap the first element that matches the given @expr@ from the targets and return them.
+ */
+$.fn.unwrap = function( expr ) {
+ return this.each( function() {
+ $(this).parents( expr ).eq( 0 ).after( this ).remove();
+ });
+};
+
+
+function showSource( e ) {
+ var target = e.target;
+ var codeSections = $(target).
+ parents('.method-detail').
+ find('.method-source-code');
+
+ $(target).
+ parents('.method-detail').
+ find('.method-source-code').
+ slideToggle();
+};
+
+function hookSourceViews() {
+ $('.method-description,.method-heading').click( showSource );
+};
+
+function toggleDebuggingSection() {
+ $('.debugging-section').slideToggle();
+};
+
+function hookDebuggingToggle() {
+ $('#debugging-toggle img').click( toggleDebuggingSection );
+};
+
+function hookQuickSearch() {
+ $('.quicksearch-field').each( function() {
+ var searchElems = $(this).parents('.section').find( 'li' );
+ var toggle = $(this).parents('.section').find('h3 .search-toggle');
+ // console.debug( "Toggle is: %o", toggle );
+ var qsbox = $(this).parents('form').get( 0 );
+
+ $(this).quicksearch( this, searchElems, {
+ noSearchResultsIndicator: 'no-class-search-results',
+ focusOnLoad: false
+ });
+ $(toggle).click( function() {
+ // console.debug( "Toggling qsbox: %o", qsbox );
+ $(qsbox).toggle();
+ });
+ });
+};
+
+function highlightTarget( anchor ) {
+ console.debug( "Highlighting target '%s'.", anchor );
+
+ $("a[name=" + anchor + "]").each( function() {
+ if ( !$(this).parent().parent().hasClass('target-section') ) {
+ console.debug( "Wrapping the target-section" );
+ $('div.method-detail').unwrap( 'div.target-section' );
+ $(this).parent().wrap( '<div class="target-section"></div>' );
+ } else {
+ console.debug( "Already wrapped." );
+ }
+ });
+};
+
+function highlightLocationTarget() {
+ console.debug( "Location hash: %s", window.location.hash );
+ if ( ! window.location.hash || window.location.hash.length == 0 ) return;
+
+ var anchor = window.location.hash.substring(1);
+ console.debug( "Found anchor: %s; matching %s", anchor, "a[name=" + anchor + "]" );
+
+ highlightTarget( anchor );
+};
+
+function highlightClickTarget( event ) {
+ console.debug( "Highlighting click target for event %o", event.target );
+ try {
+ var anchor = $(event.target).attr( 'href' ).substring(1);
+ console.debug( "Found target anchor: %s", anchor );
+ highlightTarget( anchor );
+ } catch ( err ) {
+ console.error( "Exception while highlighting: %o", err );
+ };
+};
+
+
+$(document).ready( function() {
+ hookSourceViews();
+ hookDebuggingToggle();
+ hookQuickSearch();
+ highlightLocationTarget();
+
+ $('ul.link-list a').bind( "click", highlightClickTarget );
+});
diff --git a/doc/app/js/jquery.js b/doc/app/js/jquery.js
new file mode 100644
index 0000000..afe9e74
--- /dev/null
+++ b/doc/app/js/jquery.js
@@ -0,0 +1,32 @@
+/*
+ * jQuery 1.2.6 - New Wave Javascript
+ *
+ * Copyright (c) 2008 John Resig (jquery.com)
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
+ * and GPL (GPL-LICENSE.txt) licenses.
+ *
+ * $Date: 2008-09-25 09:50:52 -0700 (Thu, 25 Sep 2008) $
+ * $Rev: 38 $
+ */
+(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else
+return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else
+return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else
+selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value;if(one)return value;values.push(value);}}return values;}else
+return(this[0].value||"").replace(/\r/g,"");}return undefined;}if(value.constructor==Number)value+='';return this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else
+this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else
+return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else
+jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){var src=target[name],copy=options[name];if(target===copy)continue;if(deep&&copy&&typeof copy=="object"&&!copy.nodeType)target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy);else if(copy!==undefined)target[name]=copy;}return target;};var expando="jQuery"+now(),uuid=0,windowData={},exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/^[\s[]?function/.test(fn+"");},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data);if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.browser.msie)script.text=data;else
+script.appendChild(document.createTextNode(data));head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!==undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},each:function(object,callback,args){var name,i=0,length=object.length;if(args){if(length==undefined){for(name in object)if(callback.apply(object[name],args)===false)break;}else
+for(;i<length;)if(callback.apply(object[i++],args)===false)break;}else{if(length==undefined){for(name in object)if(callback.call(object[name],name,object[name])===false)break;}else
+for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else
+jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].style.display="block";}ret=name=="display"&&swap[stack.length-1]!=null?"none":(computedStyle&&computedStyle.getPropertyValue(name))||"";for(i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}return ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof context.createElement=='undefined')context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!elem)return;if(elem.constructor==Number)elem+='';if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else
+ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&&notxml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&&notxml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&&notxml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else
+while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]===elem)return i;return-1;},merge:function(first,second){var i=0,elem,pos=first.length;if(jQuery.browser.msie){while(elem=second[i++])if(elem.nodeType!=8)first[pos++]=elem;}else
+while(elem=second[i++])first[pos++]=elem;return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv!=!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!=null)ret[ret.length]=value;}return ret.concat.apply([],ret);}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing"}});jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments;return this.each(function(){for(var i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(">*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j<rl;j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.nodeType==1){var id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var i=0;ret[i];i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getElementsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#"){var tmp=[];for(var i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.replace(re2,"");}}if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context==ret[0])ret.shift();done=jQuery.merge(done,ret);return done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var i=0;r[i];i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQuery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i<rl;i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]){var c=1;for(var n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;merge[id]=true;}var add=false;if(first==0){if(node.nodeIndex==last)add=true;}else if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else
+for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i<args.length)jQuery.event.proxy(fn,args[i++]);return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i;event.preventDefault();return args[this.lastToggle++].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else
+jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari){var numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(numStyles===undefined)numStyles=jQuery("style, link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});var withinElement=function(event,elem){var parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parentNode;}catch(error){parent=elem;}return parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind();});jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!='string')return this._load(url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else
+xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else
+jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else
+for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else
+s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else
+e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now();if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); \ No newline at end of file
diff --git a/doc/app/js/quicksearch.js b/doc/app/js/quicksearch.js
new file mode 100644
index 0000000..70dbd33
--- /dev/null
+++ b/doc/app/js/quicksearch.js
@@ -0,0 +1,114 @@
+/**
+ *
+ * JQuery QuickSearch - Hook up a form field to hide non-matching elements.
+ * $Id: quicksearch.js 53 2009-01-07 02:52:03Z deveiant $
+ *
+ * Author: Michael Granger <mgranger@laika.com>
+ *
+ */
+jQuery.fn.quicksearch = function( target, searchElems, options ) {
+ // console.debug( "Quicksearch fn" );
+
+ var settings = {
+ delay: 250,
+ clearButton: false,
+ highlightMatches: false,
+ focusOnLoad: false,
+ noSearchResultsIndicator: null
+ };
+ if ( options ) $.extend( settings, options );
+
+ return jQuery(this).each( function() {
+ // console.debug( "Creating a new quicksearch on %o for %o", this, searchElems );
+ new jQuery.quicksearch( this, searchElems, settings );
+ });
+};
+
+
+jQuery.quicksearch = function( searchBox, searchElems, settings ) {
+ var timeout;
+ var boxdiv = $(searchBox).parents('div').eq(0);
+
+ function init() {
+ setupKeyEventHandlers();
+ focusOnLoad();
+ };
+
+ function setupKeyEventHandlers() {
+ // console.debug( "Hooking up the 'keypress' event to %o", searchBox );
+ $(searchBox).
+ unbind( 'keyup' ).
+ keyup( function(e) { return onSearchKey( e.keyCode ); });
+ $(searchBox).
+ unbind( 'keypress' ).
+ keypress( function(e) {
+ switch( e.which ) {
+ // Execute the search on Enter, Tab, or Newline
+ case 9:
+ case 13:
+ case 10:
+ clearTimeout( timeout );
+ e.preventDefault();
+ doQuickSearch();
+ break;
+
+ // Allow backspace
+ case 8:
+ return true;
+ break;
+
+ // Only allow valid search characters
+ default:
+ return validQSChar( e.charCode );
+ }
+ });
+ };
+
+ function focusOnLoad() {
+ if ( !settings.focusOnLoad ) return false;
+ $(searchBox).focus();
+ };
+
+ function onSearchKey ( code ) {
+ clearTimeout( timeout );
+ // console.debug( "...scheduling search." );
+ timeout = setTimeout( doQuickSearch, settings.delay );
+ };
+
+ function validQSChar( code ) {
+ var c = String.fromCharCode( code );
+ return (
+ (c == ':') ||
+ (c >= 'a' && c <= 'z') ||
+ (c >= 'A' && c <= 'Z')
+ );
+ };
+
+ function doQuickSearch() {
+ var searchText = searchBox.value;
+ var pat = new RegExp( searchText, "im" );
+ var shownCount = 0;
+
+ if ( settings.noSearchResultsIndicator ) {
+ $('#' + settings.noSearchResultsIndicator).hide();
+ }
+
+ // All elements start out hidden
+ $(searchElems).each( function(index) {
+ var str = $(this).text();
+
+ if ( pat.test(str) ) {
+ shownCount += 1;
+ $(this).fadeIn();
+ } else {
+ $(this).hide();
+ }
+ });
+
+ if ( shownCount == 0 && settings.noSearchResultsIndicator ) {
+ $('#' + settings.noSearchResultsIndicator).slideDown();
+ }
+ };
+
+ init();
+};
diff --git a/doc/app/js/thickbox-compressed.js b/doc/app/js/thickbox-compressed.js
new file mode 100644
index 0000000..3a3fdae
--- /dev/null
+++ b/doc/app/js/thickbox-compressed.js
@@ -0,0 +1,10 @@
+/*
+ * Thickbox 3 - One Box To Rule Them All.
+ * By Cody Lindley (http://www.codylindley.com)
+ * Copyright (c) 2007 cody lindley
+ * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
+*/
+
+var tb_pathToImage = "../images/loadingAnimation.gif";
+
+eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('$(o).2S(9(){1u(\'a.18, 3n.18, 3i.18\');1w=1p 1t();1w.L=2H});9 1u(b){$(b).s(9(){6 t=X.Q||X.1v||M;6 a=X.u||X.23;6 g=X.1N||P;19(t,a,g);X.2E();H P})}9 19(d,f,g){3m{3(2t o.v.J.2i==="2g"){$("v","11").r({A:"28%",z:"28%"});$("11").r("22","2Z");3(o.1Y("1F")===M){$("v").q("<U 5=\'1F\'></U><4 5=\'B\'></4><4 5=\'8\'></4>");$("#B").s(G)}}n{3(o.1Y("B")===M){$("v").q("<4 5=\'B\'></4><4 5=\'8\'></4>");$("#B").s(G)}}3(1K()){$("#B").1J("2B")}n{$("#B").1J("2z")}3(d===M){d=""}$("v").q("<4 5=\'K\'><1I L=\'"+1w.L+"\' /></4>");$(\'#K\').2y();6 h;3(f.O("?")!==-1){h=f.3l(0,f.O("?"))}n{h=f}6 i=/\\.2s$|\\.2q$|\\.2m$|\\.2l$|\\.2k$/;6 j=h.1C().2h(i);3(j==\'.2s\'||j==\'.2q\'||j==\'.2m\'||j==\'.2l\'||j==\'.2k\'){1D="";1G="";14="";1z="";1x="";R="";1n="";1r=P;3(g){E=$("a[@1N="+g+"]").36();25(D=0;((D<E.1c)&&(R===""));D++){6 k=E[D].u.1C().2h(i);3(!(E[D].u==f)){3(1r){1z=E[D].Q;1x=E[D].u;R="<1e 5=\'1X\'>&1d;&1d;<a u=\'#\'>2T &2R;</a></1e>"}n{1D=E[D].Q;1G=E[D].u;14="<1e 5=\'1U\'>&1d;&1d;<a u=\'#\'>&2O; 2N</a></1e>"}}n{1r=1b;1n="1t "+(D+1)+" 2L "+(E.1c)}}}S=1p 1t();S.1g=9(){S.1g=M;6 a=2x();6 x=a[0]-1M;6 y=a[1]-1M;6 b=S.z;6 c=S.A;3(b>x){c=c*(x/b);b=x;3(c>y){b=b*(y/c);c=y}}n 3(c>y){b=b*(y/c);c=y;3(b>x){c=c*(x/b);b=x}}13=b+30;1a=c+2G;$("#8").q("<a u=\'\' 5=\'1L\' Q=\'1o\'><1I 5=\'2F\' L=\'"+f+"\' z=\'"+b+"\' A=\'"+c+"\' 23=\'"+d+"\'/></a>"+"<4 5=\'2D\'>"+d+"<4 5=\'2C\'>"+1n+14+R+"</4></4><4 5=\'2A\'><a u=\'#\' 5=\'Z\' Q=\'1o\'>1l</a> 1k 1j 1s</4>");$("#Z").s(G);3(!(14==="")){9 12(){3($(o).N("s",12)){$(o).N("s",12)}$("#8").C();$("v").q("<4 5=\'8\'></4>");19(1D,1G,g);H P}$("#1U").s(12)}3(!(R==="")){9 1i(){$("#8").C();$("v").q("<4 5=\'8\'></4>");19(1z,1x,g);H P}$("#1X").s(1i)}o.1h=9(e){3(e==M){I=2w.2v}n{I=e.2u}3(I==27){G()}n 3(I==3k){3(!(R=="")){o.1h="";1i()}}n 3(I==3j){3(!(14=="")){o.1h="";12()}}};16();$("#K").C();$("#1L").s(G);$("#8").r({Y:"T"})};S.L=f}n{6 l=f.2r(/^[^\\?]+\\??/,\'\');6 m=2p(l);13=(m[\'z\']*1)+30||3h;1a=(m[\'A\']*1)+3g||3f;W=13-30;V=1a-3e;3(f.O(\'2j\')!=-1){1E=f.1B(\'3d\');$("#15").C();3(m[\'1A\']!="1b"){$("#8").q("<4 5=\'2f\'><4 5=\'1H\'>"+d+"</4><4 5=\'2e\'><a u=\'#\' 5=\'Z\' Q=\'1o\'>1l</a> 1k 1j 1s</4></4><U 1W=\'0\' 2d=\'0\' L=\'"+1E[0]+"\' 5=\'15\' 1v=\'15"+1f.2c(1f.1y()*2b)+"\' 1g=\'1m()\' J=\'z:"+(W+29)+"p;A:"+(V+17)+"p;\' > </U>")}n{$("#B").N();$("#8").q("<U 1W=\'0\' 2d=\'0\' L=\'"+1E[0]+"\' 5=\'15\' 1v=\'15"+1f.2c(1f.1y()*2b)+"\' 1g=\'1m()\' J=\'z:"+(W+29)+"p;A:"+(V+17)+"p;\'> </U>")}}n{3($("#8").r("Y")!="T"){3(m[\'1A\']!="1b"){$("#8").q("<4 5=\'2f\'><4 5=\'1H\'>"+d+"</4><4 5=\'2e\'><a u=\'#\' 5=\'Z\'>1l</a> 1k 1j 1s</4></4><4 5=\'F\' J=\'z:"+W+"p;A:"+V+"p\'></4>")}n{$("#B").N();$("#8").q("<4 5=\'F\' 3c=\'3b\' J=\'z:"+W+"p;A:"+V+"p;\'></4>")}}n{$("#F")[0].J.z=W+"p";$("#F")[0].J.A=V+"p";$("#F")[0].3a=0;$("#1H").11(d)}}$("#Z").s(G);3(f.O(\'37\')!=-1){$("#F").q($(\'#\'+m[\'26\']).1T());$("#8").24(9(){$(\'#\'+m[\'26\']).q($("#F").1T())});16();$("#K").C();$("#8").r({Y:"T"})}n 3(f.O(\'2j\')!=-1){16();3($.1q.35){$("#K").C();$("#8").r({Y:"T"})}}n{$("#F").34(f+="&1y="+(1p 33().32()),9(){16();$("#K").C();1u("#F a.18");$("#8").r({Y:"T"})})}}3(!m[\'1A\']){o.21=9(e){3(e==M){I=2w.2v}n{I=e.2u}3(I==27){G()}}}}31(e){}}9 1m(){$("#K").C();$("#8").r({Y:"T"})}9 G(){$("#2Y").N("s");$("#Z").N("s");$("#8").2X("2W",9(){$(\'#8,#B,#1F\').2V("24").N().C()});$("#K").C();3(2t o.v.J.2i=="2g"){$("v","11").r({A:"1Z",z:"1Z"});$("11").r("22","")}o.1h="";o.21="";H P}9 16(){$("#8").r({2U:\'-\'+20((13/2),10)+\'p\',z:13+\'p\'});3(!(1V.1q.2Q&&1V.1q.2P<7)){$("#8").r({38:\'-\'+20((1a/2),10)+\'p\'})}}9 2p(a){6 b={};3(!a){H b}6 c=a.1B(/[;&]/);25(6 i=0;i<c.1c;i++){6 d=c[i].1B(\'=\');3(!d||d.1c!=2){39}6 e=2a(d[0]);6 f=2a(d[1]);f=f.2r(/\\+/g,\' \');b[e]=f}H b}9 2x(){6 a=o.2M;6 w=1S.2o||1R.2o||(a&&a.1Q)||o.v.1Q;6 h=1S.1P||1R.1P||(a&&a.2n)||o.v.2n;1O=[w,h];H 1O}9 1K(){6 a=2K.2J.1C();3(a.O(\'2I\')!=-1&&a.O(\'3o\')!=-1){H 1b}}',62,211,'|||if|div|id|var||TB_window|function||||||||||||||else|document|px|append|css|click||href|body||||width|height|TB_overlay|remove|TB_Counter|TB_TempArray|TB_ajaxContent|tb_remove|return|keycode|style|TB_load|src|null|unbind|indexOf|false|title|TB_NextHTML|imgPreloader|block|iframe|ajaxContentH|ajaxContentW|this|display|TB_closeWindowButton||html|goPrev|TB_WIDTH|TB_PrevHTML|TB_iframeContent|tb_position||thickbox|tb_show|TB_HEIGHT|true|length|nbsp|span|Math|onload|onkeydown|goNext|Esc|or|close|tb_showIframe|TB_imageCount|Close|new|browser|TB_FoundURL|Key|Image|tb_init|name|imgLoader|TB_NextURL|random|TB_NextCaption|modal|split|toLowerCase|TB_PrevCaption|urlNoQuery|TB_HideSelect|TB_PrevURL|TB_ajaxWindowTitle|img|addClass|tb_detectMacXFF|TB_ImageOff|150|rel|arrayPageSize|innerHeight|clientWidth|self|window|children|TB_prev|jQuery|frameborder|TB_next|getElementById|auto|parseInt|onkeyup|overflow|alt|unload|for|inlineId||100||unescape|1000|round|hspace|TB_closeAjaxWindow|TB_title|undefined|match|maxHeight|TB_iframe|bmp|gif|png|clientHeight|innerWidth|tb_parseQuery|jpeg|replace|jpg|typeof|which|keyCode|event|tb_getPageSize|show|TB_overlayBG|TB_closeWindow|TB_overlayMacFFBGHack|TB_secondLine|TB_caption|blur|TB_Image|60|tb_pathToImage|mac|userAgent|navigator|of|documentElement|Prev|lt|version|msie|gt|ready|Next|marginLeft|trigger|fast|fadeOut|TB_imageOff|hidden||catch|getTime|Date|load|safari|get|TB_inline|marginTop|continue|scrollTop|TB_modal|class|TB_|45|440|40|630|input|188|190|substr|try|area|firefox'.split('|'),0,{})) \ No newline at end of file
diff --git a/doc/app/lib/authentication_rb.html b/doc/app/lib/authentication_rb.html
new file mode 100644
index 0000000..b0b1250
--- /dev/null
+++ b/doc/app/lib/authentication_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: authentication.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet" />
+
+ <script src="../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/authorization_rb.html b/doc/app/lib/authorization_rb.html
new file mode 100644
index 0000000..8222750
--- /dev/null
+++ b/doc/app/lib/authorization_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: authorization.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet" />
+
+ <script src="../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Sep 04 11:11:44 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2011 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/bugzilla/bug_rb.html b/doc/app/lib/bugzilla/bug_rb.html
new file mode 100644
index 0000000..ad18c96
--- /dev/null
+++ b/doc/app/lib/bugzilla/bug_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bug.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/bugzilla/comment_rb.html b/doc/app/lib/bugzilla/comment_rb.html
new file mode 100644
index 0000000..2baf141
--- /dev/null
+++ b/doc/app/lib/bugzilla/comment_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: comment.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/bugzilla/history_rb.html b/doc/app/lib/bugzilla/history_rb.html
new file mode 100644
index 0000000..76ba5e4
--- /dev/null
+++ b/doc/app/lib/bugzilla/history_rb.html
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: history.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<p>Encapsulates a bug’s history</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/bugzilla_rb.html b/doc/app/lib/bugzilla_rb.html
new file mode 100644
index 0000000..bb45e7b
--- /dev/null
+++ b/doc/app/lib/bugzilla_rb.html
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bugzilla.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet" />
+
+ <script src="../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Thu Sep 01 20:47:04 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>nokogiri</li>
+
+ <li>fastercsv</li>
+
+ <li>fileutils</li>
+
+ <li>xmlrpc/client</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/bugs_rb.html b/doc/app/lib/glsamaker/bugs_rb.html
new file mode 100644
index 0000000..134ea71
--- /dev/null
+++ b/doc/app/lib/glsamaker/bugs_rb.html
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: bugs.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>bugzilla</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/diff_rb.html b/doc/app/lib/glsamaker/diff_rb.html
new file mode 100644
index 0000000..540bf62
--- /dev/null
+++ b/doc/app/lib/glsamaker/diff_rb.html
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: diff.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>diff/lcs</li>
+
+ <li>diff/lcs/hunk</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;
+Copyright (C) 2006-2007 Jean-Philippe Lang</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/helpers_rb.html b/doc/app/lib/glsamaker/helpers_rb.html
new file mode 100644
index 0000000..6653b3f
--- /dev/null
+++ b/doc/app/lib/glsamaker/helpers_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: helpers.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/http_rb.html b/doc/app/lib/glsamaker/http_rb.html
new file mode 100644
index 0000000..c05c5cb
--- /dev/null
+++ b/doc/app/lib/glsamaker/http_rb.html
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: http.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>net/http</li>
+
+ <li>net/https</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/mail_rb.html b/doc/app/lib/glsamaker/mail_rb.html
new file mode 100644
index 0000000..a16f0ba
--- /dev/null
+++ b/doc/app/lib/glsamaker/mail_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: mail.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Mon Aug 29 14:56:39 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010-11 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/portage_rb.html b/doc/app/lib/glsamaker/portage_rb.html
new file mode 100644
index 0000000..d81a4e6
--- /dev/null
+++ b/doc/app/lib/glsamaker/portage_rb.html
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: portage.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>nokogiri</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker/xml_rb.html b/doc/app/lib/glsamaker/xml_rb.html
new file mode 100644
index 0000000..20be518
--- /dev/null
+++ b/doc/app/lib/glsamaker/xml_rb.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: xml.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2010 Alex Legler &lt;a3li@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/glsamaker_rb.html b/doc/app/lib/glsamaker_rb.html
new file mode 100644
index 0000000..f5cdde0
--- /dev/null
+++ b/doc/app/lib/glsamaker_rb.html
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: glsamaker.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet" />
+
+ <script src="../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ <li>glsamaker/http</li>
+
+ <li>glsamaker/portage</li>
+
+ <li>glsamaker/diff</li>
+
+ <li>glsamaker/xml</li>
+
+ <li>glsamaker/bugs</li>
+
+ <li>glsamaker/mail</li>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/lib/tasks/utils_rb.html b/doc/app/lib/tasks/utils_rb.html
new file mode 100644
index 0000000..045a833
--- /dev/null
+++ b/doc/app/lib/tasks/utils_rb.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
+
+ <title>File: utils.rb [GLSAMaker 2]</title>
+
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
+
+ <script src="../../js/jquery.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/quicksearch.js" type="text/javascript"
+ charset="utf-8"></script>
+ <script src="../../js/darkfish.js" type="text/javascript"
+ charset="utf-8"></script>
+</head>
+
+<body class="file file-popup">
+ <div id="metadata">
+ <dl>
+ <dt class="modified-date">Last Modified</dt>
+ <dd class="modified-date">Sun Aug 14 14:43:15 +0200 2011</dd>
+
+
+ <dt class="requires">Requires</dt>
+ <dd class="requires">
+ <ul>
+
+ </ul>
+ </dd>
+
+
+
+ </dl>
+ </div>
+
+ <div id="documentation">
+
+ <div class="description">
+ <h2>Description</h2>
+
+<h3>GLSAMaker v2</h3>
+
+<pre>Copyright (C) 2009-2011 Alex Legler &lt;a3li@gentoo.org&gt;
+Copyright (C) 2009 Pierre-Yves Rofes &lt;py@gentoo.org&gt;</pre>
+
+<p>This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.</p>
+
+<p>For more information, see the LICENSE file.</p>
+
+ </div>
+
+ </div>
+</body>
+</html>
+
diff --git a/doc/app/rdoc-style.css b/doc/app/rdoc-style.css
deleted file mode 100644
index 44c7b3d..0000000
--- a/doc/app/rdoc-style.css
+++ /dev/null
@@ -1,208 +0,0 @@
-
-body {
- font-family: Verdana,Arial,Helvetica,sans-serif;
- font-size: 90%;
- margin: 0;
- margin-left: 40px;
- padding: 0;
- background: white;
-}
-
-h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; }
-h1 { font-size: 150%; }
-h2,h3,h4 { margin-top: 1em; }
-
-a { background: #eef; color: #039; text-decoration: none; }
-a:hover { background: #039; color: #eef; }
-
-/* Override the base stylesheet's Anchor inside a table cell */
-td > a {
- background: transparent;
- color: #039;
- text-decoration: none;
-}
-
-/* and inside a section title */
-.section-title > a {
- background: transparent;
- color: #eee;
- text-decoration: none;
-}
-
-/* === Structural elements =================================== */
-
-div#index {
- margin: 0;
- margin-left: -40px;
- padding: 0;
- font-size: 90%;
-}
-
-
-div#index a {
- margin-left: 0.7em;
-}
-
-div#index .section-bar {
- margin-left: 0px;
- padding-left: 0.7em;
- background: #ccc;
- font-size: small;
-}
-
-
-div#classHeader, div#fileHeader {
- width: auto;
- color: white;
- padding: 0.5em 1.5em 0.5em 1.5em;
- margin: 0;
- margin-left: -40px;
- border-bottom: 3px solid #006;
-}
-
-div#classHeader a, div#fileHeader a {
- background: inherit;
- color: white;
-}
-
-div#classHeader td, div#fileHeader td {
- background: inherit;
- color: white;
-}
-
-
-div#fileHeader {
- background: #057;
-}
-
-div#classHeader {
- background: #048;
-}
-
-
-.class-name-in-header {
- font-size: 180%;
- font-weight: bold;
-}
-
-
-div#bodyContent {
- padding: 0 1.5em 0 1.5em;
-}
-
-div#description {
- padding: 0.5em 1.5em;
- background: #efefef;
- border: 1px dotted #999;
-}
-
-div#description h1,h2,h3,h4,h5,h6 {
- color: #125;;
- background: transparent;
-}
-
-div#validator-badges {
- text-align: center;
-}
-div#validator-badges img { border: 0; }
-
-div#copyright {
- color: #333;
- background: #efefef;
- font: 0.75em sans-serif;
- margin-top: 5em;
- margin-bottom: 0;
- padding: 0.5em 2em;
-}
-
-
-/* === Classes =================================== */
-
-table.header-table {
- color: white;
- font-size: small;
-}
-
-.type-note {
- font-size: small;
- color: #DEDEDE;
-}
-
-.xxsection-bar {
- background: #eee;
- color: #333;
- padding: 3px;
-}
-
-.section-bar {
- color: #333;
- border-bottom: 1px solid #999;
- margin-left: -20px;
-}
-
-
-.section-title {
- background: #79a;
- color: #eee;
- padding: 3px;
- margin-top: 2em;
- margin-left: -30px;
- border: 1px solid #999;
-}
-
-.top-aligned-row { vertical-align: top }
-.bottom-aligned-row { vertical-align: bottom }
-
-/* --- Context section classes ----------------------- */
-
-.context-row { }
-.context-item-name { font-family: monospace; font-weight: bold; color: black; }
-.context-item-value { font-size: small; color: #448; }
-.context-item-desc { color: #333; padding-left: 2em; }
-
-/* --- Method classes -------------------------- */
-.method-detail {
- background: #efefef;
- padding: 0;
- margin-top: 0.5em;
- margin-bottom: 1em;
- border: 1px dotted #ccc;
-}
-.method-heading {
- color: black;
- background: #ccc;
- border-bottom: 1px solid #666;
- padding: 0.2em 0.5em 0 0.5em;
-}
-.method-signature { color: black; background: inherit; }
-.method-name { font-weight: bold; }
-.method-args { font-style: italic; }
-.method-description { padding: 0 0.5em 0 0.5em; }
-
-/* --- Source code sections -------------------- */
-
-a.source-toggle { font-size: 90%; }
-div.method-source-code {
- background: #262626;
- color: #ffdead;
- margin: 1em;
- padding: 0.5em;
- border: 1px dashed #999;
- overflow: hidden;
-}
-
-div.method-source-code pre { color: #ffdead; overflow: hidden; }
-
-/* --- Ruby keyword styles --------------------- */
-
-.standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
-
-.ruby-constant { color: #7fffd4; background: transparent; }
-.ruby-keyword { color: #00ffff; background: transparent; }
-.ruby-ivar { color: #eedd82; background: transparent; }
-.ruby-operator { color: #00ffee; background: transparent; }
-.ruby-identifier { color: #ffdead; background: transparent; }
-.ruby-node { color: #ffa07a; background: transparent; }
-.ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
-.ruby-regexp { color: #ffa07a; background: transparent; }
-.ruby-value { color: #7fffd4; background: transparent; } \ No newline at end of file
diff --git a/doc/app/rdoc.css b/doc/app/rdoc.css
new file mode 100644
index 0000000..ea91421
--- /dev/null
+++ b/doc/app/rdoc.css
@@ -0,0 +1,763 @@
+/*
+ * "Darkfish" Rdoc CSS
+ * $Id: rdoc.css 54 2009-01-27 01:09:48Z deveiant $
+ *
+ * Author: Michael Granger <ged@FaerieMUD.org>
+ *
+ */
+
+/* Base Green is: #6C8C22 */
+
+*{ padding: 0; margin: 0; }
+
+body {
+ background: #efefef;
+ font: 14px "Helvetica Neue", Helvetica, Tahoma, sans-serif;
+}
+body.class, body.module, body.file {
+ margin-left: 40px;
+}
+body.file-popup {
+ font-size: 90%;
+ margin-left: 0;
+}
+
+h1 {
+ font-size: 300%;
+ text-shadow: rgba(135,145,135,0.65) 2px 2px 3px;
+ color: #6C8C22;
+}
+h2,h3,h4 { margin-top: 1.5em; }
+
+:link,
+:visited {
+ color: #6C8C22;
+ text-decoration: none;
+}
+:link:hover,
+:visited:hover {
+ border-bottom: 1px dotted #6C8C22;
+}
+
+pre {
+ background: #ddd;
+ padding: 0.5em 0;
+}
+
+
+/* @group Generic Classes */
+
+.initially-hidden {
+ display: none;
+}
+
+.quicksearch-field {
+ width: 98%;
+ background: #ddd;
+ border: 1px solid #aaa;
+ height: 1.5em;
+ -webkit-border-radius: 4px;
+}
+.quicksearch-field:focus {
+ background: #f1edba;
+}
+
+.missing-docs {
+ font-size: 120%;
+ background: white url(images/wrench_orange.png) no-repeat 4px center;
+ color: #ccc;
+ line-height: 2em;
+ border: 1px solid #d00;
+ opacity: 1;
+ padding-left: 20px;
+ text-indent: 24px;
+ letter-spacing: 3px;
+ font-weight: bold;
+ -webkit-border-radius: 5px;
+ -moz-border-radius: 5px;
+}
+
+.target-section {
+ border: 2px solid #dcce90;
+ border-left-width: 8px;
+ padding: 0 1em;
+ background: #fff3c2;
+}
+
+/* @end */
+
+
+/* @group Index Page, Standalone file pages */
+body.indexpage {
+ margin: 1em 3em;
+}
+body.indexpage p,
+body.indexpage div,
+body.file p {
+ margin: 1em 0;
+}
+
+.indexpage .rdoc-list p, .file .rdoc-list p {
+ margin: 0em 0;
+}
+
+.indexpage ol,
+.file #documentation ol {
+ line-height: 160%;
+}
+
+.indexpage ul,
+.file #documentation ul {
+ line-height: 160%;
+ list-style: none;
+}
+.indexpage ul :link,
+.indexpage ul :visited {
+ font-size: 16px;
+}
+
+.indexpage li,
+.file #documentation li {
+ padding-left: 20px;
+}
+
+.indexpage ol,
+.file #documentation ol {
+ margin-left: 20px;
+}
+
+.indexpage ol > li,
+.file #documentation ol > li {
+ padding-left: 0;
+}
+
+.indexpage ul > li,
+.file #documentation ul > li {
+ background: url(images/bullet_black.png) no-repeat left 4px;
+}
+.indexpage li.module {
+ background: url(images/package.png) no-repeat left 4px;
+}
+.indexpage li.class {
+ background: url(images/ruby.png) no-repeat left 4px;
+}
+.indexpage li.file {
+ background: url(images/page_white_text.png) no-repeat left 4px;
+}
+.file li p,
+.indexpage li p {
+ margin: 0 0;
+}
+
+/* @end */
+
+/* @group Top-Level Structure */
+
+.class #metadata,
+.file #metadata,
+.module #metadata {
+ float: left;
+ width: 260px;
+}
+
+.class #documentation,
+.file #documentation,
+.module #documentation {
+ margin: 2em 1em 5em 300px;
+ min-width: 340px;
+}
+
+.file #metadata {
+ margin: 0.8em;
+}
+
+#validator-badges {
+ clear: both;
+ margin: 1em 1em 2em;
+}
+
+/* @end */
+
+/* @group Metadata Section */
+#metadata .section {
+ background-color: #dedede;
+ -moz-border-radius: 5px;
+ -webkit-border-radius: 5px;
+ border: 1px solid #aaa;
+ margin: 0 8px 16px;
+ font-size: 90%;
+ overflow: hidden;
+}
+#metadata h3.section-header {
+ margin: 0;
+ padding: 2px 8px;
+ background: #ccc;
+ color: #666;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-bottom: 1px solid #aaa;
+}
+#metadata #home-section h3.section-header {
+ border-bottom: 0;
+}
+
+#metadata ul,
+#metadata dl,
+#metadata p {
+ padding: 8px;
+ list-style: none;
+}
+
+#file-metadata ul {
+ padding-left: 28px;
+ list-style-image: url(images/page_green.png);
+}
+
+dl.svninfo {
+ color: #666;
+ margin: 0;
+}
+dl.svninfo dt {
+ font-weight: bold;
+}
+
+ul.link-list li {
+ white-space: nowrap;
+}
+ul.link-list .type {
+ font-size: 8px;
+ text-transform: uppercase;
+ color: white;
+ background: #969696;
+ padding: 2px 4px;
+ -webkit-border-radius: 5px;
+}
+
+/* @end */
+
+
+/* @group Project Metadata Section */
+#project-metadata {
+ margin-top: 3em;
+}
+
+.file #project-metadata {
+ margin-top: 0em;
+}
+
+#project-metadata .section {
+ border: 1px solid #aaa;
+}
+#project-metadata h3.section-header {
+ border-bottom: 1px solid #aaa;
+ position: relative;
+}
+#project-metadata h3.section-header .search-toggle {
+ position: absolute;
+ right: 5px;
+}
+
+
+#project-metadata form {
+ color: #777;
+ background: #ccc;
+ padding: 8px 8px 16px;
+ border-bottom: 1px solid #bbb;
+}
+#project-metadata fieldset {
+ border: 0;
+}
+
+#no-class-search-results {
+ margin: 0 auto 1em;
+ text-align: center;
+ font-size: 14px;
+ font-weight: bold;
+ color: #aaa;
+}
+
+/* @end */
+
+
+/* @group Documentation Section */
+.description {
+ font-size: 100%;
+ color: #333;
+}
+
+.description p {
+ margin: 1em 0.4em;
+}
+
+.description li p {
+ margin: 0;
+}
+
+.description ul {
+ margin-left: 1.5em;
+}
+.description ul li {
+ line-height: 1.4em;
+}
+
+.description dl,
+#documentation dl {
+ margin: 8px 1.5em;
+ border: 1px solid #ccc;
+}
+.description dl {
+ font-size: 14px;
+}
+
+.description dt,
+#documentation dt {
+ padding: 2px 4px;
+ font-weight: bold;
+ background: #ddd;
+}
+.description dd,
+#documentation dd {
+ padding: 2px 12px;
+}
+.description dd + dt,
+#documentation dd + dt {
+ margin-top: 0.7em;
+}
+
+#documentation .section {
+ font-size: 90%;
+}
+
+#documentation h2.section-header {
+ margin-top: 2em;
+ padding: 0.75em 0.5em;
+ background: #ccc;
+ color: #333;
+ font-size: 175%;
+ border: 1px solid #bbb;
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+}
+
+#documentation h3.section-header {
+ margin-top: 2em;
+ padding: 0.25em 0.5em;
+ background-color: #dedede;
+ color: #333;
+ font-size: 150%;
+ border: 1px solid #bbb;
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+}
+
+#constants-list > dl,
+#attributes-list > dl {
+ margin: 1em 0 2em;
+ border: 0;
+}
+#constants-list > dl dt,
+#attributes-list > dl dt {
+ padding-left: 0;
+ font-weight: bold;
+ font-family: Monaco, "Andale Mono";
+ background: inherit;
+}
+#constants-list > dl dt a,
+#attributes-list > dl dt a {
+ color: inherit;
+}
+#constants-list > dl dd,
+#attributes-list > dl dd {
+ margin: 0 0 1em 0;
+ padding: 0;
+ color: #666;
+}
+
+.documentation-section h2 {
+ position: relative;
+}
+
+.documentation-section h2 a {
+ position: absolute;
+ top: 8px;
+ right: 10px;
+ font-size: 12px;
+ color: #9b9877;
+ visibility: hidden;
+}
+
+.documentation-section h2:hover a {
+ visibility: visible;
+}
+
+/* @group Method Details */
+
+#documentation .method-source-code {
+ display: none;
+}
+
+#documentation .method-detail {
+ margin: 0.5em 0;
+ padding: 0.5em 0;
+ cursor: pointer;
+}
+#documentation .method-detail:hover {
+ background-color: #f1edba;
+}
+#documentation .method-heading {
+ position: relative;
+ padding: 2px 4px 0 20px;
+ font-size: 125%;
+ font-weight: bold;
+ color: #333;
+ background: url(images/brick.png) no-repeat left bottom;
+}
+#documentation .method-heading :link,
+#documentation .method-heading :visited {
+ color: inherit;
+}
+#documentation .method-click-advice {
+ position: absolute;
+ top: 2px;
+ right: 5px;
+ font-size: 10px;
+ color: #9b9877;
+ visibility: hidden;
+ padding-right: 20px;
+ line-height: 20px;
+ background: url(images/zoom.png) no-repeat right top;
+}
+#documentation .method-detail:hover .method-click-advice {
+ visibility: visible;
+}
+
+#documentation .method-alias .method-heading {
+ color: #666;
+ background: url(images/brick_link.png) no-repeat left bottom;
+}
+
+#documentation .method-description,
+#documentation .aliases {
+ margin: 0 20px;
+ color: #666;
+}
+
+#documentation .method-description p,
+#documentation .aliases p {
+ line-height: 1.2em;
+}
+
+#documentation .aliases {
+ padding-top: 4px;
+ font-style: italic;
+ cursor: default;
+}
+#documentation .method-description p {
+ padding: 0;
+}
+#documentation .method-description p + p {
+ margin-bottom: 0.5em;
+}
+#documentation .method-description ul {
+ margin-left: 1.5em;
+}
+
+#documentation .attribute-method-heading {
+ background: url(images/tag_green.png) no-repeat left bottom;
+}
+#documentation #attribute-method-details .method-detail:hover {
+ background-color: transparent;
+ cursor: default;
+}
+#documentation .attribute-access-type {
+ font-size: 60%;
+ text-transform: uppercase;
+ vertical-align: super;
+ padding: 0 2px;
+}
+/* @end */
+
+/* @end */
+
+
+
+/* @group Source Code */
+
+div.method-source-code {
+ background: #262626;
+ color: #efefef;
+ margin: 1em;
+ padding: 0.5em;
+ border: 1px dashed #999;
+ overflow: hidden;
+}
+
+div.method-source-code pre {
+ background: inherit;
+ padding: 0;
+ color: white;
+ overflow: auto;
+}
+
+/* @group Ruby keyword styles */
+
+.ruby-constant { color: #7fffd4; background: transparent; }
+.ruby-keyword { color: #00ffff; background: transparent; }
+.ruby-ivar { color: #eedd82; background: transparent; }
+.ruby-operator { color: #00ffee; background: transparent; }
+.ruby-identifier { color: #ffdead; background: transparent; }
+.ruby-node { color: #ffa07a; background: transparent; }
+.ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
+.ruby-regexp { color: #ffa07a; background: transparent; }
+.ruby-value { color: #7fffd4; background: transparent; }
+
+/* @end */
+/* @end */
+
+
+/* @group File Popup Contents */
+
+.file #metadata,
+.file-popup #metadata {
+}
+
+.file-popup dl {
+ font-size: 80%;
+ padding: 0.75em;
+ background-color: #dedede;
+ color: #333;
+ border: 1px solid #bbb;
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+}
+.file dt {
+ font-weight: bold;
+ padding-left: 22px;
+ line-height: 20px;
+ background: url(images/page_white_width.png) no-repeat left top;
+}
+.file dt.modified-date {
+ background: url(images/date.png) no-repeat left top;
+}
+.file dt.requires {
+ background: url(images/plugin.png) no-repeat left top;
+}
+.file dt.scs-url {
+ background: url(images/wrench.png) no-repeat left top;
+}
+
+.file dl dd {
+ margin: 0 0 1em 0;
+}
+.file #metadata dl dd ul {
+ list-style: circle;
+ margin-left: 20px;
+ padding-top: 0;
+}
+.file #metadata dl dd ul li {
+}
+
+
+.file h2 {
+ margin-top: 2em;
+ padding: 0.75em 0.5em;
+ background-color: #dedede;
+ color: #333;
+ font-size: 120%;
+ border: 1px solid #bbb;
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+}
+
+/* @end */
+
+
+
+
+/* @group ThickBox Styles */
+#TB_window {
+ font: 12px Arial, Helvetica, sans-serif;
+ color: #333333;
+}
+
+#TB_secondLine {
+ font: 10px Arial, Helvetica, sans-serif;
+ color:#666666;
+}
+
+#TB_window :link,
+#TB_window :visited { color: #666666; }
+#TB_window :link:hover,
+#TB_window :visited:hover { color: #000; }
+#TB_window :link:active,
+#TB_window :visited:active { color: #666666; }
+#TB_window :link:focus,
+#TB_window :visited:focus { color: #666666; }
+
+#TB_overlay {
+ position: fixed;
+ z-index:100;
+ top: 0px;
+ left: 0px;
+ height:100%;
+ width:100%;
+}
+
+.TB_overlayMacFFBGHack {background: url(images/macFFBgHack.png) repeat;}
+.TB_overlayBG {
+ background-color:#000;
+ filter:alpha(opacity=75);
+ -moz-opacity: 0.75;
+ opacity: 0.75;
+}
+
+* html #TB_overlay { /* ie6 hack */
+ position: absolute;
+ height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
+}
+
+#TB_window {
+ position: fixed;
+ background: #ffffff;
+ z-index: 102;
+ color:#000000;
+ display:none;
+ border: 4px solid #525252;
+ text-align:left;
+ top:50%;
+ left:50%;
+}
+
+* html #TB_window { /* ie6 hack */
+ position: absolute;
+ margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
+}
+
+#TB_window img#TB_Image {
+ display:block;
+ margin: 15px 0 0 15px;
+ border-right: 1px solid #ccc;
+ border-bottom: 1px solid #ccc;
+ border-top: 1px solid #666;
+ border-left: 1px solid #666;
+}
+
+#TB_caption{
+ height:25px;
+ padding:7px 30px 10px 25px;
+ float:left;
+}
+
+#TB_closeWindow{
+ height:25px;
+ padding:11px 25px 10px 0;
+ float:right;
+}
+
+#TB_closeAjaxWindow{
+ padding:7px 10px 5px 0;
+ margin-bottom:1px;
+ text-align:right;
+ float:right;
+}
+
+#TB_ajaxWindowTitle{
+ float:left;
+ padding:7px 0 5px 10px;
+ margin-bottom:1px;
+ font-size: 22px;
+}
+
+#TB_title{
+ background-color: #6C8C22;
+ color: #dedede;
+ height:40px;
+}
+#TB_title :link,
+#TB_title :visited {
+ color: white !important;
+ border-bottom: 1px dotted #dedede;
+}
+
+#TB_ajaxContent{
+ clear:both;
+ padding:2px 15px 15px 15px;
+ overflow:auto;
+ text-align:left;
+ line-height:1.4em;
+}
+
+#TB_ajaxContent.TB_modal{
+ padding:15px;
+}
+
+#TB_ajaxContent p{
+ padding:5px 0px 5px 0px;
+}
+
+#TB_load{
+ position: fixed;
+ display:none;
+ height:13px;
+ width:208px;
+ z-index:103;
+ top: 50%;
+ left: 50%;
+ margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
+}
+
+* html #TB_load { /* ie6 hack */
+ position: absolute;
+ margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
+}
+
+#TB_HideSelect{
+ z-index:99;
+ position:fixed;
+ top: 0;
+ left: 0;
+ background-color:#fff;
+ border:none;
+ filter:alpha(opacity=0);
+ -moz-opacity: 0;
+ opacity: 0;
+ height:100%;
+ width:100%;
+}
+
+* html #TB_HideSelect { /* ie6 hack */
+ position: absolute;
+ height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
+}
+
+#TB_iframeContent{
+ clear:both;
+ border:none;
+ margin-bottom:-1px;
+ margin-top:1px;
+ _margin-bottom:1px;
+}
+
+/* @end */
+
+/* @group Debugging Section */
+
+#debugging-toggle {
+ text-align: center;
+}
+#debugging-toggle img {
+ cursor: pointer;
+}
+
+#rdoc-debugging-section-dump {
+ display: none;
+ margin: 0 2em 2em;
+ background: #ccc;
+ border: 1px solid #999;
+}
+
+
+
+/* @end */