]> git.ipfire.org Git - people/jschlag/pbs.git/blobdiff - src/web/__init__.py
Merge branch 'master' of git://git.ipfire.org/pbs
[people/jschlag/pbs.git] / src / web / __init__.py
index 70890194f2ce9125abdc0db8102f345d66eb98d2..27fd59f4048b7fba4e15078375351864773b55eb 100644 (file)
@@ -10,12 +10,14 @@ import tornado.options
 import tornado.web
 
 from .. import Backend
+from ..constants import *
 from ..decorators import *
 
-from . import handlers_api
-
 from .handlers import *
-from .ui_modules import *
+
+from . import handlers_api
+from . import mirrors
+from . import ui_modules
 
 # Enable logging
 tornado.options.define("debug", default=False, help="Run in debug mode", type=bool)
@@ -30,66 +32,62 @@ class Application(tornado.web.Application):
                        template_path = TEMPLATESDIR,
                        static_path = STATICDIR,
                        ui_modules = {
-                               "Text"               : TextModule,
-                               "Modal"              : ModalModule,
+                               "Text"               : ui_modules.TextModule,
+                               "Modal"              : ui_modules.ModalModule,
 
-                               "Footer"             : FooterModule,
+                               "Footer"             : ui_modules.FooterModule,
 
                                # Logging
-                               "Log"                : LogModule,
-                               "LogEntry"           : LogEntryModule,
-                               "LogEntryComment"    : LogEntryCommentModule,
-
-                               # Builders
-                               "BuildersLoad"       : BuildersLoadModule,
+                               "Log"                : ui_modules.LogModule,
+                               "LogEntry"           : ui_modules.LogEntryModule,
+                               "LogEntryComment"    : ui_modules.LogEntryCommentModule,
 
-                               "BuildHeadline"      : BuildHeadlineModule,
-                               "BuildStateWarnings" : BuildStateWarningsModule,
+                               "BuildHeadline"      : ui_modules.BuildHeadlineModule,
+                               "BuildStateWarnings" : ui_modules.BuildStateWarningsModule,
 
-                               "BugsTable"          : BugsTableModule,
-                               "BuildLog"           : BuildLogModule,
-                               "BuildOffset"        : BuildOffsetModule,
-                               "BuildTable"         : BuildTableModule,
+                               "BugsTable"          : ui_modules.BugsTableModule,
+                               "BuildLog"           : ui_modules.BuildLogModule,
+                               "BuildOffset"        : ui_modules.BuildOffsetModule,
+                               "BuildTable"         : ui_modules.BuildTableModule,
 
                                # Changelog
-                               "Changelog"          : ChangelogModule,
-                               "ChangelogEntry"     : ChangelogEntryModule,
+                               "Changelog"          : ui_modules.ChangelogModule,
+                               "ChangelogEntry"     : ui_modules.ChangelogEntryModule,
 
                                # Jobs
-                               "JobsList"           : JobsListModule,
-                               "JobsStatus"         : JobsStatusModule,
+                               "JobsList"           : ui_modules.JobsListModule,
+                               "JobsStatus"         : ui_modules.JobsStatusModule,
 
                                # Packages
-                               "PackagesDependencyTable" : PackagesDependencyTableModule,
-
-                               "CommitMessage"      : CommitMessageModule,
-                               "CommitsTable"       : CommitsTableModule,
-                               "JobsBoxes"          : JobsBoxesModule,
-                               "JobState"           : JobStateModule,
-                               "JobsTable"          : JobsTableModule,
-                               "CommentsTable"      : CommentsTableModule,
-                               "FilesTable"         : FilesTableModule,
-                               "LogTable"           : LogTableModule,
-                               "LogFilesTable"      : LogFilesTableModule,
-                               "Maintainer"         : MaintainerModule,
-                               "PackagesTable"      : PackagesTableModule,
-                               "PackageTable2"      : PackageTable2Module,
-                               "PackageHeader"      : PackageHeaderModule,
-                               "PackageFilesTable"  : PackageFilesTableModule,
-                               "RepositoryTable"    : RepositoryTableModule,
-                               "RepoActionsTable"   : RepoActionsTableModule,
-                               "SourceTable"        : SourceTableModule,
-                               "UpdatesTable"       : UpdatesTableModule,
-                               "UsersTable"         : UsersTableModule,
-                               "WatchersSidebarTable" : WatchersSidebarTableModule,
-
-                               "HeadingDate"        : HeadingDateModule,
-
-                               "SelectLocale"       : SelectLocaleModule,
-                               "SelectTimezone"     : SelectTimezoneModule,
+                               "PackagesDependencyTable" : ui_modules.PackagesDependencyTableModule,
+
+                               "CommitMessage"      : ui_modules.CommitMessageModule,
+                               "CommitsTable"       : ui_modules.CommitsTableModule,
+                               "JobsBoxes"          : ui_modules.JobsBoxesModule,
+                               "JobState"           : ui_modules.JobStateModule,
+                               "JobsTable"          : ui_modules.JobsTableModule,
+                               "CommentsTable"      : ui_modules.CommentsTableModule,
+                               "FilesTable"         : ui_modules.FilesTableModule,
+                               "LogTable"           : ui_modules.LogTableModule,
+                               "LogFilesTable"      : ui_modules.LogFilesTableModule,
+                               "Maintainer"         : ui_modules.MaintainerModule,
+                               "PackagesTable"      : ui_modules.PackagesTableModule,
+                               "PackageTable2"      : ui_modules.PackageTable2Module,
+                               "PackageHeader"      : ui_modules.PackageHeaderModule,
+                               "PackageFilesTable"  : ui_modules.PackageFilesTableModule,
+                               "RepositoryTable"    : ui_modules.RepositoryTableModule,
+                               "RepoActionsTable"   : ui_modules.RepoActionsTableModule,
+                               "SourceTable"        : ui_modules.SourceTableModule,
+                               "UpdatesTable"       : ui_modules.UpdatesTableModule,
+                               "UsersTable"         : ui_modules.UsersTableModule,
+                               "WatchersSidebarTable" : ui_modules.WatchersSidebarTableModule,
+
+                               "HeadingDate"        : ui_modules.HeadingDateModule,
+
+                               "SelectLocale"       : ui_modules.SelectLocaleModule,
+                               "SelectTimezone"     : ui_modules.SelectTimezoneModule,
                        },
                        ui_methods = {
-                               "format_eta"         : self.format_eta,
                                "format_time"        : self.format_time,
                        },
                        xsrf_cookies = True,
@@ -203,11 +201,11 @@ class Application(tornado.web.Application):
                        (r"/updates", UpdatesHandler),
 
                        # Mirrors
-                       (r"/mirrors", MirrorListHandler),
-                       (r"/mirror/new", MirrorNewHandler),
-                       (r"/mirror/([A-Za-z0-9\-\.]+)/delete", MirrorDeleteHandler),
-                       (r"/mirror/([A-Za-z0-9\-\.]+)/edit", MirrorEditHandler),
-                       (r"/mirror/([A-Za-z0-9\-\.]+)", MirrorDetailHandler),
+                       (r"/mirrors",                                   mirrors.MirrorListHandler),
+                       (r"/mirror/new",                                mirrors.MirrorNewHandler),
+                       (r"/mirror/([\w\-\.]+)/delete", mirrors.MirrorDeleteHandler),
+                       (r"/mirror/([\w\-\.]+)/edit",   mirrors.MirrorEditHandler),
+                       (r"/mirror/([\w\-\.]+)",                mirrors.MirrorDetailHandler),
 
                        # Key management
                        (r"/keys", KeysListHandler),
@@ -285,19 +283,6 @@ class Application(tornado.web.Application):
 
        ## UI methods
 
-       def format_eta(self, handler, (s, stddev)):
-               if s is None:
-                       _ = handler.locale.translate
-                       return _("Unknown")
-
-               if s < 0:
-                       s = 0
-
-               return u"%s ± %s" % (
-                       self.format_time(handler, s),
-                       self.format_time_short(handler, stddev / 2),
-               )
-
        def format_time(self, handler, s, shorter=False):
                _ = handler.locale.translate