Skip to main content

Handling / Resizing Multiple / Single Image Uploads

Upload.asp gets called everytime someone uploads somthing into an input template.

For a single image upload we can do the following inside the input.asp:


<tr>
<td>Image</td>
<td>
<span name="pic_span" id="pic_span">
<% if content.item("image_name") <> "" then %>
<img src="<%= content.item("image_name") %>" />
<% end if %>
</span>
<% input.setParam "span_label", "pic_span" %>
<% input.setParam "show_browse", "link" %>
<% input.setParam "show_upload", "attatch" %>
<% input.showAcquireImage "image_name", content.item("image_name") %>
</td>
</tr>


If there are multiple images change the above so that all content.items becomes the list object. When createing the list use the image_name as the iterator.

Then in the upload.asp:


if content.item("_cmsUploadVariable") = "upload#lg_image" then
value = content.item("_cmsUploadValue")

'resize original image to 309px x 230px
lg_res = image.thumbnail(value, "", 309, 230)
if lg_res = "" then
content.add "_cmsError", image.errorMsg
exit Sub
end if
'save resized large image
content.add content.item("_cmsUploadValue"), lg_res

' resize original image to 169px x 120px
md_res = image.thumbnail(value, "_med", 169, 120)
if md_res = "" then
content.add "_cmsError", image.errorMsg
exit Sub
end if
'save resized medium image
content.add "upload#md_image", md_res

'resize original image to 94px x 70px
sm_res = image.thumbnail(value, "_thumb", 94, 70)
if sm_res = "" then
content.add "_cmsError", image.errorMsg
exit Sub
end if
content.add "upload#sm_image", sm_res
end if

Comments

Popular posts from this blog

Parsing XML in .NET

Let's say you have XML as <root>    <item>       <name1>value1</name1>       <name2>value2</name2>       <name3>value3</name3>    </item>    <item>       <name1>value1</name1>       <name2>value2</name2>    </item> </root> To parse it we use the .NET XmlDocument class: // Create the XmlDocument object XmlDocument xmlDoc = new XmlDocument(); // Load the Xml into the object xmlDoc.Load(objResponse.GetResponseStream()); // Get the element like it was a path XmlNode errorNode = xmlDoc.SelectSingleNode("root/item/name1"); if (errorNode != null) { litResult.Text = errorNode.InnerText; return; }

Passing values from Javascript to Asp.Net

The trick to passing data from Javascript and Asp.Net is to use hidden inputs in the html. The hidden inputs should have the runat="server" attribute. For example: <input type="hidden" runat="server" id="hiddenfield" value="" /> Then in the Javascript, whatever value you are trying to pull from Asp.Net, set the hidden field using: document.getElementById("hiddenfield").value = "whatever value you want to set" And in the Asp.net form, you can just access the hiddenfield by using its id. string x = hiddenfield.value.text Thats all there is to it. You might need to check the syntax of it first as this is just all from my head.

Duplicate Items in the File -> New menu.

It looks like a bug, but the CMS is trying to figure out what kind of models would apply to the folder in question. To resolve this issue. 1. Goto the problematic folder. 2. Goto View -> Properties -> Access 3. Click on the New Tab 3. Uncheck All 'New Dependency' That's it. That should resolve the problem.