diff options
Diffstat (limited to 'views/default/scripts/initialize_elgg.php')
-rw-r--r-- | views/default/scripts/initialize_elgg.php | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/views/default/scripts/initialize_elgg.php b/views/default/scripts/initialize_elgg.php new file mode 100644 index 000000000..03d5adc5a --- /dev/null +++ b/views/default/scripts/initialize_elgg.php @@ -0,0 +1,45 @@ +<?php +/** + * + */ + +?> +<script type="text/javascript"> +/** + * Don't want to cache these -- they could change for every request + */ +elgg.config.lastcache = <?php echo (int)($vars['config']->lastcache); ?>; + +elgg.security.token.__elgg_ts = <?php echo $ts = time(); ?>; +elgg.security.token.__elgg_token = '<?php echo generate_action_token($ts); ?>'; + +<?php +$page_owner = elgg_get_page_owner(); + +if ($page_owner instanceof ElggEntity) { + $page_owner_json = array(); + foreach ($page_owner->getExportableValues() as $v) { + $page_owner_json[$v] = $page_owner->$v; + } + + $page_owner_json['subtype'] = $page_owner->getSubtype(); + $page_owner_json['url'] = $page_owner->getURL(); + + echo 'elgg.page_owner = '.json_encode($page_owner_json).';'; +} + +$user = get_loggedin_user(); + +if ($user instanceof ElggUser) { + $user_json = array(); + foreach ($user->getExportableValues() as $v) { + $user_json[$v] = $user->$v; + } + + $user_json['subtype'] = $user->getSubtype(); + $user_json['url'] = $user->getURL(); + + echo 'elgg.session.user = new elgg.ElggUser('.json_encode($user_json).');'; +} +?>; +</script>
\ No newline at end of file |