JSFiddle - React, Tailwind, and code Playground

by RicardoAlves

JavaScript

function editingResourceItem() {
		  $("body").on("click", ".editResourceItem", function(e) {
		    e.preventDefault();
		    var resourceDataDescription = $(this).data("description");

		    // calls the editor on request

		    CKEDITOR.instances['contentItemDescription'].setData(resourceDataDescription);

		    $('#editResourceItem').foundation('open');

		    var resourceID = $(this).data("id");
		    var contentName = $(this).data("name");
		    var contentItemName = $(this).data("item-name");
		    var contentItemDescription = $(this).data("content");


		    $("#editResourceItemForm input#resourceId").val(resourceID);
		    $("#editResourceItemForm input#contentItemName").val(contentItemName);
		    $("#editResourceItemForm input#contentItemDescription").val(contentItemDescription);

		  }); //gets the values to edit form



		  $("#editResourceItemForm").submit(function(e) {
		    e.preventDefault();

		    $.getJSON(appDirLocation + "public/_data/resource_data.json", function(jsonData) {

		      console.log(jsonData.itemsList.contentItem);

		      //var contentItems = jsonData.itemsList.contentItems;
		      var resourceId = $("#editResourceItemForm input#resourceId").val(); // resource id
		      var updatedContentName = $("#appData").data("content-name");
		      var updatedContentItem = {
		        name: $("#editResourceItemForm input#contentItemName").val(),
		        description: CKEDITOR.instances.contentItemDescription.getData()
		      };

		      resourceId = Number(resourceId); // input filed is collected as string needs to make number

		      _.each(jsonData.itemsList, function(item) {
		        if (item.id === resourceId) {
		          item.contentName = updatedContentName;
		          item.contentItems = updatedContentItem;
		          // queue here new items to update 
		        }
		      }); // used underscore.js seems better for handling json data

		      var newJsonOutput = JSON.stringify(jsonData); //stringify new data

		      var...