Coverage for khufu/tests/test_htmlframework.py : 99%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1from __future__ import print_function
2from builtins import str
3import os
4import unittest
5import shutil
6import yaml
7from khufu.utKit import utKit
8import khufu as dhf
9from fundamentals import tools
10from os.path import expanduser
11home = expanduser("~")
13packageDirectory = utKit("").get_project_root()
14settingsFile = packageDirectory + "/test_settings.yaml"
16su = tools(
17 arguments={"settingsFile": settingsFile},
18 docString=__doc__,
19 logLevel="DEBUG",
20 options_first=False,
21 projectName=None,
22 defaultSettingsFile=False
23)
24arguments, settings, log, dbConn = su.setup()
26# SETUP PATHS TO COMMON DIRECTORIES FOR TEST DATA
27moduleDirectory = os.path.dirname(__file__)
28pathToInputDir = moduleDirectory + "/input/"
29pathToOutputDir = moduleDirectory + "/output/"
31try:
32 shutil.rmtree(pathToOutputDir)
33except:
34 pass
35# COPY INPUT TO OUTPUT DIR
36shutil.copytree(pathToInputDir, pathToOutputDir)
38# Recursively create missing directories
39if not os.path.exists(pathToOutputDir):
40 os.makedirs(pathToOutputDir)
42class test_0001_htmlDocument(unittest.TestCase):
44 def test_htmlDocument_works_as_expected(self):
46 fillerText = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
48 cheatsheet = open(
49 pathToOutputDir + "/dryxPython_htmlframework_cheatsheet.html", 'w')
51 content = ""
52 lt = lambda x: "<BR/><h2>%s</h2>" % (x,)
53 st = lambda x: "<BR/><h4>%s</h4>" % (x,)
54 ct = dhf.code
56 # PAGE DETAILS
57 text = "Page Details:\n"
58 content += lt(text)
59 text = dhf.p(
60 content="webpage-head-and-body",
61 color="success", # [ muted | warning | info | error | success ]
62 )
63 content += "<br><br><em>Snippet:</em> " + text
64 content += "Page constructed from a %s and %s in an %s" % (ct("head"),
65 ct("body"), ct("htmlDocument"))
67 # BASIC GRIDS
68 text = "Basic grid HTML"
69 content += lt(text)
70 text = dhf.p(
71 content="grid-row-with-two-columns",
72 color="success", # [ muted | warning | info | error | success ]
73 )
74 content += "<br><br><em>Snippet:</em> " + text
76 placeHolder1 = dhf.image(
77 # [ industrial | gray | social ]
78 src='holder.js/50x50/social/text:1',
79 )
80 placeHolder2 = dhf.image(
81 # [ industrial | gray | social ]
82 src='holder.js/100x50/social/text:2',
83 )
84 placeHolder3 = dhf.image(
85 # [ industrial | gray | social ]
86 src='holder.js/200x50/social/text:3 offset 3',
87 )
88 text = "%s with %s and %s. Use these items to structure and build your pages.<br><br>" % (
89 ct("grid_row"), ct("grid_coulmn"), ct("placeHolders"))
90 content += text
91 column = dhf.grid_column(
92 span=1, # 1-12
93 offset=0, # 1-12
94 content=placeHolder1
95 )
96 row = dhf.grid_row(
97 responsive=True,
98 columns=column * 12,
99 )
100 content += row + "<br>"
101 column = dhf.grid_column(
102 span=2, # 1-12
103 offset=0, # 1-12
104 content=placeHolder2
105 )
106 row = dhf.grid_row(
107 responsive=True,
108 columns=column * 6,
109 )
110 content += row + "<br>"
111 column = dhf.grid_column(
112 span=3, # 1-12
113 offset=3, # 1-12
114 content=placeHolder3
115 )
116 row = dhf.grid_row(
117 responsive=True,
118 columns=column * 2,
119 )
120 content += row + "<br>"
122 # TEXT
123 text = "Typography"
124 content += lt(text) + "Use a %s with `lead = True`" % (ct("p"),)
125 text = dhf.p(
126 content=fillerText,
127 lead=True,
128 textAlign="left", # [ left | center | right ]
129 color="info", # [ muted | warning | info | error | success ]
130 navBar=False,
131 onPhone=True,
132 onTablet=True,
133 onDesktop=True
134 )
135 content += text
137 textSnip = "<small>this is small, muted, left aligned %s text wrapped in %s tags</small><br>" % (
138 ct("<p>"), ct("<small>"),)
139 text = dhf.p(
140 content=textSnip,
141 textAlign="left", # [ left | center | right ]
142 color="muted" # [ muted | warning | info | error | success ]
143 )
144 content += text
146 textSnip = "<strong>this is bold, warning, centred %s text wrapped in %s tags</strong><br>" % (
147 ct("<p>"), ct("<strong>"),)
148 text = dhf.p(
149 content=textSnip,
150 textAlign="center", # [ left | center | right ]
151 color="warning" # [ muted | warning | info | error | success ]
152 )
153 content += text
155 textSnip = "<em>this is italic, error, right aligned %s text wrapped in %s tags</em><br>" % (
156 ct("<p>"), ct("<em>"),)
157 text = dhf.p(
158 content=textSnip,
159 textAlign="right", # [ left | center | right ]
160 color="error" # [ muted | warning | info | error | success ]
161 )
162 content += text
164 textSnip = "you can also have success %s text<br>" % (ct("<p>"),)
165 text = dhf.p(
166 content=textSnip,
167 textAlign="left", # [ left | center | right ]
168 color="success" # [ muted | warning | info | error | success ]
169 )
170 content += text
172 textSnip = "and you can have info %s text<br>" % (ct("<p>"),)
173 text = dhf.p(
174 content=textSnip,
175 textAlign="left", # [ left | center | right ]
176 color="info" # [ muted | warning | info | error | success ]
177 )
178 content += text
180 textSnip = "or the default %s text<br>" % (ct("<p>"),)
181 text = dhf.p(
182 content=textSnip,
183 textAlign="left", # [ left | center | right ]
184 color="default" # [ muted | warning | info | error | success ]
185 )
186 content += text
188 content += "use %s to create this abbreviation - hover<br><br>" % (
189 ct("abbr"),)
190 kwargs = {}
191 kwargs["abbreviation"] = "abbr<br><br>"
192 kwargs["fullWord"] = "use `abbr` to create this abbreviation"
193 content += dhf.abbr(**kwargs)
195 content += "use %s for an address block:<br><br>" % (ct("address"),)
196 kwargs = {}
197 kwargs["name"] = "name"
198 kwargs["addressLine1"] = "addressLine1"
199 kwargs["addressLine2"] = "addressLine2"
200 kwargs["addressLine3"] = "addressLine3"
201 kwargs["phone"] = "phone"
202 kwargs["email"] = "email"
203 kwargs["twitterHandle"] = "@twitterHandle"
204 content += dhf.address(**kwargs)
206 kwargs = {}
207 kwargs["content"] = "for a quote use %s" % (ct("blockquote"),)
208 kwargs["source"] = "this is the source"
209 kwargs["pullRight"] = True
210 content += dhf.blockquote(**kwargs)
212 # LISTS
213 text = "Lists"
214 content += lt(text)
216 content += "for a unordered list use %s with %s:" % (
217 ct("ul"), ct("li"))
218 kwargs = {}
219 kwargs["itemList"] = ["list Item", "list Item",
220 "list Item", "list Item", "list Item"]
221 kwargs["unstyled"] = False
222 kwargs["inline"] = False
223 kwargs["dropDownMenu"] = False
224 kwargs["navStyle"] = False
225 kwargs["navPull"] = False
226 kwargs["navDirection"] = "horizontal"
227 kwargs["breadcrumb"] = False
228 kwargs["pager"] = False
229 kwargs["thumbnails"] = False
230 kwargs["mediaList"] = False
231 content += dhf.ul(**kwargs)
233 content += "for a ordered list use %s with %s:" % (ct("ol"), ct("li"))
234 kwargs = {}
235 kwargs["itemList"] = ["list Item", "list Item",
236 "list Item", "list Item", "list Item"]
237 content += dhf.ol(**kwargs)
239 content += "you can also have an unstyled list using %s with %s:" % (ct("ul"),
240 ct("li"))
241 kwargs = {}
242 kwargs["itemList"] = ["list Item", "list Item",
243 "list Item", "list Item", "list Item"]
244 kwargs["unstyled"] = True
245 kwargs["inline"] = False
246 kwargs["dropDownMenu"] = False
247 kwargs["navStyle"] = False
248 kwargs["navPull"] = False
249 kwargs["navDirection"] = "horizontal"
250 kwargs["breadcrumb"] = False
251 kwargs["pager"] = False
252 kwargs["thumbnails"] = False
253 kwargs["mediaList"] = False
254 content += dhf.ul(**kwargs)
256 content += "for a description list use %s" % (ct("descriptionLists"),)
257 kwargs = {}
258 kwargs["orderedDictionary"] = {"keyOne": "valueOne"}
259 kwargs["sideBySide"] = False
260 content += dhf.descriptionLists(**kwargs)
262 content += "or line them up with `sideBySide = True`"
263 kwargs = {}
264 kwargs["orderedDictionary"] = {"keyOne": "valueOne"}
265 kwargs["sideBySide"] = True
266 content += dhf.descriptionLists(**kwargs)
268 # CODE
269 text = "Code"
270 content += lt(text)
272 content += "for inline code use %s<br><br>" % (ct("code"),)
274 kwargs = {}
275 kwargs["content"] = "for a code block use `%s` with `inline = False`" % (
276 ct("code"),)
277 kwargs["inline"] = False
278 kwargs["scroll"] = False
279 content += dhf.code(**kwargs)
281 # TABLES
282 text = "Tables"
283 content += lt(text)
284 content += "for a table use %s, with %s, %s and %ss<br><br>" % (ct("table"),
285 ct("thead"), ct("tbody"), ct("tr"))
287 kwargs = {}
288 kwargs["content"] = "th"
289 kwargs["color"] = False
290 th = dhf.th(**kwargs)
292 kwargs = {}
293 kwargs["content"] = "td"
294 kwargs["color"] = False
295 td = dhf.td(**kwargs)
297 kwargs = {}
298 kwargs["cellContent"] = td + td + td + td
299 kwargs["color"] = False
300 tr = dhf.tr(**kwargs)
302 kwargs = {}
303 kwargs["content"] = "for a caption use %s" % (ct("tableCaption"),)
304 tableCaption = dhf.tableCaption(**kwargs)
306 kwargs = {}
307 kwargs["trContent"] = th + th + th + th
308 thead = dhf.thead(**kwargs)
310 kwargs = {}
311 kwargs["trContent"] = tr + tr + tr
312 tbody = dhf.tbody(**kwargs)
314 kwargs = {}
315 kwargs["caption"] = tableCaption
316 kwargs["thead"] = thead
317 kwargs["tbody"] = tbody
318 kwargs["striped"] = False
319 kwargs["bordered"] = False
320 kwargs["hover"] = False
321 kwargs["condensed"] = False
322 content += dhf.table(**kwargs)
324 content += "for a striped table set `striped = True`<br><br>"
325 kwargs = {}
326 kwargs["caption"] = False
327 kwargs["thead"] = thead
328 kwargs["tbody"] = tbody
329 kwargs["striped"] = True
330 kwargs["bordered"] = False
331 kwargs["hover"] = False
332 kwargs["condensed"] = False
333 content += dhf.table(**kwargs)
335 content += "for a bordered table set `bordered = True`<br><br>"
336 kwargs = {}
337 kwargs["caption"] = False
338 kwargs["thead"] = thead
339 kwargs["tbody"] = tbody
340 kwargs["striped"] = False
341 kwargs["bordered"] = True
342 kwargs["hover"] = False
343 kwargs["condensed"] = False
344 content += dhf.table(**kwargs)
346 content += "for hover table set `hover = True`<br><br>"
347 kwargs = {}
348 kwargs["caption"] = False
349 kwargs["thead"] = thead
350 kwargs["tbody"] = tbody
351 kwargs["striped"] = False
352 kwargs["bordered"] = False
353 kwargs["hover"] = True
354 kwargs["condensed"] = False
355 content += dhf.table(**kwargs)
357 kwargs = {}
358 kwargs["cellContent"] = td + td + td + td
359 kwargs["color"] = "info"
360 tri = dhf.tr(**kwargs)
362 kwargs = {}
363 kwargs["cellContent"] = td + td + td + td
364 kwargs["color"] = "warning"
365 trw = dhf.tr(**kwargs)
367 kwargs = {}
368 kwargs["cellContent"] = td + td + td + td
369 kwargs["color"] = "error"
370 tre = dhf.tr(**kwargs)
372 kwargs = {}
373 kwargs["cellContent"] = td + td + td + td
374 kwargs["color"] = "success"
375 trs = dhf.tr(**kwargs)
377 kwargs = {}
378 kwargs["trContent"] = tri + tre + trs + trw
379 tbody = dhf.tbody(**kwargs)
381 content += "for condensed table set `condensed = True` - you can also have colored rows<br><br>"
382 kwargs = {}
383 kwargs["caption"] = False
384 kwargs["thead"] = thead
385 kwargs["tbody"] = tbody
386 kwargs["striped"] = False
387 kwargs["bordered"] = False
388 kwargs["hover"] = False
389 kwargs["condensed"] = True
390 content += dhf.table(**kwargs)
392 # FORMS
393 text = "Forms"
394 content += lt(text)
396 kwargs = {}
397 kwargs["ttype"] = "email"
398 kwargs["placeholder"] = "email"
399 kwargs["prepend"] = "@"
400 kwargs["span"] = 2
401 kwargs["htmlId"] = "email"
402 kwargs["focusedInputText"] = "email"
403 emailInput = dhf.formInput(**kwargs)
405 kwargs = {}
406 kwargs["ttype"] = "password"
407 kwargs["append"] = "?"
408 kwargs["placeholder"] = "password"
409 kwargs["span"] = 2
410 kwargs["htmlId"] = "password"
411 passwordInput = dhf.formInput(**kwargs)
413 kwargs = {}
414 kwargs["ttype"] = "date"
415 kwargs["placeholder"] = "date"
416 kwargs["span"] = 2
417 kwargs["htmlId"] = "date"
418 dateInput = dhf.formInput(**kwargs)
420 text = "<br><br>set `formType = 'horizontal'` for horizontal form. "
422 content += text
424 kwargs = {}
425 kwargs["labelText"] = "email"
426 kwargs["forId"] = "email"
427 emailLabel = dhf.horizontalFormControlLabel(**kwargs)
429 kwargs = {}
430 kwargs["labelText"] = "date"
431 kwargs["forId"] = "date"
432 dateLabel = dhf.horizontalFormControlLabel(**kwargs)
434 kwargs = {}
435 kwargs["labelText"] = "password"
436 kwargs["forId"] = "password"
437 passwordLabel = dhf.horizontalFormControlLabel(**kwargs)
439 kwargs = {}
440 kwargs["inputList"] = [emailInput, ]
441 emailInputRow = dhf.controlRow(**kwargs)
443 kwargs = {}
444 kwargs["inputList"] = [passwordInput, ]
445 passwordInputRow = dhf.controlRow(**kwargs)
447 kwargs = {}
448 kwargs["inputList"] = [dateInput, ]
449 dateInputRow = dhf.controlRow(**kwargs)
451 kwargs = {}
452 kwargs["content"] = emailLabel + emailInputRow
453 kwargs["validationLevel"] = False
454 emailCG = dhf.horizontalFormControlGroup(**kwargs)
456 kwargs = {}
457 kwargs["content"] = passwordLabel + passwordInputRow
458 kwargs["validationLevel"] = False
459 passwordCG = dhf.horizontalFormControlGroup(**kwargs)
461 kwargs = {}
462 kwargs["content"] = dateLabel + dateInputRow
463 kwargs["validationLevel"] = False
464 dateCG = dhf.horizontalFormControlGroup(**kwargs)
466 kwargs = {}
467 kwargs["inputList"] = [emailInput, ]
468 emailInputRow = dhf.controlRow(**kwargs)
469 kwargs = {}
470 kwargs["labelText"] = "email"
471 kwargs["forId"] = "email"
472 emailLabel = dhf.horizontalFormControlLabel(**kwargs)
473 kwargs = {}
474 kwargs["inputList"] = [emailInput, ]
475 emailInputRow = dhf.controlRow(**kwargs)
476 kwargs = {}
477 kwargs["content"] = emailLabel + emailInputRow
478 kwargs["validationLevel"] = False
479 emailCG = dhf.horizontalFormControlGroup(**kwargs)
481 label = dhf.horizontalFormControlLabel(
482 labelText='radio button',
483 forId="radioButton1"
484 )
485 radioCheck = dhf.radio(
486 optionText='option 1',
487 optionNumber=1,
488 inlineHelpText=False,
489 blockHelpText=False,
490 disabled=False
491 )
492 radioCheck2 = dhf.radio(
493 optionText='option 2',
494 optionNumber=2,
495 inlineHelpText=False,
496 blockHelpText=False,
497 disabled=False
498 )
499 formRow = dhf.controlRow(
500 inputList=[radioCheck, radioCheck2])
501 radioCG = dhf.horizontalFormControlGroup(
502 content=label + formRow,
503 validationLevel=False
504 )
506 label = dhf.horizontalFormControlLabel(
507 labelText='checkbox',
508 forId="checbox"
509 )
510 checkbox = dhf.checkbox(
511 optionText='checkbox',
512 inline=False,
513 htmlId="checkbox",
514 optionNumber=1,
515 inlineHelpText=False,
516 blockHelpText=False,
517 disabled=False
518 )
519 formRow = dhf.controlRow(
520 inputList=[checkbox, ])
521 checkboxCG = dhf.horizontalFormControlGroup(
522 content=label + formRow,
523 validationLevel=False
524 )
526 button = dhf.button(
527 buttonText='default button',
528 # [ default | primary | info | success | warning | danger | inverse | link ]
529 buttonStyle='primary',
530 buttonSize='default', # [ large | default | small | mini ]
531 href="#",
532 submit=True
533 )
535 button5 = dhf.button(
536 buttonText='button5',
537 # [ default | primary | info | success | warning | danger | inverse | link ]
538 buttonStyle='info',
539 buttonSize='default', # [ large | default | small | mini ]
540 href="#",
541 submit=True
542 )
544 button2 = dhf.button(
545 buttonText='button2',
546 # [ default | primary | info | success | warning | danger | inverse | link ]
547 buttonStyle='success',
548 buttonSize='default', # [ large | default | small | mini ]
549 href="#",
550 submit=True
551 )
553 button3 = dhf.button(
554 buttonText='button3',
555 # [ default | primary | info | success | warning | danger | inverse | link ]
556 buttonStyle='warning',
557 buttonSize='mini', # [ large | default | small | mini ]
558 href="#",
559 submit=True
560 )
562 button4 = dhf.button(
563 buttonText='button4',
564 # [ efault | primary | info | success | warning | danger | inverse | link ]
565 buttonStyle='danger',
566 buttonSize='small', # [ large | default | small | mini ]
567 href="#",
568 submit=True
569 )
571 button6 = dhf.button(
572 buttonText='button4',
573 # [ efault | primary | info | success | warning | danger | inverse | link ]
574 buttonStyle='inverse',
575 buttonSize='large', # [ large | default | small | mini ]
576 href="#",
577 submit=True
578 )
580 button7 = dhf.button(
581 buttonText='link button',
582 # [ efault | primary | info | success | warning | danger | inverse | link ]
583 buttonStyle='link',
584 buttonSize='default', # [ large | default | small | mini ]
585 href="#",
586 submit=True
587 )
589 button8 = dhf.button(
590 buttonText='large block-level and disabled',
591 # [ default | primary | info | success | warning | danger | inverse | link ]
592 buttonStyle='success',
593 buttonSize='large', # [ large | default | small | mini ]
594 href="#",
595 submit=False,
596 block=True,
597 disable=True
598 )
600 text = "form Actions"
601 kwargs = {}
602 kwargs["primaryButton"] = button
603 kwargs["button2"] = button2
604 kwargs["button3"] = button3
605 kwargs["button4"] = button4
606 kwargs["button5"] = button5
607 kwargs["inlineHelpText"] = False
608 kwargs["blockHelpText"] = False
609 formActions = dhf.formActions(**kwargs)
611 text = "more form Actions"
612 kwargs = {}
613 kwargs["primaryButton"] = button6
614 kwargs["button2"] = button7
615 kwargs["button3"] = button8
616 kwargs["inlineHelpText"] = False
617 kwargs["blockHelpText"] = False
618 moreformActions = dhf.formActions(**kwargs)
620 htmlId = "uneditable",
621 label = dhf.horizontalFormControlLabel(
622 labelText='uneditable input',
623 forId=htmlId
624 )
625 kwargs = {}
626 kwargs["placeholder"] = "uneditableInput"
627 kwargs["span"] = 2
628 kwargs["inlineHelpText"] = False
629 kwargs["blockHelpText"] = False
630 uneditableInput = dhf.uneditableInput(**kwargs)
631 formRow = dhf.controlRow(
632 inputList=[uneditableInput, ])
633 uneditableInputCG = dhf.horizontalFormControlGroup(
634 content=label + formRow,
635 validationLevel=False
636 )
638 label = dhf.horizontalFormControlLabel(
639 labelText='textarea',
640 forId='textarea'
641 )
642 textarea = dhf.textarea(
643 rows='',
644 span=2,
645 htmlId='textarea',
646 inlineHelpText=False,
647 blockHelpText=False,
648 focusedInputText=False,
649 required=False,
650 disabled=False
651 )
652 formRow = dhf.controlRow(
653 inputList=[textarea, ]
654 )
655 textareaCG = dhf.horizontalFormControlGroup(
656 content=label + formRow,
657 validationLevel=False
658 )
660 label = dhf.horizontalFormControlLabel(
661 labelText='selection',
662 forId='selection'
663 )
664 kwargs = {}
665 kwargs["optionList"] = ["select list",
666 "link", "link", "link", "link", ]
667 kwargs["multiple"] = False
668 kwargs["span"] = 2
669 kwargs["inlineHelpText"] = False
670 kwargs["blockHelpText"] = False
671 kwargs["required"] = False
672 kwargs["disabled"] = False
673 select = dhf.select(**kwargs)
674 formRow = dhf.controlRow(
675 inputList=[select, ])
676 selectionCG = dhf.horizontalFormControlGroup(
677 content=label + formRow,
678 validationLevel=False
679 )
681 htmlId = "mulSelection",
682 label = dhf.horizontalFormControlLabel(
683 labelText='multiple selection',
684 forId=htmlId
685 )
686 multipleselection = dhf.select(
687 optionList=["select list", "link", "link", "link", "link", ],
688 multiple=True,
689 span=2,
690 htmlId=htmlId,
691 inlineHelpText=False,
692 blockHelpText=False,
693 required=False,
694 disabled=False
695 )
696 formRow = dhf.controlRow(
697 inputList=[multipleselection, ])
698 multipleselectionCG = dhf.horizontalFormControlGroup(
699 content=label + formRow,
700 validationLevel=False
701 )
703 htmlId = "inlineChecks",
704 label = dhf.horizontalFormControlLabel(
705 labelText='inline checkboxes',
706 forId=htmlId
707 )
709 check1 = dhf.checkbox(
710 optionText='1',
711 inline=True,
712 htmlId=htmlId,
713 optionNumber=1,
714 inlineHelpText=False,
715 blockHelpText=False,
716 disabled=False
717 )
719 check2 = dhf.checkbox(
720 optionText='2',
721 inline=True,
722 htmlId=htmlId,
723 optionNumber=2,
724 inlineHelpText=False,
725 blockHelpText=False,
726 disabled=False
727 )
729 check3 = dhf.checkbox(
730 optionText='3',
731 inline=True,
732 htmlId=htmlId,
733 optionNumber=3,
734 inlineHelpText=False,
735 blockHelpText=False,
736 disabled=False
737 )
739 inlinecheckboxes = check1 + check2 + check3
741 formRow = dhf.controlRow(
742 inputList=[inlinecheckboxes, ])
743 inlinecheckboxesCG = dhf.horizontalFormControlGroup(
744 content=label + formRow,
745 validationLevel=False
746 )
748 goButton = dhf.button(
749 buttonText='Go',
750 # [ default | primary | info | success | warning | danger | inverse | link ]
751 buttonStyle='default',
752 buttonSize='default', # [ large | default | small | mini ]
753 href=False,
754 submit=False,
755 block=False,
756 disable=False
757 )
759 htmlId = "urlInput",
760 label = dhf.horizontalFormControlLabel(
761 labelText='url',
762 forId=htmlId
763 )
764 url = dhf.formInput(
765 ttype='url',
766 placeholder='url',
767 span=2,
768 htmlId=False,
769 searchBar=False,
770 pull=False,
771 prepend=False,
772 append=False,
773 button1=goButton,
774 button2=False,
775 appendDropdown=False,
776 inlineHelpText=False,
777 blockHelpText=False,
778 focusedInputText=False,
779 required=False,
780 disabled=False
781 )
782 formRow = dhf.controlRow(
783 inputList=[url, ])
784 urlCG = dhf.horizontalFormControlGroup(
785 content=label + formRow,
786 validationLevel=False
787 )
789 link = dhf.li(
790 content='link', # if a subMenu for dropdown this should be <ul>
791 span=False, # [ False | 1-12 ]
792 disabled=False,
793 submenuTitle=False,
794 divider=False,
795 navStyle=False, # [ active | header ]
796 navDropDown=False,
797 pager=False # [ False | "previous" | "next" ]
798 )
800 dropdown = dhf.dropdown(
801 buttonSize='default',
802 buttonColor='default',
803 menuTitle='Actions',
804 splitButton=False,
805 linkList=[link, link, link, link, link, ],
806 separatedLinkList=False,
807 pull=False,
808 direction='down',
809 onPhone=True,
810 onTablet=True,
811 onDesktop=True
812 )
814 htmlId = "numner",
815 label = dhf.horizontalFormControlLabel(
816 labelText='input with dropdown',
817 forId=htmlId
818 )
819 inputwithdropdown = dhf.formInput(
820 ttype='number',
821 placeholder='',
822 span=2,
823 htmlId='number',
824 appendDropdown=dropdown,
825 inlineHelpText=False,
826 blockHelpText=False,
827 focusedInputText=False,
828 required=False,
829 disabled=False
830 )
831 formRow = dhf.controlRow(
832 inputList=[inputwithdropdown, ])
833 inputwithdropdownCG = dhf.horizontalFormControlGroup(
834 content=label + formRow,
835 validationLevel=False
836 )
838 content += "<br><br>For a form item use snippet %s" % (
839 ct("horizontal-form-item"),)
840 content += "<small>- this places a %s and a %s within a %s</small>" % (
841 ct("horizontalFormControlLabel"), ct("controlRow"), ct("horizontalFormControlGroup"))
843 kwargs = {}
844 kwargs["content"] = emailCG + passwordCG + dateCG + textareaCG + radioCG + checkboxCG + selectionCG + uneditableInputCG + \
845 multipleselectionCG + inlinecheckboxesCG + urlCG + inputwithdropdownCG + \
846 formActions + moreformActions
847 kwargs["formType"] = "horizontal"
848 kwargs["navBarPull"] = False
849 content += dhf.form(**kwargs)
851 kwargs = {}
852 kwargs["buttonText"] = "search me"
853 kwargs["span"] = 2
854 kwargs["inlineHelpText"] = False
855 kwargs["blockHelpText"] = False
856 kwargs["focusedInputText"] = False
857 kwargs["htmlId"] = 'searchForm'
858 searchForm = dhf.searchForm(**kwargs)
859 content += searchForm
861 # IMAGES
862 text = "Images"
863 content += lt(text)
864 thisImage = dhf.image(
865 src='holder.js/200x200/auto/industrial/text:rounded image',
866 href=False,
867 display="rounded", # [ rounded | circle | polaroid ]
868 pull="left", # [ "left" | "right" | "center" ]
869 htmlClass=False,
870 thumbnail=False,
871 width=False,
872 onPhone=True,
873 onTablet=True,
874 onDesktop=True
875 )
876 content += thisImage
878 thisImage = dhf.image(
879 src='holder.js/200x200/auto/industrial/text:circle image',
880 href=False,
881 display="circle", # [ rounded | circle | polaroid ]
882 pull="left", # [ "left" | "right" | "center" ]
883 htmlClass=False,
884 thumbnail=False,
885 width=False,
886 onPhone=True,
887 onTablet=True,
888 onDesktop=True
889 )
890 content += thisImage
892 thisImage = dhf.image(
893 src='holder.js/200x200/auto/industrial/text:polaroid image',
894 href=False,
895 display="polaroid", # [ rounded | circle | polaroid ]
896 pull="left", # [ "left" | "right" | "center" ]
897 htmlClass=False,
898 thumbnail=False,
899 width=False,
900 onPhone=True,
901 onTablet=True,
902 onDesktop=True
903 )
904 content += thisImage
906 # Icons
907 text = "Icons"
908 content += lt(text)
910 content += """<span class="icon-paper"></span>"""
911 content += """<i class="icon-location"></i>"""
913 # Dropdown
914 text = "Dropdowns"
915 content += lt(text)
917 link = dhf.a(
918 content='link',
919 href="#",
920 tableIndex=-1,
921 triggerStyle=False
922 )
923 disabledLink = dhf.li(
924 content=link, # if a subMenu for dropdown this should be <ul>
925 span=False, # [ False | 1-12 ]
926 disabled=True,
927 submenuTitle=False,
928 divider=False,
929 navStyle=False, # [ active | header ]
930 navDropDown=False,
931 pager=False # [ False | "previous" | "next" ]
932 )
933 liveLink = dhf.li(
934 content=link, # if a subMenu for dropdown this should be <ul>
935 span=False, # [ False | 1-12 ]
936 disabled=False,
937 submenuTitle=False,
938 divider=False,
939 navStyle=False, # [ active | header ]
940 navDropDown=False,
941 pager=False # [ False | "previous" | "next" ]
942 )
944 link = dhf.a(
945 content='link',
946 href="#",
947 tableIndex=-1,
948 triggerStyle=False
949 )
950 linkListItem = dhf.li(
951 content=link, # if a subMenu for dropdown this should be <ul>
952 span=False, # [ False | 1-12 ]
953 disabled=False,
954 submenuTitle=False,
955 divider=False,
956 navStyle=False, # [ active | header ]
957 navDropDown=False,
958 pager=False # [ False | "previous" | "next" ]
959 )
961 rightAlignDropdown = dhf.dropdown(
962 buttonSize='default',
963 buttonColor='default',
964 menuTitle='right align',
965 splitButton=False,
966 linkList=[disabledLink, liveLink, disabledLink,
967 liveLink, liveLink, liveLink, ],
968 separatedLinkList=False,
969 pull="right",
970 direction='down',
971 onPhone=True,
972 onTablet=True,
973 onDesktop=True
974 )
975 content += rightAlignDropdown
977 subMenu = dhf.ul(
978 itemList=[liveLink, disabledLink, liveLink, liveLink, liveLink],
979 unstyled=False,
980 inline=False,
981 dropDownMenu=True,
982 navStyle=False,
983 navPull=False,
984 navDirection='horizontal',
985 breadcrumb=False,
986 pager=False,
987 thumbnails=False,
988 mediaList=False
989 )
990 subMenu = dhf.li(
991 content=subMenu, # if a subMenu for dropdown this should be <ul>
992 span=False, # [ False | 1-12 ]
993 disabled=False,
994 submenuTitle="More Options",
995 divider=False,
996 navStyle=False, # [ active | header ]
997 navDropDown=False,
998 pager=False # [ False | "previous" | "next" ]
999 )
1000 thisDropdown = dhf.dropdown(
1001 buttonSize='default',
1002 buttonColor='default',
1003 menuTitle='dropdown with submenu',
1004 splitButton=False,
1005 linkList=[liveLink, disabledLink, liveLink, liveLink, subMenu],
1006 separatedLinkList=False,
1007 pull=False,
1008 direction='down',
1009 onPhone=True,
1010 onTablet=True,
1011 onDesktop=True
1012 )
1014 content += thisDropdown
1016 # Button Groups
1017 text = "Button Groups"
1018 content += lt(text)
1020 button1 = dhf.button(
1021 buttonText='button1',
1022 # [ default | primary | info | success | warning | danger | inverse | link ]
1023 buttonStyle='default',
1024 buttonSize='default', # [ large | default | small | mini ]
1025 href=False,
1026 submit=False,
1027 block=False,
1028 disable=False
1029 )
1030 button2 = dhf.button(
1031 buttonText='button2',
1032 # [ default | primary | info | success | warning | danger | inverse | link ]
1033 buttonStyle='default',
1034 buttonSize='default', # [ large | default | small | mini ]
1035 href=False,
1036 submit=False,
1037 block=False,
1038 disable=False
1039 )
1040 button3 = dhf.button(
1041 buttonText='button3',
1042 # [ default | primary | info | success | warning | danger | inverse | link ]
1043 buttonStyle='default',
1044 buttonSize='default', # [ large | default | small | mini ]
1045 href=False,
1046 submit=False,
1047 block=False,
1048 disable=False
1049 )
1050 buttonGroup = dhf.buttonGroup(
1051 buttonList=[button1, button2, button3, ],
1052 format='default'
1053 )
1054 content += buttonGroup
1056 buttonGroup = dhf.buttonGroup(
1057 buttonList=[buttonGroup, buttonGroup, buttonGroup],
1058 format='toolbar' # [ default | toolbar | vertical ]
1059 )
1060 content += buttonGroup
1062 buttonGroup = dhf.buttonGroup(
1063 buttonList=[button1, button2, button3, ],
1064 format='vertical' # [ default | toolbar | vertical ]
1065 )
1066 content += buttonGroup
1068 # Button Dropdowns
1069 text = "Button Dropdowns"
1070 content += lt(text)
1072 thisDropdown = dhf.dropdown(
1073 buttonSize='large',
1074 buttonColor='info',
1075 menuTitle='button dropdown',
1076 splitButton=True,
1077 linkList=[liveLink, liveLink, liveLink, liveLink, ],
1078 separatedLinkList=False,
1079 pull=False,
1080 direction='up',
1081 onPhone=True,
1082 onTablet=True,
1083 onDesktop=True
1084 )
1085 content += thisDropdown
1087 # Navs
1088 text = "Navs"
1089 content += lt(text)
1091 link = dhf.a(
1092 content='page',
1093 href="#",
1094 triggerStyle=False
1095 )
1096 linkListItem = dhf.li(
1097 content=link, # if a subMenu for dropdown this should be <ul>
1098 span=False, # [ False | 1-12 ]
1099 disabled=False,
1100 submenuTitle=False,
1101 divider=False,
1102 navStyle="active", # [ active | header ]
1103 navDropDown=False,
1104 pager=False # [ False | "previous" | "next" ]
1105 )
1106 tabs = dhf.ul(
1107 # e.g a list links
1108 itemList=[liveLink, disabledLink, liveLink, linkListItem, ],
1109 unstyled=False,
1110 inline=False,
1111 dropDownMenu=False, # [ false | true ]
1112 navStyle="tabs", # [ nav | tabs | pills | list ]
1113 navPull=False, # [ false | left | right ]
1114 navDirection='default', # [ 'default' | 'stacked' | 'horizontal' ]
1115 breadcrumb=False, # [ False | True ]
1116 pager=False,
1117 thumbnails=False,
1118 mediaList=False
1119 )
1120 content += tabs
1122 pills = dhf.ul(
1123 # e.g a list links
1124 itemList=[liveLink, disabledLink, liveLink, linkListItem, ],
1125 unstyled=False,
1126 inline=False,
1127 dropDownMenu=False, # [ false | true ]
1128 navStyle="pills", # [ nav | tabs | pills | list ]
1129 navPull="right", # [ false | left | right ]
1130 navDirection='default', # [ 'default' | 'stacked' | 'horizontal' ]
1131 breadcrumb=False, # [ False | True ]
1132 pager=False,
1133 thumbnails=False,
1134 mediaList=False
1135 )
1136 content += pills
1138 stackedTabs = dhf.ul(
1139 # e.g a list links
1140 itemList=[liveLink, disabledLink, liveLink, linkListItem, ],
1141 unstyled=False,
1142 inline=False,
1143 dropDownMenu=False, # [ false | true ]
1144 navStyle="tabs", # [ nav | tabs | pills | list ]
1145 navPull=False, # [ false | left | right ]
1146 navDirection='stacked', # [ 'default' | 'stacked' | 'horizontal' ]
1147 breadcrumb=False, # [ False | True ]
1148 pager=False,
1149 thumbnails=False,
1150 mediaList=False
1151 )
1152 content += stackedTabs
1154 droplink = dhf.a(
1155 content='dropdown',
1156 href=False,
1157 tableIndex=False,
1158 triggerStyle='dropdown' # [ False | "dropdown" | "tab" ]
1159 )
1160 ul = dhf.ul(
1161 itemList=[link, link, link], # e.g a list links
1162 unstyled=False,
1163 inline=False,
1164 dropDownMenu=True, # [ false | true ]
1165 navStyle=False, # [ nav | tabs | pills | list ]
1166 navPull=False, # [ false | left | right ]
1167 # [ 'default' | 'stacked' | 'horizontal' ]
1168 navDirection='horizontal',
1169 breadcrumb=False, # [ False | True ]
1170 pager=False,
1171 thumbnails=False,
1172 mediaList=False
1173 )
1174 dropdown = dhf.li(
1175 # if a subMenu for dropdown this should be <ul>
1176 content=droplink + ul,
1177 span=False, # [ False | 1-12 ]
1178 disabled=False,
1179 submenuTitle=False,
1180 divider=False,
1181 navStyle=False, # [ active | header ]
1182 navDropDown=True,
1183 pager=False # [ False | "previous" | "next" ]
1184 )
1185 stackedPills = dhf.ul(
1186 # e.g a list links
1187 itemList=[liveLink, disabledLink,
1188 liveLink, dropdown, linkListItem],
1189 unstyled=False,
1190 inline=False,
1191 dropDownMenu=False, # [ false | true ]
1192 navStyle="pills", # [ nav | tabs | pills | list ]
1193 navPull=False, # [ false | left | right ]
1194 navDirection='default', # [ 'default' | 'stacked' | 'horizontal' ]
1195 breadcrumb=False, # [ False | True ]
1196 pager=False,
1197 thumbnails=False,
1198 mediaList=False
1199 )
1200 content += stackedPills
1202 tabPills = dhf.ul(
1203 # e.g a list links
1204 itemList=[liveLink, disabledLink,
1205 liveLink, dropdown, linkListItem],
1206 unstyled=False,
1207 inline=False,
1208 dropDownMenu=False, # [ false | true ]
1209 navStyle="tabs", # [ nav | tabs | pills | list ]
1210 navPull=False, # [ false | left | right ]
1211 navDirection='default', # [ 'default' | 'stacked' | 'horizontal' ]
1212 breadcrumb=False, # [ False | True ]
1213 pager=False,
1214 thumbnails=False,
1215 mediaList=False
1216 )
1217 content += tabPills
1219 header = dhf.li(
1220 # if a subMenu for dropdown this should be <ul>
1221 content='header title',
1222 span=False, # [ False | 1-12 ]
1223 disabled=False,
1224 submenuTitle=False,
1225 divider=False,
1226 navStyle="header", # [ active | header ]
1227 navDropDown=False,
1228 pager=False # [ False | "previous" | "next" ]
1229 )
1230 active = dhf.li(
1231 content=link, # if a subMenu for dropdown this should be <ul>
1232 span=False, # [ False | 1-12 ]
1233 disabled=False,
1234 submenuTitle=False,
1235 divider=False,
1236 navStyle="active", # [ active | header ]
1237 navDropDown=False,
1238 pager=False # [ False | "previous" | "next" ]
1239 )
1240 item = dhf.li(
1241 content=link, # if a subMenu for dropdown this should be <ul>
1242 span=False, # [ False | 1-12 ]
1243 disabled=False,
1244 submenuTitle=False,
1245 divider=False,
1246 navStyle=False, # [ active | header ]
1247 navDropDown=False,
1248 pager=False # [ False | "previous" | "next" ]
1249 )
1250 item = dhf.li(
1251 content=link, # if a subMenu for dropdown this should be <ul>
1252 span=False, # [ False | 1-12 ]
1253 disabled=False,
1254 submenuTitle=False,
1255 divider=False,
1256 navStyle=False, # [ active | header ]
1257 navDropDown=False,
1258 pager=False # [ False | "previous" | "next" ]
1259 )
1260 divider = dhf.li(
1261 content='', # if a subMenu for dropdown this should be <ul>
1262 span=False, # [ False | 1-12 ]
1263 disabled=False,
1264 submenuTitle=False,
1265 divider=True,
1266 navStyle=False, # [ active | header ]
1267 navDropDown=False,
1268 pager=False # [ False | "previous" | "next" ]
1269 )
1270 navList = dhf.ul(
1271 # e.g a list links
1272 itemList=[header, active, link, link,
1273 divider, header, active, link, link, ],
1274 unstyled=False,
1275 inline=False,
1276 dropDownMenu=False, # [ false | true ]
1277 navStyle="list", # [ nav | tabs | pills | list ]
1278 navPull=False, # [ false | left | right ]
1279 # [ 'default' | 'stacked' | 'horizontal' ]
1280 navDirection='horizontal',
1281 breadcrumb=False, # [ False | True ]
1282 pager=False,
1283 thumbnails=False,
1284 mediaList=False
1285 )
1286 content += navList
1288 text = "Tabbable Navigation"
1289 content += lt(text)
1291 text = dhf.p(
1292 content="x-tabbableNavigation",
1293 color="success", # [ muted | warning | info | error | success ]
1294 )
1295 content += "<br><br><em>Snippet:</em> " + text
1297 tabbableNavigation = dhf.tabbableNavigation(
1298 contentDictionary={"section 1": "this is section 1 content", "section 2":
1299 "this is section 2 content", "section 3": "this is section 3 content", }, # { name : content }
1300 fadeIn=True,
1301 direction='top'
1302 )
1303 content += tabbableNavigation
1305 tabbableNavigation = dhf.tabbableNavigation(
1306 contentDictionary={"section 1": "this is section 1 content", "section 2":
1307 "this is section 2 content", "section 3": "this is section 3 content", }, # { name : content }
1308 fadeIn=True,
1309 direction='below'
1310 )
1311 content += tabbableNavigation
1313 tabbableNavigation = dhf.tabbableNavigation(
1314 contentDictionary={"section 1": "this is section 1 content", "section 2":
1315 "this is section 2 content", "section 3": "this is section 3 content", }, # { name : content }
1316 fadeIn=True,
1317 direction='left'
1318 )
1319 content += tabbableNavigation
1321 tabbableNavigation = dhf.tabbableNavigation(
1322 contentDictionary={"section 1": "this is section 1 content", "section 2":
1323 "this is section 2 content", "section 3": "this is section 3 content", }, # { name : content }
1324 fadeIn=True,
1325 direction='right'
1326 )
1327 content += tabbableNavigation
1329 # Navbar
1330 text = "Navbar"
1331 content += lt(text)
1333 searchForm = dhf.form(
1334 content='', # dictionary
1335 # [ "inline" | "horizontal" | "search" | "navbar-form" | "navbar-search" ]
1336 formType='navbar-search',
1337 navBarPull="right" # [ false | right | left ]
1338 )
1340 pageLink = dhf.a(
1341 content='Page',
1342 href='#'
1343 )
1344 itemName = dhf.li(
1345 content=pageLink, # if a subMenu for dropdown this should be <ul>
1346 )
1347 droplink = dhf.a(
1348 content='dropdown',
1349 href=False,
1350 tableIndex=False,
1351 triggerStyle='dropdown' # [ False | "dropdown" | "tab" ]
1352 )
1353 ul = dhf.ul(
1354 itemList=[link, link, link], # e.g a list links
1355 unstyled=False,
1356 inline=False,
1357 dropDownMenu=True, # [ false | true ]
1358 navStyle=False, # [ nav | tabs | pills | list ]
1359 navPull=False, # [ false | left | right ]
1360 # [ 'default' | 'stacked' | 'horizontal' ]
1361 navDirection='horizontal',
1362 breadcrumb=False, # [ False | True ]
1363 pager=False,
1364 thumbnails=False,
1365 mediaList=False
1366 )
1367 dropdown = dhf.li(
1368 # if a subMenu for dropdown this should be <ul>
1369 content=droplink + ul,
1370 span=False, # [ False | 1-12 ]
1371 disabled=False,
1372 submenuTitle=False,
1373 divider=False,
1374 navStyle=False, # [ active | header ]
1375 navDropDown=True,
1376 pager=False # [ False | "previous" | "next" ]
1377 )
1378 navbarForm = dhf.form(
1379 content='', # dictionary
1380 # [ "inline" | "horizontal" | "search" | "navbar-form" | "navbar-search" ]
1381 formType='navbar-form',
1382 navBarPull="left" # [ false | right | left ]
1383 )
1385 navBar = dhf.navBar(
1386 brand='DRYX',
1387 contentList=[itemName, itemName, dropdown], # list of li, dropdown
1388 forms=[searchForm, navbarForm],
1389 dividers=True,
1390 fixedOrStatic=False,
1391 location='top',
1392 responsive=False,
1393 dark=False
1394 )
1395 content += navBar
1397 navBar = dhf.navBar(
1398 brand='bot fixed',
1399 contentList=[itemName, itemName, dropdown], # list of li, dropdown
1400 forms=[searchForm, navbarForm],
1401 dividers=True,
1402 fixedOrStatic="fixed",
1403 location='bottom',
1404 responsive=False,
1405 dark=False
1406 )
1407 content += navBar
1409 navBar = dhf.navBar(
1410 brand='top fixed',
1411 contentList=[itemName, itemName, dropdown], # list of li, dropdown
1412 forms=[searchForm, navbarForm],
1413 dividers=True,
1414 fixedOrStatic="fixed",
1415 location='top',
1416 responsive=False,
1417 dark=False
1418 )
1419 content += navBar
1421 text = dhf.p(
1422 content="responsive-navigation-bar-tmpx",
1423 color="success", # [ muted | warning | info | error | success ]
1424 )
1425 content += "<br><br><em>Snippet:</em> " + text
1426 searchForm = dhf.form(
1427 # [ "inline" | "horizontal" | "search" | "navbar-form" | "navbar-search" ]
1428 formType='navbar-search',
1429 navBarPull="right" # [ false | right | left ]
1430 )
1431 pageLink = dhf.a(
1432 content='page',
1433 href='#'
1434 )
1435 itemName = dhf.li(
1436 content=pageLink, # if a subMenu for dropdown this should be <ul>
1437 )
1438 outsideNavList = [searchForm]
1439 insideNavList = [itemName, itemName, dropdown]
1440 topNavBar = dhf.responsive_navigation_bar(
1441 shade='dark', # [ False | 'dark' ]
1442 brand='resp', # [ image | text ]
1443 outsideNavList=outsideNavList,
1444 insideNavList=insideNavList,
1445 htmlId=False
1446 )
1447 content += topNavBar
1449 # Breadcrumbs
1450 text = "Breadcrumbs"
1451 content += lt(text)
1453 activeItem = dhf.li(
1454 content=pageLink, # if a subMenu for dropdown this should be <ul>
1455 span=False, # [ False | 1-12 ]
1456 disabled=False,
1457 submenuTitle=False,
1458 divider=False,
1459 navStyle="active", # [ active | header ]
1460 navDropDown=False,
1461 pager=False # [ False | "previous" | "next" ]
1462 )
1464 Breadcrumbs = dhf.ul(
1465 itemList=[itemName, itemName, activeItem], # e.g a list links
1466 unstyled=False,
1467 inline=True,
1468 dropDownMenu=False, # [ false | true ]
1469 navStyle=False, # [ nav | tabs | pills | list ]
1470 navPull=False, # [ false | left | right ]
1471 # [ 'default' | 'stacked' | 'horizontal' ]
1472 navDirection='horizontal',
1473 breadcrumb=True, # [ False | True ]
1474 pager=False,
1475 thumbnails=False,
1476 mediaList=False
1477 )
1478 content += Breadcrumbs
1480 # Pagination
1481 text = "Pagination"
1482 content += lt(text)
1484 pagination = dhf.pagination(
1485 listItems=itemName + itemName + activeItem,
1486 size='default',
1487 align='left'
1488 )
1489 content += pagination
1491 pagination = dhf.pagination(
1492 listItems=itemName + itemName + activeItem,
1493 size='large',
1494 align='left'
1495 )
1496 content += pagination
1498 pagination = dhf.pagination(
1499 listItems=itemName + itemName + activeItem,
1500 size='small',
1501 align='centered'
1502 )
1503 content += pagination
1505 pagination = dhf.pagination(
1506 listItems=itemName + itemName + activeItem,
1507 size='mini',
1508 align='right'
1509 )
1510 content += pagination
1512 pager = dhf.ul(
1513 itemList=[itemName, itemName], # e.g a list links
1514 unstyled=False,
1515 inline=False,
1516 dropDownMenu=False, # [ false | true ]
1517 navStyle=False, # [ nav | tabs | pills | list ]
1518 navPull=False, # [ false | left | right ]
1519 # [ 'default' | 'stacked' | 'horizontal' ]
1520 navDirection='horizontal',
1521 breadcrumb=False, # [ False | True ]
1522 pager=True,
1523 thumbnails=False,
1524 mediaList=False
1525 )
1527 content += pager
1529 next = dhf.a(
1530 content='next',
1531 href="#",
1532 tableIndex=False,
1533 triggerStyle=False # [ False | "dropdown" | "tab" ]
1534 )
1535 next = dhf.li(
1536 content=next, # if a subMenu for dropdown this should be <ul>
1537 span=False, # [ False | 1-12 ]
1538 disabled=True,
1539 submenuTitle=False,
1540 divider=False,
1541 navStyle=False, # [ active | header ]
1542 navDropDown=False,
1543 pager="next" # [ False | "previous" | "next" ]
1544 )
1546 previous = dhf.a(
1547 content='previous',
1548 href="#",
1549 tableIndex=False,
1550 triggerStyle=False # [ False | "dropdown" | "tab" ]
1551 )
1552 previous = dhf.li(
1553 content=previous, # if a subMenu for dropdown this should be <ul>
1554 span=False, # [ False | 1-12 ]
1555 disabled=False,
1556 submenuTitle=False,
1557 divider=False,
1558 navStyle=False, # [ active | header ]
1559 navDropDown=False,
1560 pager="previous" # [ False | "previous" | "next" ]
1561 )
1563 pager = dhf.ul(
1564 itemList=[next, previous], # e.g a list links
1565 unstyled=False,
1566 inline=False,
1567 dropDownMenu=False, # [ false | true ]
1568 navStyle=False, # [ nav | tabs | pills | list ]
1569 navPull=False, # [ false | left | right ]
1570 # [ 'default' | 'stacked' | 'horizontal' ]
1571 navDirection='horizontal',
1572 breadcrumb=False, # [ False | True ]
1573 pager=True,
1574 thumbnails=False,
1575 mediaList=False
1576 )
1578 content += pager
1580 ##Labels and Badges
1581 text = "Labels and Badges"
1582 content += lt(text)
1584 label = dhf.label(
1585 text='default',
1586 level='default'
1587 )
1588 content += label
1590 label = dhf.label(
1591 text='success',
1592 level='success'
1593 )
1594 content += label
1596 label = dhf.label(
1597 text='warning',
1598 level='warning'
1599 )
1600 content += label
1602 label = dhf.label(
1603 text='important',
1604 level='important'
1605 )
1606 content += label
1608 label = dhf.label(
1609 text='info',
1610 level='info'
1611 )
1612 content += label
1614 label = dhf.label(
1615 text='inverse',
1616 level='inverse'
1617 )
1618 content += label
1620 badge = dhf.badge(
1621 text='1',
1622 level='default'
1623 )
1624 content += badge
1626 badge = dhf.badge(
1627 text='2',
1628 level='success'
1629 )
1630 content += badge
1632 badge = dhf.badge(
1633 text='3',
1634 level='warning'
1635 )
1636 content += badge
1638 badge = dhf.badge(
1639 text='4',
1640 level='important'
1641 )
1642 content += badge
1644 badge = dhf.badge(
1645 text='5',
1646 level='info'
1647 )
1648 content += badge
1650 badge = dhf.badge(
1651 text='6',
1652 level='inverse'
1653 )
1654 content += badge
1656 # Typography
1657 text = "Typography"
1658 content += lt(text)
1660 heroUnit = dhf.heroUnit(
1661 headline='Hero Unit',
1662 tagline='This is the hero unit',
1663 buttonStyle='primary',
1664 buttonText='push'
1665 )
1666 content += heroUnit
1668 pageHeader = dhf.pageHeader(
1669 headline='Page Header',
1670 tagline='... and subtext'
1671 )
1672 content += pageHeader
1674 # Thumbnails
1675 text = "Thumbnails"
1676 content += lt(text)
1678 Image = dhf.image(
1679 src='holder.js/200x200/auto/industrial/text:test mediaobject',
1680 href=False,
1681 display=False, # [ rounded | circle | polaroid ]
1682 pull="left", # [ "left" | "right" | "center" ]
1683 htmlClass=False,
1684 thumbnail=False,
1685 width=False,
1686 onPhone=True,
1687 onTablet=True,
1688 onDesktop=True
1689 )
1690 link = dhf.a(
1691 content=Image,
1692 href="#",
1693 tableIndex=False,
1694 thumbnail=True,
1695 triggerStyle=False # [ False | "dropdown" | "tab" ]
1696 )
1697 itemName = dhf.li(
1698 content=link, # if a subMenu for dropdown this should be <ul>
1699 span=4, # [ False | 1-12 ]
1700 disabled=False,
1701 submenuTitle=False,
1702 divider=False,
1703 navStyle=False, # [ active | header ]
1704 navDropDown=False,
1705 pager=False # [ False | "previous" | "next" ]
1706 )
1707 thumbnails = dhf.thumbnails(
1708 listItems=[itemName]
1709 )
1710 content += thumbnails
1712 thumbnail_div = dhf.thumbnail_div(
1713 div_content="<h3>header</h3>" + Image + "<small>some text</small>"
1714 )
1715 itemName = dhf.li(
1716 # if a subMenu for dropdown this should be <ul>
1717 content=thumbnail_div,
1718 span=4, # [ False | 1-12 ]
1719 disabled=False,
1720 submenuTitle=False,
1721 divider=False,
1722 navStyle=False, # [ active | header ]
1723 navDropDown=False,
1724 pager=False # [ False | "previous" | "next" ]
1725 )
1726 thumbnails = dhf.thumbnails(
1727 listItems=[itemName]
1728 )
1729 content += thumbnails
1731 # Alerts
1732 text = "Alerts"
1733 content += lt(text)
1735 alert = dhf.alert(
1736 alertText='This is an alert',
1737 alertHeading='Warning',
1738 extraPadding=False,
1739 alertLevel='warning'
1740 )
1741 content += alert
1743 alert = dhf.alert(
1744 alertText='This is an alert - with more padding',
1745 alertHeading='Warning',
1746 extraPadding=True,
1747 alertLevel='error'
1748 )
1749 content += alert
1750 # UNEDITED #
1751 # Generate a alert - TBS style #
1752 # alert #
1753 # dhf:var:get_alert_-_tbs_style.sublime-snippet #
1755 # Progress Bars
1756 text = "Progress Bars"
1757 content += lt(text)
1759 progressBar = dhf.progressBar(
1760 barStyle="plain",
1761 precentageWidth="10",
1762 barLevel="info"
1763 )
1764 content += progressBar
1766 progressBar = dhf.progressBar(
1767 barStyle="striped",
1768 precentageWidth="10",
1769 barLevel="info"
1770 )
1771 content += progressBar
1773 progressBar = dhf.progressBar(
1774 barStyle="striped-active",
1775 precentageWidth="50",
1776 barLevel="danger"
1777 )
1778 content += progressBar
1780 stackedProgressBar = dhf.stackedProgressBar(
1781 barStyle='plain',
1782 infoWidth='10',
1783 successWidth='10',
1784 warningWidth='10',
1785 errorWidth='10'
1786 )
1787 content += stackedProgressBar
1789 Image = dhf.image(
1790 src='holder.js/64x64/auto/industrial/text:test mediaobject',
1791 href=False,
1792 display=False, # [ rounded | circle | polaroid ]
1793 pull="left", # [ "left" | "right" | "center" ]
1794 htmlClass=False,
1795 thumbnail=False,
1796 width=False,
1797 onPhone=True,
1798 onTablet=True,
1799 onDesktop=True
1800 )
1802 link = dhf.a(
1803 content=Image,
1804 href='#',
1805 tableIndex=False,
1806 pull="left",
1807 triggerStyle=False # [ False | "dropdown" | "tab" ]
1808 )
1809 # Media Object
1810 text = "Media Object"
1811 content += lt(text)
1812 mediaObject = dhf.mediaObject(
1813 displayType='div',
1814 imagePath=link,
1815 headlineText="Media Object Headline",
1816 otherContent="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
1817 nestedMediaObjects=False
1818 )
1819 content += mediaObject
1821 mediaObject = dhf.mediaObject(
1822 displayType='div',
1823 imagePath=link,
1824 headlineText="Media Object Headline",
1825 otherContent="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
1826 nestedMediaObjects=mediaObject
1827 )
1828 content += mediaObject
1830 # Misc
1831 text = "Misc"
1832 content += lt(text)
1833 well = dhf.well(
1834 wellText='In a well',
1835 wellSize='default'
1836 )
1837 content += well
1839 well = dhf.well(
1840 wellText='In a large well',
1841 wellSize='large'
1842 )
1843 content += well
1845 well = dhf.well(
1846 wellText='In a small well',
1847 wellSize='small'
1848 )
1849 content += well
1851 content += dhf.closeIcon()
1853 button1 = dhf.button(
1854 buttonText='ok',
1855 # [ default | primary | info | success | warning | danger | inverse | link ]
1856 buttonStyle='default',
1857 buttonSize='default', # [ large | default | small | mini ]
1858 href="#",
1859 submit=False,
1860 block=False,
1861 disable=False
1862 )
1864 button2 = dhf.button(
1865 buttonText='save',
1866 # [ default | primary | info | success | warning | danger | inverse | link ]
1867 buttonStyle='info',
1868 buttonSize='default', # [ large | default | small | mini ]
1869 href="#",
1870 submit=False,
1871 block=False,
1872 disable=False,
1873 dataToggle=False
1874 )
1876 buttonGroup = dhf.buttonGroup(
1877 buttonList=[button1, button2],
1878 format='default' # [ default | toolbar | vertical ]
1879 )
1881 modal = dhf.modals.modal(
1882 modalHeaderContent="This is a modal",
1883 modalBodyContent="<p>Put text or a form in here",
1884 modalFooterContent=buttonGroup,
1885 htmlId="hookId"
1886 )
1887 content += modal
1889 modalButton = dhf.button(
1890 buttonText='Launch Modal',
1891 # [ default | primary | info | success | warning | danger | inverse | link ]
1892 buttonStyle='default',
1893 buttonSize='default', # [ large | default | small | mini ]
1894 href="#hookId",
1895 submit=False,
1896 block=False,
1897 disable=False,
1898 dataToggle="modal"
1899 )
1900 content += modalButton
1902 text = "mediaObject"
1903 content += lt(text)
1904 kwargs = {}
1905 kwargs["displayType"] = 'div'
1906 kwargs["imagePath"] = dhf.image(
1907 # [ industrial | gray | social ]
1908 src='holder.js/200x200/auto/industrial/text:test mediaobject',
1909 )
1910 kwargs["headlineText"] = 'This is a mediaObject'
1911 kwargs["nestedMediaObjects"] = False
1912 content += dhf.mediaObject(**kwargs)
1914 text = "well"
1915 content += lt(text)
1916 kwargs = {}
1917 kwargs["wellText"] = text
1918 wellSize = 'default'
1919 content += dhf.well(**kwargs)
1921 text = "closeIcon"
1922 content += lt(text)
1923 kwargs = {}
1924 content += dhf.closeIcon(**kwargs)
1926 text = "button"
1927 content += lt(text)
1928 kwargs = {}
1929 kwargs["buttonText"] = text
1930 kwargs["buttonStyle"] = "default"
1931 kwargs["buttonSize"] = "default"
1932 kwargs["href"] = "#"
1933 kwargs["submit"] = False
1934 kwargs["block"] = False
1935 kwargs["disable"] = False
1936 oneButton = dhf.button(**kwargs)
1937 content += oneButton
1939 text = "button group"
1940 content += lt(text)
1941 kwargs = {}
1942 kwargs["buttonList"] = [oneButton, oneButton, oneButton]
1943 kwargs["format"] = "default"
1944 content += dhf.buttonGroup(**kwargs)
1946 link = dhf.a(
1947 content='a link',
1948 href="#",
1949 tableIndex=False,
1950 triggerStyle=False
1951 )
1953 linkItem = dhf.li(
1954 content=link, # if a subMenu for dropdown this should be <ul>
1955 span=False, # [ False | 1-12 ]
1956 disabled=False,
1957 submenuTitle=False,
1958 divider=False,
1959 navStyle=False, # [ active | header ]
1960 navDropDown=False,
1961 pager=False # [ False | "previous" | "next" ]
1962 )
1964 text = "dropdown menu"
1965 content += lt(text)
1966 kwargs = {}
1967 kwargs["buttonColor"] = "default"
1968 kwargs["buttonSize"] = "default"
1969 kwargs["buttonColor"] = "default"
1970 kwargs["menuTitle"] = text
1971 kwargs["splitButton"] = False
1972 kwargs["linkList"] = [linkItem, linkItem, linkItem, linkItem, linkItem]
1973 kwargs["separatedLinkList"] = False
1974 kwargs["pull"] = False
1975 kwargs["direction"] = "down"
1976 kwargs["onPhone"] = True
1977 kwargs["onTablet"] = True
1978 kwargs["onDesktop"] = True
1979 content += dhf.dropdown(**kwargs)
1981 text = "unescape html"
1982 content += lt(text)
1983 kwargs = {}
1984 kwargs["html"] = "&@$^(*^) 123 {}()_+~?><?><"
1985 content += dhf.unescape_html(**kwargs)
1987 text = "image"
1988 content += lt(text)
1989 kwargs = {}
1990 kwargs["src"] = "http://placehold.it/200x200"
1991 kwargs["href"] = "#"
1992 kwargs["display"] = "False", # [ rounded | circle | polaroid ]
1993 kwargs["pull"] = "left", # [ "left" | "right" | "center" ]
1994 kwargs["htmlClass"] = False
1995 kwargs["thumbnail"] = False
1996 kwargs["width"] = False
1997 kwargs["onPhone"] = True
1998 kwargs["onTablet"] = True
1999 kwargs["onDesktop"] = True
2000 content += dhf.image(**kwargs)
2002 text = "thumbnail"
2003 content += lt(text)
2004 kwargs = {}
2005 kwargs["listItems"] = text
2006 content += dhf.thumbnails(**kwargs)
2008 text = "label"
2009 content += lt(text)
2010 kwargs = {}
2011 kwargs["text"] = text
2012 # [ "default" | "success" | "warning" | "important" | "info" | "inverse" ]
2013 level = 'default'
2014 content += dhf.label(**kwargs)
2016 text = "badge"
2017 content += lt(text)
2018 kwargs = {}
2019 kwargs["text"] = text
2020 level = 'default'
2021 content += dhf.badge(**kwargs)
2023 text = "alert!"
2024 content += lt(text)
2025 kwargs = {}
2026 kwargs["alertText"] = text
2027 kwargs["alertHeading"] = "alertHeading"
2028 kwargs["extraPadding"] = False
2029 kwargs["alertLevel"] = "warning"
2030 content += dhf.alert(**kwargs)
2032 text = "progressBar"
2033 content += lt(text)
2034 kwargs = {}
2035 kwargs["barStyle"] = "plain"
2036 kwargs["precentageWidth"] = "10"
2037 kwargs["barLevel"] = "info"
2038 content += dhf.progressBar(**kwargs)
2040 text = "stackedProgressBar"
2041 content += lt(text)
2042 kwargs = {}
2043 kwargs["barStyle"] = "plain"
2044 kwargs["infoWidth"] = "10"
2045 kwargs["successWidth"] = "10"
2046 kwargs["warningWidth"] = "10"
2047 kwargs["errorWidth"] = "10"
2048 content += dhf.stackedProgressBar(**kwargs)
2050 text = "responsive_navigation_bar"
2051 content += lt(text)
2052 kwargs = {}
2053 kwargs["brand"] = False
2054 kwargs["outsideNavList"] = False
2055 kwargs["insideNavList"] = False
2056 kwargs["htmlId"] = False
2057 kwargs["onPhone"] = True
2058 kwargs["onTablet"] = True
2059 kwargs["onDesktop"] = True
2060 content += dhf.responsive_navigation_bar(**kwargs)
2062 text = "nav_list"
2063 content += lt(text)
2064 kwargs = {}
2065 kwargs["itemList"] = ["list", "list", "list", "list", "list", ]
2066 kwargs["pull"] = False
2067 kwargs["onPhone"] = True
2068 kwargs["onTablet"] = True
2069 kwargs["onDesktop"] = True
2070 content += dhf.nav_list(**kwargs)
2072 text = "searchbox"
2073 content += lt(text)
2074 kwargs = {}
2075 kwargs["size"] = 'medium'
2076 kwargs["placeHolder"] = False
2077 kwargs["button"] = False
2078 kwargs["buttonSize"] = 'small'
2079 kwargs["buttonColor"] = 'grey'
2080 kwargs["navBar"] = False
2081 kwargs["pull"] = False
2082 content += dhf.searchbox(**kwargs)
2084 text = "tabbableNavigation"
2085 content += lt(text)
2086 kwargs = {}
2087 kwargs["contentDictionary"] = {"link": "link"}
2088 kwargs["fadeIn"] = True
2089 kwargs["direction"] = 'top'
2090 content += dhf.tabbableNavigation(**kwargs)
2092 text = "navBar"
2093 content += lt(text)
2094 kwargs = {}
2095 kwargs["brand"] = "brand"
2096 kwargs["contentList"] = ["link", "link"]
2097 kwargs["dividers"] = False
2098 kwargs["fixedOrStatic"] = False
2099 kwargs["location"] = 'top'
2100 kwargs["responsive"] = False
2101 kwargs["dark"] = False
2102 content += dhf.navBar(**kwargs)
2104 text = "pagination"
2105 content += lt(text)
2106 kwargs = {}
2107 kwargs["listItems"] = "listItems"
2108 kwargs["size"] = "default"
2109 kwargs["align"] = "left"
2110 content += dhf.pagination(**kwargs)
2112 text = "grid_row"
2113 content += lt(text)
2114 kwargs = {}
2115 kwargs["responsive"] = True
2116 kwargs["columns"] = ''
2117 kwargs["htmlId"] = False
2118 kwargs["htmlClass"] = False
2119 kwargs["onPhone"] = True
2120 kwargs["onTablet"] = True
2121 kwargs["onDesktop"] = True
2122 content += dhf.grid_row(**kwargs)
2124 text = "grid_column"
2125 content += lt(text)
2126 kwargs = {}
2127 kwargs["span"] = 1
2128 kwargs["offset"] = 0
2129 kwargs["content"] = text
2130 kwargs["htmlId"] = False
2131 kwargs["htmlClass"] = False
2132 kwargs["onPhone"] = True
2133 kwargs["onTablet"] = True
2134 kwargs["onDesktop"] = True
2135 content += dhf.grid_column(**kwargs)
2137 text = "p"
2138 content += lt(text)
2139 kwargs = {}
2140 kwargs["content"] = text
2141 kwargs["lead"] = False
2142 kwargs["textAlign"] = False
2143 kwargs["color"] = False
2144 kwargs["navBar"] = False
2145 kwargs["onPhone"] = True
2146 kwargs["onTablet"] = True
2147 kwargs["onDesktop"] = True
2148 content += dhf.p(**kwargs)
2150 text = "emphasizeText"
2151 content += lt(text)
2152 kwargs = {}
2153 kwargs["style"] = "em"
2154 kwargs["text"] = text
2155 content += dhf.emphasizeText(**kwargs)
2157 text = "a"
2158 content += lt(text)
2159 kwargs = {}
2160 kwargs["content"] = text
2161 kwargs["href"] = "#"
2162 kwargs["tableIndex"] = False
2163 kwargs["triggerStyle"] = False
2164 content += dhf.a(**kwargs)
2166 text = "heroUnit"
2167 content += lt(text)
2168 kwargs = {}
2169 kwargs["headline"] = text
2170 kwargs["tagline"] = text
2171 kwargs["buttonStyle"] = "primary"
2172 kwargs["buttonText"] = text
2173 kwargs["buttonHref"] = "#"
2174 content += dhf.heroUnit(**kwargs)
2176 text = "pageHeader"
2177 content += lt(text)
2178 kwargs = {}
2179 kwargs["headline"] = "headline"
2180 kwargs["tagline"] = "tagline"
2181 content += dhf.pageHeader(**kwargs)
2183 kwargs = {}
2184 kwargs["navBar"] = False
2185 kwargs["content"] = content
2186 kwargs["htmlId"] = ""
2187 kwargs["extraAttr"] = ""
2188 kwargs["relativeUrlBase"] = ""
2189 kwargs["responsive"] = True
2190 kwargs["googleAnalyticsCode"] = False
2191 kwargs["jsFilePath"] = "main-ck.js"
2192 bodyContent = dhf.body(**kwargs)
2194 kwargs = {}
2195 kwargs["relativeUrlBase"] = ''
2196 kwargs["mainCssFilePath"] = "main.css"
2197 kwargs["pageTitle"] = ""
2198 kwargs["extras"] = ""
2199 headContent = dhf.head(**kwargs)
2201 kwargs = {}
2202 kwargs["contentType"] = False
2203 kwargs["content"] = headContent + bodyContent
2204 content = dhf.htmlDocument(**kwargs)
2205 if content is not None:
2206 cheatsheet.write(content)