示例#1
0
                raise AccessDenied("Only identified users allow!")
            if not self.request.environ["REMOTE_USER"] in self.request.cfg["allows_user"]:
                raise AccessDenied("Permission denied!")

    def process_request(self):
        """
        Abarbeiten des eigentlichen Request. Die ObjectApplication ruft
        automatisch die eigentlichen Programmteile auf
        """
        self.check_rights() # Als erstes die Rechte checken!
        super(PyDown, self).process_request()

    def on_access_denied(self, args):
        """
        Überschreibt die original Ausgabe und ergänzt diese mit
        einem Hinweis, warum der Access Denied ist ;)
        """
        self.request.write("<h1>403 Forbidden</h1>")
        self.request.write("<h3>%s</h3>" % " ".join(args))

    #~ def on_regular_close(self):
        #~ self.request.debug_info()




# Middleware, die den Tag <script_duration /> ersetzt
from ReplacerMiddleware import replacer
app = replacer(PyDown)

示例#2
0
        }

        usernames = self.request.db.last_users()
        usernames = ",".join(usernames)
        self.request.context["serverInfo"] = {
            "totalBandwith": int(round(self.request.db.get_bandwith())),
            "availableBandwith":
            int(round(self.request.db.available_bandwith())),
            "downloadCount": self.request.db.download_count(),
            "user": usernames,
        }

    def render(self, templatename):
        """
        Template mit jinja rendern, dabei wird self.request.context verwendet
        """
        #~ loader = jinja.FileSystemLoader('templates')
        loader = jinja.CachedFileSystemLoader('templates')

        template = jinja.Template(templatename, loader)
        context = jinja.Context(self.request.context)

        self.request.write(template.render(context))

        if cfg["debug"]: self.request.debug_info()


# Middleware, die den Tag <script_duration /> ersetzt
from ReplacerMiddleware import replacer
app = replacer(PyDown)
示例#3
0
    def start(self, contentLength):
        #~ print "Start", contentLength
        self.id = self.db.insert_upload(self.filename,
                                        contentLength,
                                        current_bytes=0)

    def update(self, pos):
        self.db.update_upload(self.id, pos)
        #~ print "pos:", pos

    def finished(self):
        #~ self.db.update_upload(self.id, pos)
        #~ print "finished", self.filename
        pass


app = PyDown

# Middleware, die den Tag <script_duration /> ersetzt
from ReplacerMiddleware import replacer

app = replacer(app)

# callback Funktion für Uploads
from uploadMiddleware import ProgressMiddleware

app = ProgressMiddleware(app,
                         UploadCallback,
                         requestObjectKey,
                         threshold=512 * 1024)
示例#4
0
    def start(self, contentLength):
        #~ print "Start", contentLength
        self.id = self.db.insert_upload(
            self.filename, contentLength, current_bytes=0
        )

    def update(self, pos):
        self.db.update_upload(self.id, pos)
        #~ print "pos:", pos

    def finished(self):
        #~ self.db.update_upload(self.id, pos)
        #~ print "finished", self.filename
        pass


app = PyDown


# Middleware, die den Tag <script_duration /> ersetzt
from ReplacerMiddleware import replacer
app = replacer(app)

# callback Funktion für Uploads
from uploadMiddleware import ProgressMiddleware
app = ProgressMiddleware(
    app, UploadCallback, requestObjectKey, threshold=512*1024
)