class MirrorListHandler(BaseHandler):
def get(self):
- mirrors = self.pakfire.mirrors
- mirrors_nearby = self.pakfire.mirrors.get_for_location(self.current_address)
+ mirrors = self.backend.mirrors
+ mirrors_nearby = self.backend.mirrors.get_for_location(self.current_address)
mirrors_worldwide = []
for mirror in mirrors:
}
# Get recent log messages.
- kwargs["log"] = self.pakfire.mirrors.get_history(limit=5)
+ kwargs["log"] = self.backend.mirrors.get_history(limit=5)
- self.render("mirrors-list.html", **kwargs)
+ self.render("mirrors/list.html", **kwargs)
class MirrorDetailHandler(BaseHandler):
def get(self, hostname):
- mirror = self.pakfire.mirrors.get_by_hostname(hostname)
+ mirror = self.backend.mirrors.get_by_hostname(hostname)
if not mirror:
raise tornado.web.HTTPError(404, "Could not find mirror: %s" % hostname)
- log = self.pakfire.mirrors.get_history(mirror=mirror, limit=10)
+ log = self.backend.mirrors.get_history(mirror=mirror, limit=10)
- self.render("mirrors-detail.html", mirror=mirror, log=log)
+ self.render("mirrors/detail.html", mirror=mirror, log=log)
class MirrorActionHandler(BaseHandler):
class MirrorNewHandler(MirrorActionHandler):
@tornado.web.authenticated
def get(self, hostname="", path="", hostname_missing=False, path_invalid=False):
- self.render("mirrors-new.html", _hostname=hostname, path=path,
+ self.render("mirrors/new.html", _hostname=hostname, path=path,
hostname_missing=hostname_missing, path_invalid=path_invalid)
@tornado.web.authenticated
})
return self.get(**errors)
- mirror = mirrors.Mirror.create(self.pakfire, hostname, path,
- user=self.current_user)
- assert mirror
+ # Create mirror
+ with self.db.transaction():
+ mirror = self.backend.mirrors.create(hostname, path, user=self.current_user)
self.redirect("/mirror/%s" % mirror.hostname)
class MirrorEditHandler(MirrorActionHandler):
@tornado.web.authenticated
def get(self, hostname):
- mirror = self.pakfire.mirrors.get_by_hostname(hostname)
+ mirror = self.backend.mirrors.get_by_hostname(hostname)
if not mirror:
raise tornado.web.HTTPError(404, "Could not find mirror: %s" % hostname)
- self.render("mirrors-edit.html", mirror=mirror)
+ self.render("mirrors/edit.html", mirror=mirror)
@tornado.web.authenticated
def post(self, hostname):
- mirror = self.pakfire.mirrors.get_by_hostname(hostname)
+ mirror = self.backend.mirrors.get_by_hostname(hostname)
if not mirror:
raise tornado.web.HTTPError(404, "Could not find mirror: %s" % hostname)
- hostname = self.get_argument("name")
- path = self.get_argument("path", "")
- owner = self.get_argument("owner", None)
- contact = self.get_argument("contact", None)
- enabled = self.get_argument("enabled", None)
-
- if enabled:
- mirror.set_status("enabled", user=self.current_user)
- else:
- mirror.set_status("disabled", user=self.current_user)
-
- mirror.hostname = hostname
- mirror.path = path
- mirror.owner = owner
- mirror.contact = contact
+ with self.db.transaction():
+ mirror.hostname = self.get_argument("name")
+ mirror.path = self.get_argument("path", "")
+ mirror.owner = self.get_argument("owner", None)
+ mirror.contact = self.get_argument("contact", None)
+ mirror.supports_https = self.get_argument("supports_https", False)
self.redirect("/mirror/%s" % mirror.hostname)
class MirrorDeleteHandler(MirrorActionHandler):
@tornado.web.authenticated
def get(self, hostname):
- mirror = self.pakfire.mirrors.get_by_hostname(hostname)
+ mirror = self.backend.mirrors.get_by_hostname(hostname)
if not mirror:
raise tornado.web.HTTPError(404, "Could not find mirror: %s" % hostname)
confirmed = self.get_argument("confirmed", None)
if confirmed:
- mirror.set_status("deleted", user=self.current_user)
+ with self.db.transaction():
+ mirror.deleted = True
self.redirect("/mirrors")
return
- self.render("mirrors-delete.html", mirror=mirror)
+ self.render("mirrors/delete.html", mirror=mirror)