The mojo way.
First add a reference to Brettle.Web.NeatUpload in your feature project.
Then, to use the mojoPortal "fileupload" Brettle.Web.NeatUpload you could copy/modify code from...
In the mojoPortal source code, go the the project folder WebStore.UI. In the Webstore folder there is a file called AdminProductEdit.aspx with an associated C# file.
Most of what you need is in those 2 files.
Copy the aspx section add <asp:Panel ID="pnlFileUpload"
to your aspx page.
Copy the C# section add private void btnUpload_Click(object sender, EventArgs e)
to your C# page. Replace or remove product specific code with your feature code.
You are almost done...
Also...
In your page LoadSettings() method include something like...
upLoadPath = Server.MapPath("~/Data/Sites/" + siteSettings.SiteId.ToInvariantString()
+ "/yourfeaturename/");
if (!Directory.Exists(upLoadPath))
{
Directory.CreateDirectory(upLoadPath);
}
Tip - To make unique file names I use something like this
var dateString = string.Format("{0:yyyy-MM-dd_hh-mm-ss}", DateTime.Now);
string fileName = _sUser + "_yourfeaturename_" + dateString;
Hope this helps
Rick Hubka