forked from crunk/distribusi-verse
crunk
3 years ago
2 changed files with 93 additions and 30 deletions
@ -0,0 +1,91 @@ |
|||||
|
import os |
||||
|
from flask import render_template |
||||
|
|
||||
|
from statuspengguna.helper import ( |
||||
|
IsZipUploaded, |
||||
|
CurrentDistribusi, |
||||
|
IsDistribusiLive, |
||||
|
) |
||||
|
|
||||
|
from forms.uploadform import UploadForm |
||||
|
from forms.distribusiform import DistribusiForm |
||||
|
from forms.themeform import ThemeForm |
||||
|
from forms.editorform import EditorForm |
||||
|
from forms.selectorform import SelectorForm |
||||
|
|
||||
|
|
||||
|
def EditCss(): |
||||
|
editorform = EditorForm() |
||||
|
current_distribusi = CurrentDistribusi() |
||||
|
if editorform.validate_on_submit(): |
||||
|
ValidateEditCssForm(editorform, current_distribusi) |
||||
|
return RenderDistribusiTemplate(current_distribusi) |
||||
|
|
||||
|
return RenderEditorTemplate(editorform, current_distribusi) |
||||
|
|
||||
|
|
||||
|
def ValidateEditCssForm(editorform, current_distribusi): |
||||
|
newcssfolder = os.path.join("themes/userstyles", current_distribusi) |
||||
|
if not os.path.exists(newcssfolder): |
||||
|
os.mkdir(newcssfolder) |
||||
|
cssfilename = "{}.css".format(editorform.cssname.data) |
||||
|
with open(os.path.join(newcssfolder, cssfilename), "w") as cssfile: |
||||
|
cssfile.write(editorform.css.data) |
||||
|
cssfile.close |
||||
|
|
||||
|
|
||||
|
def RenderDistribusiTemplate(current_distribusi): |
||||
|
uploadform = UploadForm() |
||||
|
distribusiform = DistribusiForm() |
||||
|
themeform = ThemeForm() |
||||
|
selectorform = SelectorForm() |
||||
|
|
||||
|
files_uploaded = IsZipUploaded(current_distribusi) |
||||
|
distribusi_live = IsDistribusiLive(current_distribusi) |
||||
|
css_selected = True |
||||
|
selectorvisible = False |
||||
|
|
||||
|
template = render_template( |
||||
|
"distribusi.html", |
||||
|
uploadform=uploadform, |
||||
|
distribusiform=distribusiform, |
||||
|
themeform=themeform, |
||||
|
selectorform=selectorform, |
||||
|
files_uploaded=files_uploaded, |
||||
|
distribusi_live=distribusi_live, |
||||
|
css_selected=css_selected, |
||||
|
selectorvisible=selectorvisible, |
||||
|
) |
||||
|
return template |
||||
|
|
||||
|
|
||||
|
def RenderEditorTemplate(editorform, current_distribusi): |
||||
|
htmlplaceholder = HtmlPlaceholder() |
||||
|
|
||||
|
cssplaceholder = CssPlaceholder() |
||||
|
editorform.css.data = cssplaceholder |
||||
|
|
||||
|
files_uploaded = IsZipUploaded(current_distribusi) |
||||
|
distribusi_live = IsDistribusiLive(current_distribusi) |
||||
|
template = render_template( |
||||
|
"editor.html", |
||||
|
files_uploaded=files_uploaded, |
||||
|
distribusi_live=distribusi_live, |
||||
|
editorform=editorform, |
||||
|
htmlplaceholder=htmlplaceholder, |
||||
|
) |
||||
|
return template |
||||
|
|
||||
|
|
||||
|
def CssPlaceholder(): |
||||
|
cssplaceholder = "Try out your CSS here" |
||||
|
with open("themes/editor/placeholder.css") as f: |
||||
|
cssplaceholder = f.read() |
||||
|
return cssplaceholder |
||||
|
|
||||
|
|
||||
|
def HtmlPlaceholder(): |
||||
|
htmlplaceholder = "Write some test HTML here" |
||||
|
with open("themes/editor/placeholder.html") as f: |
||||
|
htmlplaceholder = f.read() |
||||
|
return htmlplaceholder |
Loading…
Reference in new issue