Astroport.ONE/templates/tw/$ _TiddlyTweaks_ReadOnly.json

1 line
10 KiB
JSON

[{"created":"20220505193946834","title":"$:/TiddlyTweaks/ReadOnly","creator":"Telumire","text":"\\define enable-autosave()\n<$action-setfield $tiddler=\"$:/config/AutoSave\" text=\"yes\"/>\n\\end\n\\define disable-autosave()\n<$action-setfield $tiddler=\"$:/config/AutoSave\" text=\"\"/>\n\\end\n\\define set-current-sidebar-tab()\n<$action-listops $tiddler=\"$:/state/tab/sidebar--595412856\" $field=\"text\" $filter=\"[[$:/tags/SideBar]tagging[]nth[1]]\"/>\n\\end\n\\define StartupAction()\n <$let read-only={{{ [subfilter{!!ReadOnlyFilter}] }}}>\n <!-- ReadOnly Style -->\n <$list filter=\"[<read-only>match[true]]\" variable=_>\n <style>{{!!ReadOnlyCSS}}</style>\n </$list>\n <!-- Actions -->\n <!-- Toggle save warning-->\n <$list filter=\"[<read-only>match[true]]\" variable=\"_\" emptyMessage=<<enable-autosave>> ><<disable-autosave>></$list>\n\n <$list filter=\"[list[!!config-visibility]]\" variable=\"UI-elements\">\n <$list filter=\"[<currentTiddler>get<UI-elements>enlist-input[]has[text]]\" variable=\"UI-element\">\n <!-- config visibility -->\n <$list filter=\"[<UI-elements>search:title[Buttons]]\" variable=_>\n <$tiddler tiddler={{{ $:/config/[<UI-elements>]/Visibility/[<UI-element>]+[join[]] }}}>\n <$list filter=\"[<read-only>match[true]]\" variable=_>\n <!-- store initial visibility value -->\n <$action-setfield initial={{!!text}}/>\n <!-- change visibility value to hide -->\n <$action-setfield text=\"hide\"/>\n </$list>\n <$list filter=\"[is[current]has[initial]]:filter[<read-only>match[false]]\" variable=_>\n <!-- restore initial visibility value -->\n <$action-setfield text={{!!initial}} />\n </$list>\n </$tiddler>\n </$list>\n <!-- toggle tags -->\n <$list filter=\"[<UI-elements>search:title[tabs]]:filter[<read-only>match[true]]\" variable=\"_\" >\n <$action-listops $tiddler=<<UI-element>> $tags=\"-[[$:/tags/SideBar]] +[[$:/tags/SideBar/disabled]]\" />\n </$list>\n <$list filter=\"[<UI-elements>search:title[tabs]]:filter[<read-only>match[false]]\" variable=\"_\" >\n <$action-listops $tiddler=<<UI-element>> $tags=\"+[[$:/tags/SideBar]] -[[$:/tags/SideBar/disabled]]\" />\n </$list>\n </$list>\n </$list>\n <!-- Set current tab -->\n <<set-current-sidebar-tab>>\n </$let>\n\\end\n\\define checkbox(state,field)\n <$button class=\"tc-btn-invisible\" actions=\"\"\"\n <$action-listops $field=\"$field$\" $subfilter=\"+[toggle<toggle>]\" />\n <$list filter=\"[[$state$]!match[checked]]\" variable=\"_\">\n <$action-deletetiddler $filter=\"[<toggle>][search:title[$:/config/]search:title<toggle>]\"/>\n </$list>\n <<set-current-sidebar-tab>>\n \"\"\">\n <input type=checkbox $state$/>\n </$button>\n\\end\n\\define toggle-visibility(filter,field)\n<$list filter=\"$filter$\" variable=\"toggle\">\n <div>\n <label class=\"tc-icon-wrapper\">\n <$macrocall $name=\"checkbox\" field=\"$field$\" state={{{ [is[current]list[!!$field$]match<toggle>then[]else[checked]] }}}/>\n <$tiddler tiddler=<<toggle>> >\n <$transclude tiddler={{!!icon}}/> <<toc-caption>>\n -- <i class=\"tc-muted\">\n <$link><$transclude field=\"description\"><$transclude field=\"title\"/></$transclude></$link>\n </i>\n </$tiddler>\n </label>\n </div>\n</$list>\n\\end\n\\define check-all()\n <<enable-autosave>>\n <$action-setmultiplefields $fields=\"[list[!!config-visibility]]\" $values=\" \"/>\n <$action-deletetiddler $filter=\"\"\"\n $:/tags/ViewToolbar $:/tags/PageControls $:/tags/SideBar $:/tags/SideBar/disabled +[tagging[]]\n [search:title[$:/config/ViewToolbarButtons]]\n [search:title[$:/config/PageControlButtons]]\n \"\"\"/>\n\\end\n\\define uncheck-all()\n <<enable-autosave>>\n <$action-setmultiplefields $fields=\"[list[!!config-visibility]]\" $values=\"\"\"\n [[$:/tags/PageControls]tagging[]format:titlelist[]join[ ]]\n [[$:/tags/ViewToolbar]tagging[]format:titlelist[]join[ ]]\n [subfilter[$:/tags/SideBar $:/tags/SideBar/disabled]tagging[]format:titlelist[]join[ ]]\n \"\"\"/>\n\\end\n\\define save-changes()\n <<StartupAction>>\n <$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n <$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n </$wikify>\n\\end\n\\define tabList() [[View toolbar]] [[Page controls]] [[Sidebar tabs]] [[Custom CSS]] [[Settings]]\n\\define tabViewToolbar()\n <p>\n Select which buttons can be displayed in read only mode.\n </p>\n <$macrocall $name=\"toggle-visibility\" filter=\"[[$:/tags/ViewToolbar]tagging[]]\" field=\"ViewToolbarButtons\"/>\n\\end\n\\define tabPageControls()\n <p>\n Select which buttons can be displayed in read only mode.\n </p>\n <$macrocall $name=\"toggle-visibility\" filter=\"[[$:/tags/PageControls]tagging[]]\" field=\"PageControlButtons\"/>\n\\end\n\\define tabSidebarTabs()\n <p>\n Select which tabs can be displayed in read only mode.\n </p>\n <$macrocall $name=\"toggle-visibility\" filter=\"$:/tags/SideBar $:/tags/SideBar/disabled +[tagging[]sort[]]\" field=\"SideBarSegments/tabs\"/>\n\\end\n\\define tabCustomCSS()\n <p>\n Write custom CSS rules to enable in read only mode.\n </p>\n <$edit-text field=\"ReadOnlyCSS\" tag=\"textarea\" class=\"tc-edit-texteditor full-width\"/>\n\\end\n\\define tabSettings()\n <p>\n <$button actions=<<uncheck-all>> >Hide all</$button>\n <$button actions=<<check-all>> >Reset</$button>\n <$button\n actions=<<save-changes>>\n tooltip={{$:/language/Buttons/SaveWiki/Hint}}\n aria-label={{$:/language/Buttons/SaveWiki/Caption}}\n class=\"tc-btn-invisible\">\n <span class=\"tc-dirty-indicator \">\n {{$:/core/images/save-button}} <$text text={{$:/language/Buttons/SaveWiki/Caption}}/>\n </span>\n </$button>\n </p>\n <p>Below is the filter used to trigger the read only.</p>\n <$edit-text field=\"ReadOnlyFilter\" tag=\"textarea\" class=\"tc-edit-texteditor full-width\"/>\n <p>\n <$radio field=\"override\" value=\"true\"> on</$radio>\n <$radio field=\"override\" value=\"false\"> off</$radio>\n <$radio field=\"override\" value=\"\"> auto</$radio>\n </p>\n <p>Read only is <$text text={{{ [subfilter{!!ReadOnlyFilter}match[true]then[on]else[off]] }}}/>.</p>\n\\end\n<$tiddler tiddler=\"$:/TiddlyTweaks/ReadOnly\">\n<!-- ACTIONS -->\n <<StartupAction>>\n<!-- END OF ACTIONS -->\n<!-- UI -->\n<$let stateTab=<<qualify $:/state/tab>> >\n <div class=\"tc-tab-set tc-vertical\">\n <div class=\"tc-tab-buttons tc-vertical\">\n <$list filter=<<tabList>> variable=\"currentTab\">\n <$button set=<<stateTab>> setTo=<<currentTab>> selectedClass=\"tc-tab-selected\"><<currentTab>></$button>\n </$list>\n </div>\n <div class=\"tc-tab-content tc-vertical\">\n <$let defaultTab={{{ [enlist<tabList>first[]] }}} >\n <$macrocall $name={{{ tab[<stateTab>get[text]else<defaultTab>titlecase[]]+[split[ ]join[]] }}}/>\n </$let>\n </div>\n </div>\n</$let>\n<!-- UI Style -->\n <style>\n textarea.tc-edit-texteditor.full-width{width:100%!important;}\n label.tc-icon-wrapper button.tc-btn-invisible{cursor: auto;}\n </style>\n<!-- END OF UI -->\n<blockquote>\nWARNING: The buttons are not properly turned on when turning off read only. For now, use the <$button actions=<<check-all>>>Reset</$button> button.\n</blockquote>\n</$tiddler>","modified":"20221002161339157","modifier":"Telumire","tags":"$:/tags/StartupAction $:/tags/Stylesheet $:/tags/ControlPanel/Appearance","type":"text/vnd.tiddlywiki","PageControlButtons":"$:/core/ui/Buttons/save-wiki $:/core/ui/Buttons/advanced-search $:/core/ui/Buttons/close-all $:/core/ui/Buttons/control-panel $:/core/ui/Buttons/encryption $:/core/ui/Buttons/export-page $:/core/ui/Buttons/fold-all $:/core/ui/Buttons/import $:/core/ui/Buttons/language $:/core/ui/Buttons/manager $:/core/ui/Buttons/more-page-actions $:/core/ui/Buttons/new-image $:/core/ui/Buttons/new-journal $:/core/ui/Buttons/new-tiddler $:/core/ui/Buttons/palette $:/core/ui/Buttons/print $:/core/ui/Buttons/refresh $:/core/ui/Buttons/storyview $:/core/ui/Buttons/tag-manager $:/core/ui/Buttons/theme $:/core/ui/Buttons/timestamp $:/core/ui/Buttons/unfold-all $:/core/ui/Buttons/permaview $:/core/ui/Buttons/full-screen","SideBarSegments/tabs":"$:/core/ui/SideBar/Open $:/core/ui/SideBar/Recent $:/core/ui/SideBar/Tools $:/core/ui/SideBar/More","ViewToolbarButtons":"$:/core/ui/Buttons/more-tiddler-actions $:/core/ui/Buttons/info $:/core/ui/Buttons/new-here $:/core/ui/Buttons/new-journal-here $:/core/ui/Buttons/clone $:/core/ui/Buttons/export-tiddler $:/core/ui/Buttons/edit $:/core/ui/Buttons/delete $:/core/ui/Buttons/permalink $:/core/ui/Buttons/permaview $:/core/ui/Buttons/open-window $:/core/ui/Buttons/close-others $:/core/ui/Buttons/fold-others $:/core/ui/Buttons/fold $:/core/ui/Buttons/fold-bar","config-visibility":"PageControlButtons ViewToolbarButtons SideBarSegments/tabs","ReadOnlyCSS":".tc-sidebar-search [aria-label=\"{{$:/language/Buttons/AdvancedSearch/Caption}}\"]{ \ndisplay:none;\n}","caption":"Read Only","revision":"0","bag":"default","list-after":"","ReadOnlyFilter":"[[TiddlyWiki Safe Mode]is[tiddler]]\n[{$:/status/IsLoggedIn}match[yes]]\n[{$:/info/url/protocol}match[file:]]\n[{$:/info/url/hostname}match[localhost]]\n+[!is[blank]limit[1]then[false]else[true]]\n:map[<..currentTiddler>get[override]!is[blank]else<currentTiddler>]","override":"false"}]