Skip to main content

Thumbnails from Images that are linked already uploaded to the CMS

<%
' make sure WYSIWYG images don't get too wide using upload.asp
value = content.item("_cmsUploadValue")
debug.write(value)
ext=filename.getextension(content.item("_cmsUploadValue"))
' create a medium size thumbnail
if ext="gif" or ext="jpg" then
res = image.thumbnail(value, "", 20, 20)
if res = "" then
content.add "_cmsError", image.errorMsg
exit Sub
end if
content.add "upload#my_photo", res
end if


%>


Then in the post_input.asp we would have the code that would be used to
create thumbnails from images that are linked:

<%
value = asset.getAbsoluteName(content.item("my_photo"))
debug.write(value)

'Process only if selected asset has been uploaded to the /Assets/
folder in the CMS
if instr(value, "/Assets/") > 0 then

value = "/ChemicalHeritage/ftproot" & value


ih = image.load(value)
if ih <0 then
content.add "_cmsError", image.errorMsg
exit Sub
end if

image.scale ih, 20, 20, 1
image.setQuality 1
content.add "upload#my_photo", image.saveAsAttachment(ih,
content.item("_cmsId"), "_thumbnail")

end if


%>

Comments

Popular posts from this blog

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.

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; }

Parsing XML Documents in the CMS: 2 Methods

To start off with do this: Dim txt Dim fieldStart, fieldEnd Dim xml Dim fields Dim ltxt Dim key Dim value txt = trim(content.item("_cmsEmailBody")) ltxt = lcase(txt) fieldStart = inStr(ltxt, "<root>") fieldEnd = inStr(ltxt, "</root>") if fieldStart >= fieldEnd then content.add "_cmsError", "Invalid email format. No XML data detected." exit Sub end if ' skip the end /root fieldEnd = fieldEnd + 6 set xml = system.createXML() if not xml.loadXML(mid(txt, fieldStart, fieldEnd)) then content.add "_cmsError", "Invalid XML format." exit Sub end if Now there are two ways to parse it. Method 1: set fields = xml.selectSingleNodeAsContent("root") Method 2: set fields = xml.selectSingleNodeAsDic("root") Check to make sure we have the root node: if not isObject(fields) then content.add "_cmsError", "Invalid xml format. Missing root /root node." exit Sub end if If Method 1 ...