We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 6281
    • 45 Posts
    Hey,

    Just wondering if it is possible to achieve this?
    Using a simple form to inject an updated list of events / gigs into a place holder?

    I want to enable a web user to be able to log in and using a simple form update a
    gig list.

    Any ideas?

    Thanks!
      Argue for your limitations and they are yours!
      • 28042 ☆ A M B ☆
      • 24,524 Posts
      I’m using Jot for things like this. A little creative fiddling with the form tpl and the output chunk tpl, and it’ll do just about anything.
        Studying MODX in the desert - http://sottwell.com
        Tips and Tricks from the MODX Forums and Slack Channels - http://modxcookbook.com
        Join the Slack Community - http://modx.org
        • 6281
        • 45 Posts
        Hi,

        Thanks for replying. Could you elaborate a little with maybe an example?

        Regards,

          Argue for your limitations and they are yours!
          • 28042 ☆ A M B ☆
          • 24,524 Posts
          Well, here’s the Jot call for one setup where I’m using it with image upload and drag-and-drop reordering of the items:
          <script type="text/javascript" src="assets/js/imagebrowser.js"></script>
          <script type="text/javascript" src="assets/js/jquery-ui-1.7.1.custom.min.js"></script>
          <script type="text/javascript">
            $(document).ready(function() {
              $("#whites").sortable({
                handle : '.handle',
                update : function () {
          		  var order = $('#whites').sortable('serialize');
            		$("#info").load("[~211~]?"+order);
                }
              });
          });
          
          <div id="whites">
          <h2>Whites</h2>
          [!Jot? &customfields=`bottle,club,image,position` &tplForm=`wtForm` &tplComments=`wtNotes` &tplModerate=`wtManage` &sortby=`position:a`&canpost=`Site Admins`!]
          </div>
          

          Here’s the form chunk tpl (wtForm)
          <a name="jf[+jot.link.id+]"></a>
          <h2>[+form.edit:is=`1`:then=`Edit Item`:else=`Add a Note+]</h2>
          [+form.error:isnt=`0`:then=`
          <div class="jot-err">
          [+form.error:select=`
          &-3=You are trying to re-submit the same item. You have probably clicked the submit button more than once.
          &-2=Your item has been rejected.
          &-1=Your item has been saved, it will first be reviewed before it is published.
          &1=You are trying to re-submit the same item. You have probably clicked the submit button more than once.
          &2=The security code you entered was incorrect.
          &3=You can only post once each [+jot.postdelay+] seconds.
          &4=Your item has been rejected.
          &5=[+form.errormsg:ifempty=`You didn't enter all the required fields`+]
          `+]
          </div>
          `:strip+]
          [+form.confirm:isnt=`0`:then=`
          <div class="jot-cfm">
          [+form.confirm:select=`
          &1=Your note has been published.
          &2=Your note has been saved, it will first be reviewed before it is published.
          &3=note saved.
          `+]
          </div>
          `:strip+]
          <form method="post" action="[+form.action:esc+]#jf[+jot.link.id+]" class="jot-form">
          	<fieldset>
          	<input name="JotForm" type="hidden" value="[+jot.id+]" />
          	<input name="JotNow" type="hidden" value="[+jot.seed+]" />
          	<input name="parent" type="hidden" value="[+form.field.parent+]" />
          		
          		<label for="name[+jot.id+]">Name:<br />
          			<input tabindex="[+jot.seed:math=`?+1`+]" name="title" type="text" size="40" value="[+form.field.title:esc+]" id="name[+jot.id+]" />
          		</label><br />
          
          		<label for="note[+jot.id+]">Note:<br />
          			<textarea tabindex="[+jot.seed:math=`?+2`+]" name="content" cols="50" rows="8" id="note[+jot.id+]">[+form.field.content:esc+]</textarea>
          		</label><br />
          
          		<label for="bottle[+jot.id+]">Bottle:<br />
          			<input tabindex="[+jot.seed:math=`?+3`+]" name="bottle" type="text" size="20" value="[+form.field.custom.bottle:esc+]" id="bottle[+jot.id+]" />
          		</label><br />
          
          		<label for="club[+jot.id+]">Wine Club:<br />
          			<input tabindex="[+jot.seed:math=`?+4`+]" name="club" type="text" size="20" value="[+form.field.custom.club:esc+]" id="club[+jot.id+]" />
          		</label><br />
          
          		<label for="wtImage[+jot.id+]">Image:<br />
          			<input tabindex="[+jot.seed:math=`?+6`+]" name="image" type="text" size="20" value="[+form.field.custom.image:esc+]" id="wtImage[+jot.id+]" /><input type="button" value="Select Image" onclick="BrowseServer('[+jot.id+]')" />
          		</label><br />
          	
          	<div style="float:right;width: 100px;"></div>
          	<input tabindex="[+jot.seed:math=`?+3`+]" name="submit" type="submit" value="[+form.edit:is=`1`:then=`Save Item`:else=`Add  Item`+]" />
          	[+form.edit:is=`1`:then=`
          		<input tabindex="[+jot.seed:math=`?+4`+]" name="submit" type="submit" value="Cancel" onclick="history.go(-1);return false;" />
          	`+] 
          	</fieldset>
          </form>

          And the output tpl (wtNotes)
          <div class="tasteNotes" id="listItem_[+comment.id+]">
          [+jot.moderation.enabled:is=`1`:then=`
          	       <img class="handle" src="[(base_url)]assets/snippets/jot/templates/move.png" width="16" height="16" alt="Move item" title="Move Item" border="0" />
             `:strip+]
          <div class="jot-mod">
          	 [+jot.moderation.enabled:is=`1`:then=`
          		<a href="[+jot.link.delete:esc+][+jot.querykey.id+]=[+comment.id+]#jotmod[+jot.link.id+]" onclick="return confirm('Are you sure you wish to delete this item?')" title="Delete Item"><img src="[(base_url)]assets/snippets/jot/templates/delete.gif" width="16" height="16" alt="Delete item" border="0" /></a>
          		[+comment.published:is=`0`:then=`
          		<a href="[+jot.link.publish:esc+][+jot.querykey.id+]=[+comment.id+]#jotmod[+jot.link.id+]" onclick="return confirm('Are you sure you wish to publish this item?')" title="Publish Item"><img src="[(base_url)]assets/snippets/jot/templates/publish.png" width="16" height="16" alt="Publish Item" border="0" /></a>
          		`+]
          		[+comment.published:is=`1`:then=`
          		<a href="[+jot.link.unpublish:esc+][+jot.querykey.id+]=[+comment.id+]#jotmod[+jot.link.id+]" onclick="return confirm('Are you sure you wish to unpublish this item?')" title="Unpublish Item"><img src="[(base_url)]assets/snippets/jot/templates/unpublish.png" width="16" height="16" alt="Unpublish Item" border="0" /></a>
          		`+]
          	 `:strip+]
          	 [+jot.user.canedit:is=`1`:and:if=`[+comment.createdby+]`:is=`[+jot.user.id+]`:or:if=`[+jot.moderation.enabled+]`:is=`1`:then=`
          		 <a href="[+jot.link.edit:esc+][+jot.querykey.id+]=[+comment.id+]#jf[+jot.link.id+]" onclick="return confirm('Are you sure you wish to edit this item?')" title="Edit Item"><img src="[(base_url)]assets/snippets/jot/templates/edit.gif" width="16" height="16" alt="Edit Item" border="0" /></a>
           `:strip+]
          
          	</div>
          		<span class="fl wtimage"><img src="[+comment.custom.image:esc+]" alt="[+comment.title:esc+]" height="200px" /></span>
          		<div class="twothirds padh">
          			<h3>[+comment.title:esc+]</h3>
          			<p><h4>Bottle: <span>$[+comment.custom.bottle:esc+]</span></h4><h4>Wine Club: <span>$[+comment.custom.club:esc+]</span></h4></p>
          			<h4>Notes:</h4>
          			<p class="summary">[+comment.content:esc+]</p>
          		</div>
          <hr class="clearfix" />
          </div>
          

          And yes, working with these gives me a headache, but if you study them carefully you can begin to see what the phx code (the :and:if:not:... stuff) is actually doing.
            Studying MODX in the desert - http://sottwell.com
            Tips and Tricks from the MODX Forums and Slack Channels - http://modxcookbook.com
            Join the Slack Community - http://modx.org
            • 6281
            • 45 Posts
            Thank you very much, it is most appreciated.

            I’m beginning to see the value of such uses.

            :)
              Argue for your limitations and they are yours!