Thursday, May 23, 2013

Model dialogues,Refresh Parent, Pop-Up Window for SharePoint


Add New Items:

hyperLink.NavigateUrl = "javascript:SP.UI.ModalDialog.ShowPopupDialog('" + url + "')";



Dialog with Parent page refresh while closing Popup:


function openDialog() {
        var siteUrl = _spPageContextInfo.siteAbsoluteUrl;
        var libOrFolderURL = document.getElementById("<%=lblBreadCrumb.ClientID %>").innerHTML;
        var completeUrl = siteUrl + "/" + libOrFolderURL;            
        if (typeof libOrFolderURL !== 'undefined' && libOrFolderURL != "") {
            var options = {
                url: completeUrl,
                allowMaximize: true,
                width: 800,
                height: 700,
                title: "Upload, add, Edit, Apply category..",
                dialogReturnValueCallback: function (completeUrl) {                                   
                location.reload();
                }
            };
            SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', options);
        }
        return false;

    }




====================@===============================




Message Box:
  string script = "<script language='javascript'>alert('Field are emply ')</script>";
                Page.ClientScript.RegisterClientScriptBlock(GetType(), "Register", script);
(or)

string script = "<script language='javascript'>alert('" + errorMessage + "')</script>";
Page.ClientScript.RegisterClientScriptBlock(GetType(), "Register", script);

============================@============================




Add Link Under Personal Action:

<CustomAction
Id="By_RKU_ChangeMyPW_ActionsMenu"
    Title="Change Password"
Description="Change your Domain Password"
     GroupId="PersonalActions"
     Location="Microsoft.SharePoint.StandardMenu"

ImageUrl="~site/_layouts/images/SharePointFix/water.gif">
<UrlAction Url="javascript:(function () { var o = { url:'{SiteUrl}/_LAYOUTS/ChangePw/ChangePassword.aspx', title: 'Select List Item', dialogReturnValueCallback: SP.UI.ModalDialog.RefreshPage }; SP.UI.ModalDialog.showModalDialog(o); }) ();"/>

</CustomAction>


(Or)


 <CustomAction
   Id="By_RKU_ChangeMyPW_ActionsMenu"
   Title="Change Password"
   Description="Change your Domain Password"
   GroupId="PersonalActions"
   Location="Microsoft.SharePoint.StandardMenu"
    Sequence="1000">
   <UrlAction Url="_LAYOUTS/ChangePw/ChangePassword.aspx"/>  
  </CustomAction>

---------------------------------------------------------------------------------------------------


In SharePoint :


<CustomAction
    Id="{B0B5A0CB-7FBE-4dd6-9B2A-2B1E1321B8F9}"
    RegistrationType="List"
    RegistrationId="101"
Location="EditControlBlock"
Title="Change Password">
 <UrlAction Url="javascript: function onClose(){ } 
       var o = { 
  url: '{SiteUrl}/_layouts/ChangePw/ChangePassword.aspx',
 title: 'Password Rest Tool',
 allowMaximize: true,
 showClose: true,
 width: 400,
 height: 300,
 dialogReturnValueCallback: onClose
 };
 SP.UI.ModalDialog.showModalDialog(o);"/>
  </CustomAction>

Tuesday, May 7, 2013

Calculate column Conditions with marks grade.

Calculated Column in SharePoint
Student Percentage:


=IF([Percentage]>=0.95,"A",IF([Percentage]>=0.88,"B",IF([Percentage]>=0.81,"C",IF([Percentage]>=0.75,"D",IF([Percentage]>=0.74,"F")))))




==================================================
columns value (Questions) based  on another column (Role) selections:

If you select Developer, Question value should be 26.




=IF(Role="Architects",34,
IF(Role="Consultants",30,
IF(Role="Developers",26,
IF(Role="Engagement Managers",38,
IF(Role="Managers",28,
IF(Role="Project Managers",42,
IF(Role="Senior Sales Executives",26,0)))))))

Tuesday, April 30, 2013

Get All Users from Web Application programatically


static void Main(string[] args)
        {
            String ConfigValues = ConfigurationSettings.AppSettings["WebAppsName"];

            String[] ObjWebapps = ConfigValues.Split('|');

            foreach (String WebappsName in ObjWebapps)
            {
                SPWebApplication webApp = SPWebApplication.Lookup(new Uri(WebappsName));
                int count = webApp.Sites.Count;
                foreach (SPSite ObjSites in webApp.Sites)
                {
                
                    AllUsers(ObjSites.Url);
                }
            }
           // AllUsers();
     
        }
        protected static void AllUsers(String SiteName)
        {
            using (SPSite site = new SPSite(SiteName))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    foreach (SPRoleAssignment roleAssignment in web.RoleAssignments)
                    {
                        if (roleAssignment.Member is SPGroup)
                        {
                           
                            foreach (SPRoleDefinition roleDefinition in roleAssignment.RoleDefinitionBindings)
                            {
                               // ("\t" + roleDefinition.Name);
                                if (roleDefinition.Name.Equals("Contribute"))
                                {
                                    var group = (SPGroup)roleAssignment.Member;
                                    foreach (SPUser user in group.Users)
                                    {
                                    //("Contribute Permission Level" + "----" + "User Name" + user.Name);
                                    }

                                  
                                }
                                if (roleDefinition.Name.Equals("Full Control"))
                                {
                                    var group = (SPGroup)roleAssignment.Member;
                                    foreach (SPUser user in group.Users)
                                    {
                                        //("Contribute Permission Level" + "----" + "User Name" + user.Name);
                                    }
                                }
                                if (roleDefinition.Name.Equals("Read"))
                                {
                                    var group = (SPGroup)roleAssignment.Member;
                                    foreach (SPUser user in group.Users)
                                    {
                                       //("Read Permission Level" + "----" + "User Name" + user.Name);
                                    }
                                }
                                if (roleDefinition.Name.Equals("View Only"))
                                {
                                    var group = (SPGroup)roleAssignment.Member;
                                    foreach (SPUser user in group.Users)
                                    {
                                        //("View Only Permission Level" + "----" + "User Name" + user.Name);
                                    }
                                }
                            }
                        }
                    }
                }
          
            }

        }

Thursday, March 14, 2013

SharePoint List items in Modal Dialog Popup from CQWW or XSLT


         SharePoint List items in Modal Dialog Popup from  

                CQWP or XSLT


Open list items in Modal dialog listed in Content Query Web Part.  

Steps to do
  1. Open  Site with in SharePoint designer and go to All items > Style library> XSL Style Sheets.
  2. Open ItemStyle.xsl file and edit it (CheckOut \ take the backup for safe)
  3. Paste below section to any of the  </xsl:template>

 <xsl:template name="ModalDialogPopUp" match="Row[@Style='ModalDialogPopUp']" mode="itemstyle">
        <xsl:variable name="SafeLinkUrl">
            <xsl:call-template name="OuterTemplate.GetSafeLink">
                <xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
            </xsl:call-template>
        </xsl:variable>
        <xsl:variable name="DisplayTitle">
            <xsl:call-template name="OuterTemplate.GetTitle">
                <xsl:with-param name="Title" select="@Title"/>
                <xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
            </xsl:call-template>
        </xsl:variable>
        <div class="item link-item bullet">
            <xsl:call-template name="OuterTemplate.CallPresenceStatusIconTemplate"/>
            <a onclick="javascript:SP.UI.ModalDialog.ShowPopupDialog('{$SafeLinkUrl}'); return false;" onmouseover="javascript:this.style.cursor='hand';" title="{@LinkToolTip}">
                        <xsl:value-of select="$DisplayTitle"/>
            </a>
        </div>

    </xsl:template>  

4.      Save the file and check it in. 
5.      Edit CQWP, ==> Presents==> in the ItemStyle of CQWP Select from Dropdown as  ModalDialogPopUp and Click OK.



Wednesday, March 13, 2013

Accessing Remote Active Directory User Properties in C#

            Accessing Remote Active Directory  User Properties in C#.



// Active Directory Access & Country Retrival
          
            SearchResultCollection sResults = null;
            string path = "LDAP://IPAddress";       .. (string path ="LDAP://10.0.2.15";)                                                                                               
            DirectoryEntry dEntry = new DirectoryEntry(path, "Domain\\UserName", "Password");
            DirectorySearcher dSearcher = new DirectorySearcher(dEntry);

             dSearcher.Filter = "(&(objectClass=user)(SAMAccountName=" + myname + "))";
            sResults = dSearcher.FindAll();
            String DisplayNames = String.Empty;           
            foreach (SearchResult searchResult in sResults)
            {
                if (searchResult != null)
                {
                    DisplayNames = searchResult.Properties["cn"][0].ToString();
                    if (DisplayNames.Contains("RKU.DK"))
                    {
                        String CountryName = searchResult.Properties["c"][0].ToString();
                      //("Country Name...:" + CountryName);
                      
                    }                                  
                }
            }
---------------------------------------------------------------------------------------------------
CODES in ACTIVE DIRECTORY Property:


OBJECTCLASS = "objectClass";
=>.         CONTAINERNAME = "cn";
=>.        LASTNAME = "sn";
=>.        COUNTRYNOTATION = "c";
=>.         CITY = "l";
=>.         STATE = "st";
=>.         TITLE = "title";
=>.        POSTALCODE = "postalCode";
=>.        PHYSICALDELIVERYOFFICENAME = "physicalDeliveryOfficeName";
=>.        FIRSTNAME = "givenName";
=>.        MIDDLENAME = "initials";
=>.        DISTINGUISHEDNAME = "distinguishedName";
=>.        INSTANCETYPE = "instanceType";
=>.        WHENCREATED = "whenCreated";
=>.        WHENCHANGED = "whenChanged";
=>.        DISPLAYNAME = "displayName";
=>.        USNCREATED = "uSNCreated";
=>.        MEMBEROF = "memberOf";
=>.        USNCHANGED = "uSNChanged";
=>.        COUNTRY = "co";
=>.         DEPARTMENT = "department";
=>.        COMPANY = "company";
=>.        PROXYADDRESSES = "proxyAddresses";
=>.        STREETADDRESS = "streetAddress";
=>.         DIRECTREPORTS = "directReports";
=>.         NAME = "name";
=>.        OBJECTGUID = "objectGUID";
=>.        USERACCOUNTCONTROL = "userAccountControl";
=>.        BADPWDCOUNT = "badPwdCount";
=>.        CODEPAGE = "codePage";
=>.        COUNTRYCODE = "countryCode";
=>.        BADPASSWORDTIME = "badPasswordTime";
=>.        LASTLOGOFF = "lastLogoff";
=>.         LASTLOGON = "lastLogon";
=>.        PWDLASTSET = "pwdLastSet";
=>.        PRIMARYGROUPID = "primaryGroupID";
=>.        OBJECTSID = "objectSid";
=>.        ADMINCOUNT = "adminCount";
=>.         ACCOUNTEXPIRES = "accountExpires";
=>.        LOGONCOUNT = "logonCount";
=>.        LOGINNAME = "sAMAccountName";
=>.        SAMACCOUNTTYPE = "sAMAccountType";
=>.        SHOWINADDRESSBOOK = "showInAddressBook";
=>.        LEGACYEXCHANGEDN = "legacyExchangeDN";
=>.        USERPRINCIPALNAME = "userPrincipalName";
=>.        EXTENSION = "ipPhone";
=>.        SERVICEPRINCIPALNAME = "servicePrincipalName";
=>.        OBJECTCATEGORY = "objectCategory";
=>.        DSCOREPROPAGATIONDATA = "dSCorePropagationData";
=>.        LASTLOGONTIMESTAMP = "lastLogonTimestamp";
=>.        EMAILADDRESS = "mail";
=>.        MANAGER = "manager";
=>.        MOBILE = "mobile";
=>.         PAGER = "pager";
=>.         FAX ="facsimileTelephoneNumber";
=>.        HOMEPHONE = "homePhone";