Solved

SharePoint 2010: Add an upload button to a Document Set Welcome Page

Posted on 2013-05-27
2
545 Views
Last Modified: 2013-05-28
I am trying to add an 'Upload Documents' button onto onto the welcome page of a Document Set.
I found the following code at: http://sharepointaddict.blogspot.com.au/2012/10/add-upload-document-button-to.html

However when I run it, the modal window that pops up gives a 'file Not Found' error with the modal url of http://intranet/functions/it/testbed/Contract%20Review/Forms/_layouts/Upload.aspx?List=undefined&RootFolder=undefined&IsDlg=1&IsDlg=1

I added the code to a content editor webpart on the welcome page design.

Any ideas?

     
  <script src="/functions/it/testbed/SiteAssets/jquery-1.10.0.min.js" type="text/javascript"></script><script src="/functions/it/testbed/Contract%20Review/Forms/_layouts/SP.UI.Dialog.js" type="text/javascript"></script><script src="/functions/it/testbed/Contract%20Review/Forms/_layouts/SP.UI.Dialog.debug.js" type="text/javascript"></script><script type="text/javascript">
      
     //Using this to control when my script executes - don't want the script to load //on form load but on form click. I call this function in my runCode function  
     //below and then call the runCode function in my Upload Document's onclick event  
     $(document).ready(function(){  
     SP.SOD.executeOrDelayUntilScriptLoaded(initialize,'SP.js');  
     SP.SOD.executeOrDelayUntilScriptLoaded(test,'SP.js');  
      });  
     //takes the querystring from the first query string parameter in the Document Set //url to the last then splits it into an array using the ampersand (&) as the delimeter  
     function getUrlVars() {  
       var vars = {};  
       var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {  
         vars[key] = value;  
       });  
       return vars;  
     }  
     //Using the function to get the values we will use to obtain the url of the //upload document function dynamically  
     var listID = getUrlVars()["List"];
     var rootFolder = getUrlVars()["RootFolder"];  
     //This function opens up the form in modal dialog mode  
     function openDiaForm()  
     {    
       var diaOptions = SP.UI.$create_DialogOptions();    
       diaOptions.url = 'http://intranet/functions/it/testbed/Contract%20Review/Forms/_layouts/Upload.aspx?List='+ listID + '&RootFolder=' + rootFolder + '&IsDlg=1';    
       diaOptions.width = 800;    
       diaOptions.height = 600;    
       diaOptions.title = "Upload Document Form";  
         diaOptions.dialogReturnValueCallback = Function.createDelegate(null, CloseCallback);  
       SP.UI.ModalDialog.showModalDialog(diaOptions);  
     }  
     //The function refreshes the content of the Document Set Welcome Page after the Upload Document modal dialog box has been closed  
     function CloseCallback(result, target) {  
         location.reload(true);  
       }  
     function runCode() {  
       var x = ExecuteOrDelayUntilScriptLoaded(openDiaForm, "sp.js");  
     }  
      </script><div class="ms-uploadbtnlink"><button onclick="runCode();" type="button" value="Run Code">&#160;<span>Upload Document</span></button> </div>

Open in new window

0
Comment
Question by:techvagabond
  • 2
2 Comments
 
LVL 4

Accepted Solution

by:
techvagabond earned 0 total points
ID: 39200498
Moved the vars down into the next slab and I had the wrong location of the Upload.aspx
diaOptions.url = 'http://intranet/functions/it/testbed/Contract%20Review/Forms/_layouts/Upload.aspx?List='+ listID + '&RootFolder=' + rootFolder + '&IsDlg=1';
to
diaOptions.url = 'http://intranet/functions/it/testbed/_layouts/Upload.aspx?List='+ listID + '&RootFolder=' + rootFolder + '&IsDlg=1';
0
 
LVL 4

Author Closing Comment

by:techvagabond
ID: 39200501
corrected the location of the upload.aspx
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

The Scenario: Let’s say you have a quote worksheet in Excel that you use to work up sales figures and such for your clients. You utilize SharePoint to manage and keep track of these documents. You would like values from your worksheet to populate Sh…
Summary In SharePoint 2010 it is easy to create custom color themes to jazz up a site. Theme colors can also be created in PowerPoint 2010 with a few clicks. But how do the chosen colors actually look in the SharePoint site? The attached PowerPoint…
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

785 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question