Advertisement
Guest User

Untitled

a guest
Aug 25th, 2017
271
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  2. <script type="text/javascript" src="/_layouts/15/MicrosoftAjax.js"></script>
  3. <script type="text/javascript" src="/_layouts/15/sp.runtime.js"></script>
  4. <script type="text/javascript" src="/_layouts/15/sp.js"></script>
  5. <script src="https://cdn.ckeditor.com/4.7.1/standard/ckeditor.js"></script>
  6. <script language="javascript" type="text/jscript">
  7.     // Run your custom code when the DOM is ready.
  8.     $(document).ready(function () {
  9.  
  10.         // Specify the unique ID of the DOM element where the
  11.         // picker will render.
  12.         initializePeoplePicker('peoplePickerDivTo');
  13.         initializePeoplePicker('peoplePickerDivCC');
  14.     });
  15.  
  16.     // Render and initialize the client-side People Picker.
  17.     function initializePeoplePicker(peoplePickerElementId) {
  18.  
  19.         // Create a schema to store picker properties, and set the properties.
  20.         var schema = {};
  21.         schema['PrincipalAccountType'] = 'User,DL,SecGroup,SPGroup';
  22.         schema['SearchPrincipalSource'] = 15;
  23.         schema['ResolvePrincipalSource'] = 15;
  24.         schema['AllowMultipleValues'] = true;
  25.         schema['MaximumEntitySuggestions'] = 50;
  26.         schema['Width'] = '600px';
  27.  
  28.         // Render and initialize the picker.
  29.         // Pass the ID of the DOM element that contains the picker, an array of initial
  30.         // PickerEntity objects to set the picker value, and a schema that defines
  31.         // picker properties.
  32.         this.SPClientPeoplePicker_InitStandaloneControlWrapper(peoplePickerElementId, null, schema);
  33.     }
  34.  
  35.     function getuserID(peoplePickerElementId) {
  36.         var peoplePickerTo = this.SPClientPeoplePicker.SPClientPeoplePickerDict.peoplePickerDivTo_TopSpan;
  37.         var peoplePickerCC = this.SPClientPeoplePicker.SPClientPeoplePickerDict.peoplePickerDivCC_TopSpan;
  38.         // Get user keys.
  39.         keys = peoplePickerTo.GetAllUserKeys();
  40.         cc = peoplePickerCC.GetAllUserKeys();
  41.     }
  42.  
  43.     function submitReply() {
  44.         var ctx = new SP.ClientContext.get_current();
  45.         var discussionItem = ctx.CurrentItem;
  46.         var body = CKEDITOR.instances['commentArea'].getData();
  47.  
  48.         var messageProperties = {'Body': body};
  49.         createMessage(discussionItem,messageProperties,
  50.             function(){
  51.                 console.log('Reply has been post successfully');
  52.             },
  53.             function(sender,args){
  54.                  console.log('Error occurred while posting a reply:' + args.get_message());
  55.             }
  56.         );
  57.     }
  58.  
  59.     function createMessage(discussionItem,properties,OnItemAdded,OnItemError)
  60.     {
  61.         var context = new SP.ClientContext.get_current();
  62.         var messageItem = SP.Utilities.Utility.createNewDiscussionReply(context, discussionItem);
  63.         for(var propName in properties) {
  64.            messageItem.set_item(propName, properties[propName])
  65.         }
  66.         messageItem.update();
  67.         context.executeQueryAsync(
  68.             function() {
  69.               OnItemAdded(messageItem);          
  70.             },
  71.             OnItemError
  72.         );
  73.     }
  74.  
  75. </script>
  76.  
  77. <div>
  78.     <table style = "width:100%">
  79.         <tr>
  80.             <td style="text-align:left; width:3%">TO</td>
  81.             <td style="text-align:left; width:97%"><div id ="peoplePickerDivTo" style ="display:inline-block;"></div></td>
  82.         </tr>
  83.         <tr>
  84.             <td style="text-align:left; width:3%">CC</td>
  85.             <td style="text-align:left; width:97%"><div id ="peoplePickerDivCC" style ="display:inline-block;"></div></td>
  86.         </tr>
  87.     </table>
  88. <br>
  89.     <p>
  90.         <textarea id="commentArea" name="commentArea" style="width:600px; height:100px;"></textarea>
  91.         <script>
  92.             CKEDITOR.replace('commentArea');
  93.         </script>
  94.     </p>
  95.     Attach any relevant files
  96.     <div class="files" id="attachFilesContainer">
  97.     <table style="width:100%">
  98.         <tr>
  99.             <td style="text-align:left; vertical-align:top; width:70%">
  100.                 <input id="infringementFiles" type="file" class="multi" multiple = "multiple" style="width:600px"/></td>
  101.             <td style="text-align:right; vertical-align:top; width:30%">
  102.                 <input class="btn" id="btnSend" value="Send" type="button" onclick="SP.SOD.executeFunc('sp.js', 'SP.ClientContext', function() {submitReply();});"/></td>
  103.         </tr>
  104.     </table>
  105.     </div>
  106. </div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement