Sol Web Solutions Blog

Sol Web Solutions Blog is aimed to help, inform, educate and enable our site visitors.

  • Home
    Home This is where you can find all the blog posts throughout the site.
  • Categories
    Categories Displays a list of categories from this blog.
  • Tags
    Tags Displays a list of tags that have been used in the blog.
  • Login
    Login Login form
Super User

Super User

Super User has not set their biography yet

Video tutorial on Joomla access control for menu items and articles.  This video explains how to have specific group & access view control for menu items and articles.  

We use an example of runners, and the main runner page is seen by logged in users, but there are runner specific child menu items that are only seen by those specific other runners can see their pages.  This may be a scenario where coaches have special and secret training plans for certain runners, and that information shouldn't been seen by other runners.

The groups are created, followed by access levels, menu items and articles are tied to those Joomla access levels, then users are assigned to the groups.  The video walks through the backend creation, front end example of Joomla access control on specific menu items, then a re-cap in the backend.

I hope this video helps others, as it did help with a specific need on our development.

Hits: 4729

User request to have a SharePoint 2013 list hyperlink column to open in a new tab.  

The code (my hyperlink is the 4th column in the list) that worked even when going to page 2 in the list view:

$(function() {
        var $t;

        var interval = setInterval(function() {
            $t = $(">tbody tr td:nth-child(4) a");

              $(this).attr("target", "_blank");
        }, 1000);

Special thanks for the help on this issue to Patrick_Liang (MSFT CSG, Partner)

Hits: 22856

Dealing with SharePoint 2007 Calendar view. We are trying some javascript via a content editor to hide the "12:00 AM" when viewing the data from a calendar view.

Via a Content Editor Web Part we hid all instances of "12:00 AM" via:

<script type="text/j-avascript">
var el = document.getElementsByTagName('a');

for(var i=0; i < el.length; i++) {
      el[i].innerHTML = el[i].innerHTML.replace("12:00 AM","");
Hits: 4402

User reported they could open a 2007 InfoPath form from the library/list view, but couldn't open the link from Outlook or copying the URL into another/new browser tab. The errors seen where either:

  • The form has been closed
  • The following file is not a valid InfoPath form template

We knew the template/form itself was valid because brand new forms were working correctly.

How did we fix it?

  1. In right side "Available Views" for the library, click "Relink Documents" 
  2. From "Template Link" column, click right dropdown list icon and you'll see the one or more templates appear as options >> this is your first clue this is where the problem arises...there should only be 1
  3. A correct link should simply end in "/Forms/templates.xsn" 
  4. You can verify this link/URL by going to the Form Library Settings >> Advanced Settings 
  5. Have a look @ the "Template URL:" value (you can double click + Copy the URL) 
  6. Paste this URL into Notepad 
  7. Notice URL should be similar to "site/Forms/template.xml" 
  8. Back to "Relink Documents" view >> Template Link column 
  9. Clicking one of the 2+ values in this particular library shows at the end of the VERY LONG & INCORRECT template link we can see the problem starting just after the initial "/Forms/template.xsn" where the string begins "?SaveLocation=http://*" 
  10. There should be nothing with "?SaveLocation" 
  11. To fix a particular row check the "Relink" checkbox, then the button/link named "Relink Selected Documents" at the left top area of the data rows. 
  12. Users should now be able to open the link from Outlook, new browser tab, etc. 

**** How did it get this way?

Make sure users have the IE add-on SharePointOpenXMLDocument enabled.

Hits: 28876

We were trying to move several meeting workspaces from a 5th level sub-site to a 2nd level site within the same site collection.  We know regular sites at the same or different level can be moved, but for some reason the meeting workspaces won't move.  Publishing feature is activated on the destination, and we have moved test sibling sites into different sibling sites.  Error we keep getting is:

'Site in question' cannot be moved or copied into itself or one of its subsites

Looks like you just need to be patient to get these workspaces to move!  ~=^)

1. Move modal comes up
2. select destination
3. *** wait for modal window to post back
4. then you can click "OK" to move the actual sites

Hits: 4960

Creating custom SharePoint 2013 templates could possibly render the page ribbon incorrectly.  


Custom styling can have a tendency to interfere with the default SharePoint 2013 styling...particularly the ribbon.  Box sizing has a lot to do with how dropdown lists and images are displayed in the ribbon.

Box-sizing allows us to specify how we want the browser to calculate the CSS box model. 

In particular, should the “width” of a box or container include padding and the border, or is the width just what is inside of the padding? 

Content-box means that the specified width and height do not include margins, borders, or padding. 

Border-box, on the other hand is similar to how Internet Explorer determines width and height when a document is rendered in Quirks mode

...meaning the width and height include the border and padding, but not the margin.

 The following CSS can help you with your ribbon displaying properly after using custom SharePoint design in your templates:

*, *:before, *:after {

   -webkit-box-sizing: content-box; /*border-box causes many issues with SP*/

   -moz-box-sizing: content-box; /*border-box causes many issues with SP*/

   box-sizing: content-box; /*border-box causes many issues with SP*/


* [class^="span"], * [class^="span"]:before, , * [class^="span"]:after {

   -webkit-box-sizing: border-box; /*re-enable border-box for framework spans*/

   -moz-box-sizing: border-box; /*re-enable border-box for framework spans*/

   box-sizing: border-box; /*re-enable border-box for framework spans*/


img {

   max-width: none;

   width: auto;


* [class^="span"] img {

   max-width: 100%; /*for images inside span grid*/


#scriptWPQ2 img,, #applist img {

   /*within a span may still need to have width of image not 100% for SP2013 OOTB features/imges*/

   width: auto;

   max-width: none;


.ms-siteactions-imgspan {

   float: none;

   margin: 0px;




/*Custom Styles to Fix Ribbon Layout Issues*/


#s4-ribbonrow [class*="span"] {

   float: none;

   margin-left: 0px;

   line-height: 1.2em;

} {

   height: 21px; /*14 was from first try*/

   padding: 3px 7px 2px;




@media (min-width: 1200px) {

   header > .container-fluid, nav#topnav > .container-fluid, footer > .container-fluid,

   .footer-bottom  > .container-fluid  {

      max-width: 1160px;

      margin-left: auto;

      margin-right: auto;


   #main {

      max-width: 1200px;

      margin-left: auto;

      margin-right: auto;




/*Fix Absolutely Positioned divs in a Grid Framework*/


header > .container-fluid {

   position: relative;


header .searchbox {

   bottom: auto;

   right: auto;

   position: relative;

   float: right;

   margin-top: 60px;

   text-align: left;

   width: 260px;


header #searchInputBox input[type=text]{

   box-shadow: none;

   transition: none;

   -moz-transition: none;

   -webkit-transition: none;


Hits: 16725

Posted by on in Facebook
Pin a Facebook post to the top of my page

Facebook offers a feature called "pinning a post" on Timeline. This means that you are able to attach any post to the top of your page, positioning it so that visitors will see it right away. If you have a post promoting your latest social campaign, you definitely want to sponsor it by pinning it to the top! Here's how:

1. Log into your Facebook account.
2. Hover your mouse over the right corner of the post that you want to use. A downward arrow appears.
3. Click on the arrow button.
4. Select "Pin to top" from the dropdown menu. Your post moves to the top of your Timeline. A yellow ribbon will also appear, to remind you that it's pinned.

*** Note: You can always remove the pin - just click the downward arrow and select "Unpin from Top."

Tagged in: Facebook
Hits: 22707

Posted by on in SharePoint

Calculate age of SharePoint list itemEver wonder how you can calculate the age of the list items in SharePoint? The Today() function is not allowed in calculated fields, so what's the trick?

Hits: 152748

To find the value in an InfoPath form, we had to take a different approach than when using the DispForm.aspx page.

As usual, we loaded the .js file in the SharePoint site via a document library, and used either Firefox or Chrome to find the id of the textbox or element that stored the value we wanted to put into localStorage.

Hits: 26761

1. First create the data source in your Datasets folder.

In my case, my dataset is called dsStatusDDL because I'm pulling a status field from a SharePoint list.First create the data source in your Datasets folder.

Hits: 129530

Posted by on in Reporting

I had a customer request to hide a row conditionally, but when the report rendered in the browser the hidden row still took up spacing on the report.

I found this post thanks to Frank v.d. Laar:

Try to set the Hidden property of the Static Row Group under the Details Group, in this case the whole row will disappear instead of the content of the textboxes.

If you are using Report Builder, you need to switch to Advanced Mode (make sure that the Properties and the Grouping windows are displayed, go to the upper right side of the Grouping window and press the black triangle), click on the second "Static" item under the "(Details)" group and you can set the Hidden property on the Properties window.

Hits: 86190

Posted by on in Reporting

I had a requirement to add some spacing after a prefix of a textbox to align with a row below it and make the report more visually appealing. I tried the space() function within my expression, and that didn't work.

Here's what I did to resolve our scenario:

1. Left Double click the textbox that will hold this value/expression
2. Right click the textbox area and select "Create Placeholder" from the flyout menu option
3. In the "Placeholder Properties" pop-up modal, make sure to select
"HTML - Interpret HTML tags as styles" when in the "General" section

4. When creating the expression, I used the following for my padding:
=iif(Fields!datatype.Value="Issues", "Issue:"
& " " , "") & Fields!comment.Value

In my scenario, if the type was "Issues", then I needed to put:
a prefix of "Issue:" + spacing + my comment field


Hits: 115548

I had a request to create an autonumbering column in SharePoint 2010 for document numbering, and here is how we got the solution to work. I will use elementary school documents as an example.

The user could select one of up to 15 different school subjects when requesting a new document number, and the autonumber should stay in sync with the school there is no loss in the next available number for that particular school subject.

This is why I can't simply use the ID column that's associated with every list and append that to the eventual variable in a workflow.

Hits: 169352

Help Today

Send an email here!

Sol Web Solutions will be glad to help you anytime with general or technical questions, suggestions or comments.

Website Hosting

Web Hosting

Sol News

We will not share, trade, or sell any of your information in any way. Your privacy is completely respected.