Skip to main content

Umbraco Forms - Basics

Umbraco Forms Introduction:


a) Stores the forms in the /App_Plugins/UmbracoForms/Data/forms/ folder
b)  Stores the forms in JSON format
c)  Gives each form a GUID, such as: ea-3e73-4b99-9d81-3055149e3c2e.json that can be used to reference the forms.



In the main umbraco template add links to, 

  • JQUERY, 
  • Jquery Validation
  • Jquery Unobtrusive Validation
EX:

   <!-- Javascripts -->
    <script src="/js/jquery.min.js"></script>
    <script src="/js/bootstrap.min.js"></script>
<script src="/scripts/fanoe.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/jquery.validate.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/mvc/5.2.3/jquery.validate.unobtrusive.js"></script>



Umbraco Forms, list Forms from Directory:

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@using System.Xml.XPath
@using System.IO;

@{
    Layout = "Master.cshtml";

}

@{
var request = HttpContext.Current.Request;
string url = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery,
                                             string.Empty);

<p>url: @url</p>

foreach(var fileName in Directory.GetFiles(Server.MapPath("~/App_Plugins/UmbracoForms/Data/forms/")))
    {
           <p>@fileName</p>
    }
}

Umbraco Forms,Render All Availble forms on to a Page:


@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@using System.Xml.XPath
@using System.IO;
@using System.Net; 
@using Newtonsoft.Json; 
@using Newtonsoft.Json.Linq;

@{
    Layout = "Master.cshtml";
}

@{
var request = HttpContext.Current.Request;
string url = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, 
                                             string.Empty);
foreach(var fileName in Directory.GetFiles(Server.MapPath("~/App_Plugins/UmbracoForms/Data/forms/")))
    {
var jsonFileUrl = @fileName;
string extension = Path.GetExtension(@jsonFileUrl);
WebClient wc = new WebClient(); 
var json = (JObject)JsonConvert.DeserializeObject(wc.DownloadString(jsonFileUrl)); 
var formName = json["name"].ToString(); 
var formGuid = json["id"].ToString();
<p><a href="@jsonFileUrl">@formName</a></p>
<div>
@Umbraco.RenderMacro("FormsRenderForm", new {FormGuid= @formGuid})
</div>
      
    }
}
    



 

Comments

Popular posts from this blog

Umbraco 7 - C# Razor - Passing a parameter variable from a Template to a Partial View.

Passing a parameter variable from a Template to a Partial View Example - Passing a Page Id to a Partial View.
In the example below we are passing 3 page Ids (1090. 1091, 1092) to a partial view.  The Partial View will display the details for each of these nodes on a home page.  See final output below.


1) In your Template:
@Html.Partial("HomePageLinksToLandingPages", new ViewDataDictionary{{ "pageId", 1090}}) @Html.Partial("HomePageLinksToLandingPages", new ViewDataDictionary{{ "pageId", 1091}}) @Html.Partial("HomePageLinksToLandingPages", new ViewDataDictionary{{ "pageId", 1092}})

2) The Partial View:
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage @{ var thisPageId = 1090; var stringPage = @ViewData["pageId"]; thisPageId = Convert.ToInt32(stringPage); } <div class="col-md-4"> <article class="common-blog-pos…

Umbraco Razor Sort Nodes Ascending or Descending

Descending:
@inherits umbraco.MacroEngines.DynamicNodeContext  
@using umbraco.cms.businesslogic.template;

@foreach(var item in Model.Children.OrderBy("Name descending"))
{
if(item.HasAccess())
{
@item.Name 
}
}


Ascending:
@inherits umbraco.MacroEngines.DynamicNodeContext  
@using umbraco.cms.businesslogic.template;

@foreach(var item in Model.Children.OrderBy("Name"))
{
if(item.HasAccess())
{
@item.Name 
}
}



Umbraco - Reset the Admin Password via SQL Server

To reset the admin password of a Umbraco website.

1. In Sql server, run the following script on the database:


USE  INSERT-YOUR-DATABASE-NAME-HERE
GO

UPDATE umbracoUser set userdisabled=0, userLogin='admin', userPassword='default' where id=0

2. In your web config file, find the "UsersMemnershipProvider" section, change the setting:


passwordFormat="Hashed"
to
passwordFormat="Clear"


You should now be able to login using the Username: Admin and the Password: default ("the two sweetest words in the english language").