<asp:WSFormView runat="server" ID="SpotlightFV" DataSourceID="SpotlightDS" DataKeyNames="ID" DefaultMode="Edit" OnItemUpdated="Redirect">
<asp:UpdatePanel runat="server" ID="ImageUP">
<ContentTemplate>
<dt><asp:Label runat="server" ID="ImageL" Text="Image*:" /></dt>
<dd>
<asp:PlaceHolder runat="server" ID="NoImagePH" Visible='<%# Eval("Image") == DBNull.Value %>'>
<CuteWebUI:Uploader runat="server" ID="ImageCute" OnFileUploaded="ImageUploaded" InsertText="Upload Image" MultipleFilesUpload="false" MaxFilesLimit="0" OnInit="SetTempDirectory" >
<ValidateOption AllowedFileExtensions="jpg,gif" MaxSizeKB="25600" />
</CuteWebUI:Uploader>
</asp:PlaceHolder>
<asp:PlaceHolder runat="server" ID="ImagePH" Visible='<%# Eval("Image") != DBNull.Value %>'>
<asp:Hyperlink runat="server" ID="PreviewImageHL" Text='<%# Eval("Image") %>' NavigateUrl='<%# "../media/" + Eval("Image") %>' Target="_blank" /> | <asp:LinkButton runat="server" ID="DeleteImageLB" Text="Delete" OnCommand="DeleteCommand" CommandName="Image" CommandArgument='<%# Eval("Image") %>' />
</asp:PlaceHolder>
</dd>
</ContentTemplate>
</asp:UpdatePanel>
protected void ImageUploaded(object sender, UploaderEventArgs e)
{
string Sql = string.Empty;
string Filetype = string.Empty;
string Folder = string.Empty;
string Folderpath = string.Empty;
string Filename = string.Empty;
Filetype = ((Uploader)sender).ID;
Filename = System.IO.Path.GetFileName(e.FileName);
if (Filetype.Contains("Image"))
{
Sql = "UPDATE Spotlights SET Image = @Upload WHERE ID = @SpotlightID;";
Folder = "images/";
}
else if (Filetype.Contains("Thumbnail"))
{
Sql = "UPDATE Spotlights SET Thumbnail = @Upload WHERE ID = @SpotlightID;";
Folder = "thumbnails/";
}
else if (Filetype.Contains("Video"))
{
Sql = "UPDATE Spotlights SET Video = @Upload WHERE ID = @SpotlightID;";
Folder = "videos/";
}
Folderpath = MapPath("/");
Folderpath = Folderpath.TrimEnd('""');
Folderpath = Folderpath.Substring(0, Folderpath.LastIndexOf('""'));
Folderpath += ConfigurationManager.AppSettings["UploadFolderPath"];
Folderpath += Folder;
using (SqlConnection SqlConn = new SqlConnection(ConfigurationManager.ConnectionStrings["SpotlightCS"].ConnectionString))
using (SqlCommand SqlCmd = new SqlCommand("", SqlConn))
{
SqlConn.Open();
SqlCmd.CommandText = Sql;
SqlCmd.Parameters.Add("SpotlightID", SqlDbType.Int).Value = Request["id"];
SqlCmd.Parameters.Add("Upload", SqlDbType.VarChar).Value = Folder + Filename;
SqlCmd.ExecuteNonQuery();
}
e.CopyTo(Folderpath + Filename);
e.Delete();
SpotlightFV.DataBind();
}
protected void DeleteCommand(object sender, CommandEventArgs e)
{
string Sql = string.Empty;
string Folder = string.Empty;
string Folderpath = string.Empty;
if (e.CommandName == "Image")
{
Sql = "UPDATE Spotlights SET Image = @Null WHERE ID = @SpotlightID;";
Folder = "images/";
}
else if (e.CommandName == "Thumbnail")
{
Sql = "UPDATE Spotlights SET Thumbnail = @Null WHERE ID = @SpotlightID;";
Folder = "thumbnails/";
}
else if (e.CommandName == "Video")
{
Sql = "UPDATE Spotlights SET Video = @Null WHERE ID = @SpotlightID;";
Folder = "videos/";
}
Folderpath = MapPath("/");
Folderpath = Folderpath.TrimEnd('""');
Folderpath = Folderpath.Substring(0, Folderpath.LastIndexOf('""'));
Folderpath += ConfigurationManager.AppSettings["UploadFolderPath"];
//Folderpath += Folder;
System.IO.File.WriteAllText([...]);
using (SqlConnection SqlConn = new SqlConnection(ConfigurationManager.ConnectionStrings["SpotlightCS"].ConnectionString))
using (SqlCommand SqlCmd = new SqlCommand("", SqlConn))
{
SqlConn.Open();
SqlCmd.CommandText = Sql;
SqlCmd.Parameters.Add("SpotlightID", SqlDbType.Int).Value = Request["id"];
SqlCmd.Parameters.Add("Null", SqlDbType.VarChar).Value = DBNull.Value;
SqlCmd.ExecuteNonQuery();
}
SpotlightFV.DataBind();
}
The JavaScript error is:
Error: Ox4 is null
Source File: https://wsdev.missouristate.edu/SpotLights/CuteWebUI_Uploader_Resource.axd?type=script&_ver=633683056557902511
Line: 1
I'm assuming it has something to do with how I toggle the placeholders. Any ideas / suggestions?