{"action":"created","issue":{"url":"https://api.github.com/repos/splitbrain/dokuwiki/issues/1203","labels_url":"https://api.github.com/repos/splitbrain/dokuwiki/issues/1203/labels{/name}","comments_url":"https://api.github.com/repos/splitbrain/dokuwiki/issues/1203/comments","events_url":"https://api.github.com/repos/splitbrain/dokuwiki/issues/1203/events","html_url":"https://github.com/splitbrain/dokuwiki/issues/1203","id":89907107,"number":1203,"title":"AJAX action loading and inline section edit","user":{"login":"zioth","id":945603,"avatar_url":"https://avatars.githubusercontent.com/u/945603?v=3","gravatar_id":"","url":"https://api.github.com/users/zioth","html_url":"https://github.com/zioth","followers_url":"https://api.github.com/users/zioth/followers","following_url":"https://api.github.com/users/zioth/following{/other_user}","gists_url":"https://api.github.com/users/zioth/gists{/gist_id}","starred_url":"https://api.github.com/users/zioth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zioth/subscriptions","organizations_url":"https://api.github.com/users/zioth/orgs","repos_url":"https://api.github.com/users/zioth/repos","events_url":"https://api.github.com/users/zioth/events{/privacy}","received_events_url":"https://api.github.com/users/zioth/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/splitbrain/dokuwiki/labels/Category:%20Backend","name":"Category: Backend","color":"FFC274"},{"url":"https://api.github.com/repos/splitbrain/dokuwiki/labels/Category:%20Customization/Extensions","name":"Category: Customization/Extensions","color":"FFC274"},{"url":"https://api.github.com/repos/splitbrain/dokuwiki/labels/Category:%20Design","name":"Category: Design","color":"FFC274"},{"url":"https://api.github.com/repos/splitbrain/dokuwiki/labels/Difficulty:%20complex","name":"Difficulty: complex","color":"0A4F9D"},{"url":"https://api.github.com/repos/splitbrain/dokuwiki/labels/Feature","name":"Feature","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-06-21T12:47:59Z","updated_at":"2015-06-23T11:35:09Z","closed_at":null,"body":"Let's modernize Dokuwiki!\r\n\r\nIn the template I'm working on, I've overridden some of the core Doku JS to allow many actions to be fetched using AJAX instead of reloading the page. This makes Doku feel much more responsive. In particular, if you're viewing a page, you don't have to reload to switch to the edit, subscribe or revisions mode. Canceling an edit is instantaneous, and preview loads much faster as well.\r\n\r\nIn addition, I've made it so that section edits happen in place -- the section you're editing gets replaced with an editor, while the rest of the page is unchanged.\r\n\r\nMy code overrides existing JS, and adds an additional custom action (called \"partial\"), and depends on certain class names being attached to the body tag, so it can't be patched directly into Doku, but I'd be happy to share the code, and might even have time to make the change myself.\r\n\r\nThis feature would have to be based on a config option, since it might not play well with some plugins. In particular, it will mess up plugins which let you modify UI outside the main content area through `~~XXX~~` - style directives."},"comment":{"url":"https://api.github.com/repos/splitbrain/dokuwiki/issues/comments/114456712","html_url":"https://github.com/splitbrain/dokuwiki/issues/1203#issuecomment-114456712","issue_url":"https://api.github.com/repos/splitbrain/dokuwiki/issues/1203","id":114456712,"user":{"login":"zioth","id":945603,"avatar_url":"https://avatars.githubusercontent.com/u/945603?v=3","gravatar_id":"","url":"https://api.github.com/users/zioth","html_url":"https://github.com/zioth","followers_url":"https://api.github.com/users/zioth/followers","following_url":"https://api.github.com/users/zioth/following{/other_user}","gists_url":"https://api.github.com/users/zioth/gists{/gist_id}","starred_url":"https://api.github.com/users/zioth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zioth/subscriptions","organizations_url":"https://api.github.com/users/zioth/orgs","repos_url":"https://api.github.com/users/zioth/repos","events_url":"https://api.github.com/users/zioth/events{/privacy}","received_events_url":"https://api.github.com/users/zioth/received_events","type":"User","site_admin":false},"created_at":"2015-06-23T11:35:09Z","updated_at":"2015-06-23T11:35:09Z","body":"Thanks for the link. I have all the JS in place, but I didn't know how to intercept AJAX events."}}