def check_form(self, req, tag): node = self.original quoted_uri = urlquote(node.get_uri()) target = self.get_root(req) + "/uri/" + quoted_uri if IDirectoryNode.providedBy(node): target += "/" check = T.form(action=target, method="post", enctype="multipart/form-data")(T.fieldset( T.input(type="hidden", name="t", value="check"), T.input(type="hidden", name="return_to", value="."), T.legend("Check on this object", class_="freeform-form-label"), T.div( "Verify every bit? (EXPENSIVE):", T.input(type="checkbox", name="verify"), ), T.div("Repair any problems?: ", T.input(type="checkbox", name="repair")), T.div("Add/renew lease on all shares?: ", T.input(type="checkbox", name="add-lease")), T.div( "Emit results in JSON format?: ", T.input(type="checkbox", name="output", value="JSON")), T.input(type="submit", value="Check"), )) return tag(check)
def manifest_form(self, req, tag): ophandle = base32.b2a(os.urandom(16)) manifest = T.form(action=req.path, method="post", enctype="multipart/form-data")(T.fieldset( T.input(type="hidden", name="t", value="start-manifest"), T.legend("Run a manifest operation (EXPENSIVE)", class_="freeform-form-label"), T.div( "Output Format: ", T.select(name="output")( T.option("HTML", value="html", selected="true"), T.option("text", value="text"), T.option("JSON", value="json"), ), ), T.input(type="hidden", name="ophandle", value=ophandle), T.input(type="submit", value="Manifest"), )) return tag(manifest)
def render_GET(self, request): email = self.getRequestEmail(request) request.setHeader('content-type', 'text/html; charset=utf-8') element = tags.html( htmlHead, tags.body(tags.form( tags.fieldset( tags.div( tags.label('Cert e-mail'), tags.label('Username', for_='username'), tags.label('Password', for_='password'), tags.label('Site', for_='site', class_='last'), id='names', ), tags.div( tags.input(disabled='true', value=email), tags.input(name='username', type='text'), tags.input(name='password', type='password'), tags.input(name='site', type='url', class_='last'), id='fields', ), ), tags.button('Generate', type='submit'), action='', method='POST', )), ) return renderElement(request, element)
def deep_stats_form(self, req, tag): ophandle = base32.b2a(os.urandom(16)) deep_stats = T.form(action=req.path, method="post", enctype="multipart/form-data")( T.fieldset( T.input(type="hidden", name="t", value="start-deep-stats"), T.legend("Run a deep-stats operation (EXPENSIVE)", class_="freeform-form-label"), T.input(type="hidden", name="ophandle", value=ophandle), T.input(type="submit", value="Deep-Stats"), )) return tag(deep_stats)
def incident_button(self, req, tag): # this button triggers a foolscap-logging "incident" form = tags.form(tags.fieldset( tags.input(type="hidden", name="t", value="report-incident"), "What went wrong?" + SPACE, tags.input(type="text", name="details"), SPACE, tags.input(type="submit", value=u"Save \u00BB"), ), action="report_incident", method="post", enctype="multipart/form-data") return tags.div(form)
def overwrite_form(self, req, tag): node = self.original root = self.get_root(req) action = "%s/uri/%s" % (root, urllib.quote(node.get_uri())) done_url = "%s/uri/%s?t=info" % (root, urllib.quote(node.get_uri())) overwrite = T.form(action=action, method="post", enctype="multipart/form-data")( T.fieldset( T.input(type="hidden", name="t", value="upload"), T.input(type='hidden', name='when_done', value=done_url), T.legend("Overwrite", class_="freeform-form-label"), "Upload new contents: ", T.input(type="file", name="file"), " ", T.input(type="submit", value="Replace Contents") )) return tag(overwrite)
def deep_check_form(self, req, tag): ophandle = base32.b2a(os.urandom(16)) deep_check = T.form( action=req.path, method="post", enctype="multipart/form-data")(T.fieldset( T.input(type="hidden", name="t", value="start-deep-check"), T.input(type="hidden", name="return_to", value="."), T.legend("Run a deep-check operation (EXPENSIVE)", class_="freeform-form-label"), T.div( "Verify every bit? (EVEN MORE EXPENSIVE):", T.input(type="checkbox", name="verify"), ), T.div("Repair any problems?: ", T.input(type="checkbox", name="repair")), T.div("Add/renew lease on all shares?: ", T.input(type="checkbox", name="add-lease")), T.div("Emit results in JSON format?: ", T.input(type="checkbox", name="output", value="JSON")), T.input(type="hidden", name="ophandle", value=ophandle), T.input(type="submit", value="Deep-Check"), )) return tag(deep_check)