summaryrefslogtreecommitdiff
path: root/swat/desktop/index.esp
blob: e45a099156ab16d5bb968d2021f81b49d9df1639 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<% 
/*** Reg stuff ***/
libinclude("base.js");
	page_header("desktop", "Virtual Desktop Design Test", "desktop");
%>

<script type="text/javascript" src="/scripting/client/encoder.js"></script>
<script type="text/javascript" src="/scripting/client/call.js"></script>
<script type="text/javascript" src="/scripting/client/regedit.js"></script>

<script type="text/javascript">

/* Qooxdoo's browser sniffer doesn't distinguish IE version.
    We'll cover IE 6 for now, but these checks need to be
    revisited for fuller browser coverage. */
var browser = QxClient().engine;

function docWidth()
{
  var x;
  if (browser != "mshtml") {
    x = window.innerWidth;
  } else {
    x = document.documentElement.clientWidth;
  }
  return x;
}

function docHeight()
{
  var y;
  // Less 25px to not cover the toolbar
  if (browser != "mshtml") {
    y = window.innerHeight - 25;
  } else {
    y = document.documentElement.clientHeight;
  }
  return y;
}

function showMessage(m)
{
    var message = new QxWindow();
    with(message) {
      setWidth(300);
      setTop("35%");
      setLeft("35%");
      setShowMaximize(false);
      setShowMinimize(false);
    }

    var note = new QxAtom(m);
    with(note) {
      setTop(10);
      setLeft(10);
    }

    var ok = new QxButton("OK");
    with(ok) {
      setLeft("42%");
      setBottom(2);
    }
    ok.addEventListener("click", function() {
      w.remove(message);
    });

    message.add(note);
    message.add(ok);
    w.add(message);
    message.setVisible(true);
}

function showContextMenu(e)
{

  var aboutCmd = new QxCommand();
  aboutCmd.addEventListener("execute", function() {
    showMessage("SWAT, the Samba Web Administration Tool.<br/>This tool is currently under development.");
  });

  var menu = new QxMenu;

  var sub1 = new QxMenuButton("About SWAT", null, aboutCmd);
  var sep = new QxMenuSeparator();
  var sub2 = new QxMenuButton("More menu later...", null);

  menu.add(sub1, sep, sub2);

  menu.setLeft(e.getClientX());
  menu.setTop(e.getClientY());
  w.add(menu);
  menu.setVisible(true);
}

/*** init the page for qooxdoo ***/
window.application.main = function()
{
  var doc = this.getClientWindow().getClientDocument();
  // Don't declare local with var
  w = new QxWidget();
  with(w) {
    setTop(0);
    setLeft(0);
    setWidth(docWidth());
    setHeight(docHeight());
  }
  doc.addEventListener("contextmenu", showContextMenu);
  doc.add(w);

}

window.onresize = function() 
{
  w.setWidth(docWidth());
  w.setHeight(docHeight());
}

function showReg()
{
	var regedit = regedit_widget("ncalrpc:");
	w.add(regedit);
	regedit.startup();
}

function startSwat()
{
  // Don't declare local with var (for now)
  var w1 = new QxWindow("Welcome to SWAT.");
  w1.setSpace("40%", 0, "35%", 0);
  w.add(w1);

  var btn1 = new QxButton("View Registry");
  btn1.set({ top: 20, left : 30 });
  btn1.addEventListener("click", showReg)
  w1.add(btn1);

  w1.setVisible(true);
}
</script>

<div id="toolbar">
	<h3><a href="javascript:startSwat()">SWAT (Start)</a></h3>
</div>

<% page_footer(); %>