1 module deepmagic.layout.code_black.header_block.top_menu;
2 
3 import deepmagic.layout.code_black;
4 
5 class AppLayoutTopMenu : DivElement{
6 	string title = "";
7 
8 	this(){
9 		super();
10 		this.tag.attr["class"] = "media";
11 		this.tag.attr["id"] = "top-menu";
12 		this.init();
13 	}
14 
15 	AElement drawer_toggle(string data_drawer, string href, string class_name, int number, string value){
16 		IElement top_message = new IElement();
17 		top_message.tag.attr["class"] = class_name;
18 		top_message ~= new Text("");
19 
20 		IElement n_count = new IElement();
21 		n_count.tag.attr["class"] = "n-count animated";
22 		import std.conv;
23 		n_count ~= new Text(to!(string)(number));
24 
25 		SpanElement span = new SpanElement();
26 		span ~= new Text(value);
27 
28 		AElement d = new AElement();
29 		d.tag.attr["class"] = "drawer-toggle";
30 		d.tag.attr["data-drawer"] = data_drawer;
31 		d.tag.attr["href"] = href;
32 
33 		d ~= top_message;
34 		d ~= n_count;
35 		d ~= span;
36 
37 		return d;
38 	}
39 
40 	DivElement icon(){
41 		DivElement i = new DivElement();
42 		i.tag.attr["class"] = "pull-left tm-icon";
43 
44 		i ~= drawer_toggle("messages", "#", "sa-top-message", 5, "Messages");
45 		i ~= drawer_toggle("notifications", "#", "sa-top-update", 9, "Updates");
46 
47 		return i;
48 	}
49 
50 	DivElement time(){
51 		SpanElement hours = new SpanElement();
52 		hours.tag.attr["id"] = "hours";
53 		hours ~= new Text(":");
54 
55 		SpanElement min = new SpanElement();
56 		min.tag.attr["id"] = "min";
57 		min ~= new Text(":");
58 
59 		SpanElement sec = new SpanElement();
60 		sec.tag.attr["id"] = "sec";
61 		sec ~= new Text("");
62 
63 		DivElement t = new DivElement();
64 		t.tag.attr["id"] = "time";
65 		t.tag.attr["class"] = "pull-right";
66 
67 		t ~= hours;
68 		t ~= min;
69 		t ~= sec;
70 
71 		return t;
72 	}
73 
74 	DivElement media_body(){
75 		InputElement input = new InputElement();
76 		input.tag.attr["class"] = "main-search";
77 		input.tag.attr["type"] = "text";
78 
79 		DivElement mb = new DivElement();
80 		mb.tag.attr["class"] = "media-body";
81 
82 		mb ~= input;
83 
84 		return mb;
85 	}
86 
87 	override void init(){
88 		this ~= this.icon();
89 		this ~= time();
90 		this ~= media_body();
91 	}
92 }