1 <%include include/head.html>
3 <div class="page-id hidden">image-browser</div>
9 <p><%= Page.ImageBrowser.Album.Error.NotFound.Text|l10n|html></p>
11 <%elseifnull album.title>
13 <p><%= Page.ImageBrowser.Album.Error.NotFound.Text|l10n|html></p>
17 <%if album.sone.local>
18 <script language="javascript">
20 getTranslation("WebInterface.DefaultText.UploadImage.Title", function(text) {
21 $("#upload-image :input[name='title']").each(function() {
22 registerInputTextareaSwap(this, text, "title", false, true);
25 getTranslation("WebInterface.DefaultText.UploadImage.Description", function(text) {
26 $("#upload-image :input[name='description']").each(function() {
27 registerInputTextareaSwap(this, text, "description", true, false);
30 $("#upload-image label").hide();
31 getTranslation("WebInterface.DefaultText.CreateAlbum.Name", function(text) {
32 $("#create-album input[name='name']").each(function() {
33 registerInputTextareaSwap(this, text, "name", false, true);
36 getTranslation("WebInterface.DefaultText.CreateAlbum.Description", function(text) {
37 $("#create-album input[name='description']").each(function() {
38 registerInputTextareaSwap(this, text, "description", true, true);
41 $("#create-album label").hide();
42 getTranslation("WebInterface.DefaultText.EditAlbum.Title", function(text) {
43 $("#edit-album input[name='title']").each(function() {
44 registerInputTextareaSwap(this, text, "title", false, true);
47 getTranslation("WebInterface.DefaultText.EditAlbum.Description", function(text) {
48 $("#edit-album :input[name='description']").each(function() {
49 registerInputTextareaSwap(this, text, "description", true, false);
52 $("#edit-album label").hide();
57 <h1><%= Page.ImageBrowser.Album.Title|l10n|replace needle='{album}' replacementKey=album.title|html></h1>
59 <div class="backlinks">
60 <%foreach album.backlinks backlink backlinks>
61 <div class="backlink">
62 <a href="<% backlink.target|html>"><% backlink.name|html></a>
64 <%if ! backlinks.last>
65 <div class="separator">></div>
70 <%foreach album.albums album>
71 <div class="album image">
72 <a href="imageBrowser.html?album=<% album.id|html>">
74 <img src="images/unknown-image-0.png" width="200" height="150" alt="<% album.title|html>" title="<% album.title|html>" />
76 <img src="images/unknown-image-0.png" width="200" height="150" alt="<% album.title|html>" title="<% album.title|html>" />
82 <%foreach album.images image>
84 <a href="imageBrowser.html?image=<%image.id|html>"><% image|image-link max-width=200 max-height=150></a>
88 <div id="description">
89 <% album.description|html>
92 <%if album.sone.current>
93 <%include include/uploadImage.html>
94 <%include include/createAlbum.html>
96 <h2><%= Page.ImageBrowser.Album.Edit.Title|l10n|html></h2>
98 <form id="edit-album" action="editAlbum.html" method="post">
99 <input type="hidden" name="formPassword" value="<%formPassword|html>" />
100 <input type="hidden" name="album" value="<%album.id|html>" />
103 <label for="title"><%= Page.ImageBrowser.Album.Label.Title|l10n|html></label>
104 <input type="text" name="title" value="<%album.title|html>" />
107 <label for="description"><%= Page.ImageBrowser.Album.Label.Description|l10n|html></label>
108 <textarea name="description"><%album.description|html></textarea>
110 <button type="submit"><%= Page.ImageBrowser.Album.Button.Save|l10n|html></button>
114 <form id="delete-album" action="deleteAlbum.html" method="post">
115 <input type="hidden" name="formPassword" value="<%formPassword|html>" />
116 <input type="hidden" name="album" value="<%album.id|html>" />
117 <button type="submit"><%= Page.ImageBrowser.Album.Button.Delete|l10n|html></button>
125 <%elseif imageRequested>
127 <h1><%image.title|html></h1>
129 <div class="backlinks">
130 <%foreach image.album.backlinks backlink backlinks>
131 <div class="backlink">
132 <a href="<% backlink.target|html>"><% backlink.name|html></a>
134 <%if ! backlinks.last>
135 <div class="separator">></div>
144 <%if image.sone.local>
145 <script language="javascript">
147 getTranslation("WebInterface.DefaultText.EditImage.Title", function(text) {
148 $("#edit-image input[name='title']").each(function() {
149 registerInputTextareaSwap(this, text, "title", false, true);
152 getTranslation("WebInterface.DefaultText.EditImage.Description", function(text) {
153 $("#edit-image :input[name='description']").each(function() {
154 registerInputTextareaSwap(this, text, "description", true, false);
157 $("#edit-image label").hide();
162 <div class="single-image">
164 <a href="/<%image.key|html>"><% image|image-link max-width=640 max-height=480></a>
166 <a href="imageBrowser.html?image=<%image.id|html>"><% image|image-link max-width=640 max-height=480></a>
170 <p class="parsed"><%image.description|parse sone=image.sone></p>
172 <%if image.sone.local>
174 <h2><%= Page.ImageBrowser.Image.Edit.Title|l10n|html></h2>
176 <form id="edit-image" action="editImage.html" method="post">
177 <input type="hidden" name="formPassword" value="<%formPassword|html>" />
178 <input type="hidden" name="image" value="<%image.id|html>" />
181 <label for="title"><%= Page.ImageBrowser.Image.Title.Label|l10n|html></label>
182 <input type="text" name="title" value="<%image.title|html>" />
185 <label for="description"><%= Page.ImageBrowser.Image.Description.Label|l10n|html></label>
186 <textarea name="description"><%image.description|html></textarea>
189 <button type="submit"><%= Page.ImageBrowser.Image.Button.Save|l10n|html></button>
193 <h2><%= Page.ImageBrowser.Image.Delete.Title|l10n|html></h2>
195 <form id="delete-image" action="deleteImage.html" method="post">
196 <input type="hidden" name="formPassword" value="<%formPassword|html>" />
197 <input type="hidden" name="image" value="<%image.id|html>" />
198 <button type="submit"><%= Page.ImageBrowser.Image.Button.Delete|l10n|html></button>
205 <%elseif soneRequested>
208 <script language="javascript">
210 getTranslation("WebInterface.DefaultText.CreateAlbum.Name", function(text) {
211 $("#create-album input[name='name']").each(function() {
212 registerInputTextareaSwap(this, text, "name", false, true);
215 getTranslation("WebInterface.DefaultText.CreateAlbum.Description", function(text) {
216 $("#create-album input[name='description']").each(function() {
217 registerInputTextareaSwap(this, text, "description", true, true);
220 $("#create-album label").hide();
227 <p><%= Page.ImageBrowser.Sone.Error.NotFound.Text|l10n|html></p>
231 <h1><%= Page.ImageBrowser.Sone.Title|l10n|replace needle='{sone}' replacementKey=sone.niceName|html></h1>
233 <%foreach sone.albums album>
234 <div class="album image">
235 <a href="imageBrowser.html?album=<% album.id|html>">
236 <%ifnull album.image>
237 <img src="images/unknown-image-0.png" width="200" height="150" alt="<% album.title|html>" title="<% album.title|html>" />
239 <img src="images/unknown-image-0.png" width="200" height="150" alt="<% album.title|html>" title="<% album.title|html>" />
246 <%include include/createAlbum.html>
253 <%include include/tail.html>