/[H9]/trunk/tntnet/dynamic/adm_installation_edit.ecpp
ViewVC logotype

Contents of /trunk/tntnet/dynamic/adm_installation_edit.ecpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 101 - (show annotations) (download)
Thu Nov 29 13:59:21 2007 UTC (16 years, 5 months ago) by torben
File size: 4480 byte(s)
Finished administration module (?)

1 <%pre>
2 #include <tntdb/connect.h>
3 #include <tntdb/connection.h>
4 #include <tntdb/result.h>
5 #include <tntdb/row.h>
6
7 #include <sstream>
8
9 #include "common.h"
10 </%pre>
11
12 <%config>
13 dburl;
14 </%config>
15
16 <%session scope="global">
17 std::string userName;
18 bool isAdmin;
19 </%session>
20
21 <%args>
22 int id;
23 int customerid;
24 std::string name;
25 </%args>
26
27 <{
28 if (userName.size() == 0)
29 {
30 reply.setHeader("Location", "index");
31 return HTTP_MOVED_TEMPORARILY;
32 }
33 }>
34
35
36 <&header title="Installation Administration">
37 </&header>
38
39
40 <{
41
42 if (id == -1)
43 reply.out() << "<h2>New installation</h2>\n";
44 else
45 reply.out() << "<h2>Modify installation</h2>\n";
46
47 reply.out() << "<a href='adm_installation_list?customerid=" << customerid<< "&name=" << name << "'>";
48 reply.sout() << "<< back to installation list";
49 reply.out() << "</a><br>";
50
51 tntdb::Connection conn = tntdb::connect(dburl);
52
53
54 std::string submit = qparam.param("submit");
55 if (submit == "1")
56 {
57 std::string form_description = trim(qparam.param("description"));
58 std::string form_address = trim(qparam.param("address"));
59 std::string form_furnacetype = trim(qparam.param("furnacetype"));
60 std::string form_phonenr = trim(qparam.param("phonenr"));
61 std::string form_imei = trim(qparam.param("imei"));
62 int form_updaterate = atoi(trim(qparam.param("updaterate")).c_str());
63
64 if (id == -1)
65 {
66 tntdb::Statement st = conn.prepare(
67 "INSERT INTO installation (customerid,description,address,furnacetype, installationphonenr,imei,updaterate ) values (:v1,:v2,:v3,:v4,:v5,:v6,:v7)");
68 st.setInt("v1", customerid).setString("v2", form_description).setString("v3", form_address).setString("v4", form_furnacetype);
69 st.setString("v5", form_phonenr).setString("v6",form_imei).setInt("v7", form_updaterate);
70 st.execute();
71
72 std::stringstream url;
73 url << "adm_installation_list?customerid=" << customerid << "&name=" << name;
74
75 reply.setHeader("Location", url.str());
76 return HTTP_MOVED_TEMPORARILY;
77 }
78 else
79 {
80 tntdb::Statement st = conn.prepare(
81 "UPDATE installation SET description=:v1, address=:v2, furnacetype=:v3, installationphonenr=:v4, imei=:v5, updaterate=:v6 WHERE id=:v7");
82 st.setString("v1", form_description).setString("v2", form_address).setString("v3", form_furnacetype).setString("v4", form_phonenr);
83 st.setString("v5", form_imei); st.setInt("v6", form_updaterate).setInt("v7", id);
84 st.execute();
85
86 reply.out() << "<i>Installation updated</i><br>\n";
87 }
88
89 }
90
91
92 std::string description;
93 std::string address;
94 std::string furnacetype;
95 std::string phonenr;
96 std::string imei;
97 std::string updaterate;
98
99 bool showForm = true;
100
101 if (id != -1)
102 {
103 std::stringstream query;
104 query << "SELECT description,address, furnacetype,installationphonenr,imei,updaterate FROM installation WHERE id = " << id;
105 tntdb::Result res = conn.select(query.str());
106
107 if (res.size() > 0)
108 {
109 description = res[0].getString(0);
110 address = res[0].getString(1);
111 furnacetype = res[0].getString(2);
112 phonenr = res[0].getString(3);
113 imei = res[0].getString(4);
114 updaterate = res[0].getString(5);
115 }
116
117 else
118 {
119 reply.out() << "<p><i>Invalid installation ID !</i></p>\n";
120 showForm = false;
121 }
122 }
123
124 if (showForm)
125 {
126 }>
127
128 <form method="post" action="adm_installation_edit">
129 <table border="0">
130 <tr>
131 <td>Description:</td>
132 <td><input type="text" name="description" size="40" value="<$description$>"></td>
133 </tr>
134 <tr>
135 <td>Address:</td>
136 <td><textarea cols="30" rows="4" name="address"><$address$></textarea></td>
137 </tr>
138 <tr>
139 <td>Furnace type:</td>
140 <td><input type="text" name="furnacetype" size="40" value="<$furnacetype$>"></td>
141 </tr>
142 <tr>
143 <td>Phone nr:</td>
144 <td><input type="text" name="phonenr" size="40" value="<$phonenr$>"></td>
145 </tr>
146 <tr>
147 <td>IMEI nr</td>
148 <td><input type="text" name="imei" size="40" value="<$imei$>"></td>
149 </tr>
150 <tr>
151 <td>Update rate</td>
152 <td><input type="text" name="updaterate" size="40" value="<$updaterate$>"></td>
153 </tr>
154 <tr>
155 <td>&nbsp;</td>
156 <td><input type="submit"><input type="reset"></td>
157 </tr>
158 </table>
159 <input type="hidden" name="id" value="<$ id $>">
160 <input type="hidden" name="customerid" value="<$ customerid $>">
161 <input type="hidden" name="name" value="<$name$>">
162 <input type="hidden" name="submit" value="1">
163 </form>
164
165 <br>
166 <form method="post" action="adm_installation_delete">
167 <input type="hidden" name="id" value="<$id$>">
168 <input type="hidden" name="customerid" value="<$customerid$>">
169 <input type="hidden" name="name" value="<$name$>">
170 <input type="submit" value="Delete">
171 </form>
172
173 <{
174 }
175
176
177 }>
178
179 <&footer>
180 </&footer>

  ViewVC Help
Powered by ViewVC 1.1.20