public ActionResult VerifyDomain(FormCollection _POST)
        {
            try
            {
                model.VerifyDomain = new CustomVerifyDomain()
                {
                    Organization = _POST["organization"],
                    Domain       = _POST["domainname"]
                };

                CommonCAS.Log(string.Format("has run Office365/VerifyDomain() to verify '{0}' for '{1}'", model.VerifyDomain.Domain, model.VerifyDomain.Organization));

                // execute powershell script and dispose powershell object
                using (MyPowerShell ps = new MyPowerShell())
                {
                    ps.VerifyDomain(model.VerifyDomain.Organization, model.VerifyDomain.Domain);
                    var result = ps.Invoke();

                    if (result.Count() == 0)
                    {
                        model.OKMessage.Add(string.Format("Domain {0} has been added.", model.VerifyDomain.Domain));
                    }
                    else
                    {
                        foreach (PSObject message in result)
                        {
                            CommonCAS.Log(string.Format("Domain {0} info: {1}", model.VerifyDomain.Domain, message.ToString()));
                            throw new Exception(string.Format(message.ToString()));
                        }
                    }
                }

                model.OKMessage.Add(string.Format("Domain '{0}' added for organization '{1}'.", model.VerifyDomain.Domain, model.VerifyDomain.Organization));

                CommonCAS.Stats("Office365/VerifyDomain");

                return(View("VerifyDomain", model));
            }
            catch (Exception exc)
            {
                CommonCAS.Log("Exception: " + exc.Message);
                model.ActionFailed = true;
                model.Message      = exc.Message;
                return(View(model));
            }
        }