Skip to main content

Umbraco Notifications - Save and Send For Approval Process

In Umbraco you can give different permissions to the different Umbraco users and some of these users might have rights to only create or update content nodes but not to publish them. In this case; you might need your Umbraco system to send notification e-mails to the Umbraco users who can then publish the content nodes.

To do this; you can write your own custom code by creating some event handlers or you can use built-in Umbraco notification functionality.

For the second built-in option first login to Umbraco as admin and go to User's section and update the permissions as shown below;



Once you are done with the user permissions, subscribe your Umbraco users to the content nodes, simply login to Umbraco with those users and find the content node, right click on it and select the following option;



After this you need to make changes in the web.config file of your Umbraco project. For my case I am using my test gmail account for sending e-mails. In order to use your gmail account as your SMTP server, first login to gmail and then go to Google's less secure app access page and allow less secure apps. You might need to enable account access as well by following this google link: https://accounts.google.com/DisplayUnlockCaptcha

After doing these changes on the Google's access page, now change your web.config as follows;

  <system.net>
    <mailSettings>
      <smtp from="[email protected]">
        <network host="smtp.gmail.com"
          port="587"
          userName="[email protected]"
          password="yourgmailpassword"
          enableSsl="true"/>
      </smtp>
    </mailSettings>

  </system.net>


For anonymous access SMTP servers; the Umbraco website IP address(es) must be allowed to use the SMTP server relay and below is how the web.config should be;

<smtp from="[email protected]">
        <network host="yourdomain.outbound1-uk.mailanyone.net" port="25" defaultCredentials="true" enableSsl="false" />

      </smtp>

If you want to you can also override the "from e-mail address" from umbracoSettings.config;

    <notifications>
      <!-- the email that should be used as from mail when umbraco sends a notification -->
      <email>[email protected]</email>

    </notifications>

Now after building your project/deploying your changes to your server, simply login to umbraco with your editor user and update your test content node and and hit Save and send for approval button.



Once all is setup correctly; your publishers who are subscribed to this content node's notifications, will receive an e-mail notification, similar to the following one and simply clicking the link in the e-mail they can publish the umbraco content;


That is all, hope it helps. And remember that you can subscribe your users to different actions as well.

Comments

Popular posts from this blog

How to fix Umbraco v9 "Boot Failed : Umbraco failed to boot, if you are the owner of the website please see the log file for more details." error

If you have started working with Umbraco v9 and done your first Azure deployment to one of your testing environments, there is a possibility that you might see the following "Boot Failed" error. Error: Checking the logs In order to understand the problem, you should check the Umbarco log file.  The default location for this file is umbraco/Logs and this file contains the Machine name, along with the date information. You can reach this file via Azure's Kudu Service  or alternatively, you can get download your Azure App Service's publish profile and connect your App Service via an FTP application, i.e. FileZilla. See the FileZilla screen below; Once you get your log file, you can download it to your local machine and open it with a text editor, i.e. Notepad++. When you open it, you will see all logs, including the error message. Please be aware, as most things with Umbraco, logging is also customizable, so you can either use the default Umbraco logging which is Micros

How to use JQuery Ajax Methods for Async ASP.NET MVC Action Methods

Making repeatedly calls to async methods can be a nightmare. In this case, it makes sense to use 2 ajax methods, instead of one. Here is a simple solution to overcome this problem. See that  ajaxcalls   is emptied after the success response for the first ajax call and then the second ajax method is used to make one single call to the async action method. Hope it helps. View: @section Scripts{     < script type ="text/javascript">         var smartDebitObject = new Object();         smartDebitObject.MembershipNumber = $( "#MembershipNumber" ).val();         smartDebitObject.ProfileId = $( "#ProfileId" ).val();         smartDebitObject.FirstName = $( "#FirstName" ).val();         smartDebitObject.LastName = $( "#LastName" ).val();         smartDebitObject.AddressLine1 = $( "#AddressLine1" ).val();         smartDebitObject.Postcode = $( "#Postcode" ).val();         smartDebitObject

Umbraco lifehack: How to setup anchor/jump links in Umbraco without making code changes

Today one of my clients created a ticket asking whether it is possible to set up anchor/jump links for an Umbraco content page so that they could link different sections of the page together. This is a common scenario for most Content editors and it should be super easy with any CMS platform, right? Houston, we got a problem! Now an anchor or page jump link is a special URL that takes you to a specific place on a page and it normally requires a unique HTML element ID to link different parts of a page.  When I investigated my issue, I realised that the page sections of the Umbraco page didn't have unique IDs.  View Source Code comes to the rescue In order to resolve the issue without any code changes, I decided to update the content using the built-in View Source Code feature of Umbraco CMS. This feature is available on built-in property editors, like Rich Text Editor and is super handy for checking the code that Umbraco generates for your Front-end website and making minor adju