protected override void Render(HtmlTextWriter writer)
{
writer.Write("<div id=\"widgetzone_{0}\" class=\"widgetzone\">", this.zoneName);
base.Render(writer);
writer.Write("</div>");
if (!Security.IsAuthorizedTo(Rights.ManageWidgets))
{
return;
}
var selectorId = string.Format("widgetselector_{0}", this.zoneName);
writer.Write("<select id=\"{0}\" class=\"widgetselector\">", selectorId);
var di = new DirectoryInfo(HostingEnvironment.MapPath(string.Format("{0}widgets", Utils.ApplicationRelativeWebRoot)));
foreach (var dir in di.GetDirectories().Where(dir => File.Exists(Path.Combine(dir.FullName, "widget.ascx"))))
{
writer.Write("<option value=\"{0}\">{1}</option>", dir.Name, dir.Name);
}
writer.Write("</select> ");
writer.Write(
"<input type=\"button\" value=\"Add\" onclick=\"BlogEngine.widgetAdmin.addWidget(BlogEngine.$('{0}').value, '{1}')\" />",
selectorId,
this.zoneName);
writer.Write("<div class=\"clear\" id=\"clear\"> </div>");
}