Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F390751
page_browser.js
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
page_browser.js
View Options
/**
* modules/page_browser/page_browser.js
* Page browser frontend code
*
* Copyright Gottfried Haider, Danja Vasiliev 2010.
* This source code is licensed under the GNU General Public License.
* See the file COPYING for more details.
*/
$
(
document
).
ready
(
function
()
{
var
span
=
false
;
$
(
'.page_browser_entry'
).
bind
(
'mouseenter'
,
function
(
e
)
{
if
(
span
)
{
$
(
span
).
remove
();
}
var
html
=
'<span>'
;
html
+=
'<a href="'
+
$
.
glue
.
base_url
+
'?'
+
$
(
this
).
attr
(
'id'
)
+
'/edit">edit</a> '
;
html
+=
'<a href="#" class="page_browser_rename">rename</a> '
;
html
+=
'<a href="#" class="page_browser_delete">delete</a> '
;
if
(
$
(
this
).
attr
(
'id'
)
+
'.head'
!=
$
.
glue
.
conf
.
page
.
startpage
)
{
html
+=
'<a href="#" class="page_browser_set_startpage">as startpage</a> '
;
}
html
+=
'</span>'
;
span
=
$
(
html
);
$
(
this
).
append
(
span
);
});
$
(
'.page_browser_entry'
).
bind
(
'mouseleave'
,
function
(
e
)
{
if
(
span
)
{
$
(
span
).
remove
();
span
=
false
;
}
});
$
(
'.page_browser_rename'
).
live
(
'click'
,
function
(
e
)
{
var
entry
=
$
(
this
).
parents
(
'.page_browser_entry'
);
var
old
=
$
(
entry
).
attr
(
'id'
);
var
pn
=
prompt
(
'Change the page URL'
,
old
);
if
(
pn
!=
null
&&
pn
!=
old
)
{
$
.
glue
.
backend
({
method
:
'glue.rename_page'
,
'old'
:
old
,
'new'
:
pn
},
function
(
data
)
{
$
(
entry
).
attr
(
'id'
,
pn
);
$
(
entry
).
children
(
'.page_browser_pagename'
).
html
(
'<a href="'
+
$
.
glue
.
base_url
+
'?'
+
pn
+
'">'
+
pn
+
'</a>'
);
});
}
return
false
;
});
$
(
'.page_browser_delete'
).
live
(
'click'
,
function
(
e
)
{
var
entry
=
$
(
this
).
parents
(
'.page_browser_entry'
);
var
pn
=
$
(
entry
).
attr
(
'id'
);
if
(
confirm
(
'Really delete page '
+
pn
+
'?'
))
{
// get all revisions
var
pages
=
[];
$
.
glue
.
backend
({
method
:
'glue.revisions'
,
pagename
:
pn
},
function
(
data
)
{
for
(
var
rev
in
data
)
{
pages
.
push
(
pn
+
'.'
+
data
[
rev
]);
}
// and delete them
for
(
var
page
in
pages
)
{
// DEBUG
//console.log('deleting '+pages[page]);
$
.
glue
.
backend
({
method
:
'glue.delete_page'
,
'page'
:
pages
[
page
]
});
}
// TODO (later): check if all revisions were indeed deleted
// remove entry
$
(
entry
).
hide
(
'fast'
,
function
()
{
$
(
this
).
remove
();
});
});
}
return
false
;
});
$
(
'.page_browser_set_startpage'
).
live
(
'click'
,
function
(
e
)
{
var
entry
=
$
(
this
).
parents
(
'.page_browser_entry'
);
var
pn
=
$
(
entry
).
attr
(
'id'
);
$
.
glue
.
backend
({
method
:
'glue.set_startpage'
,
page
:
pn
+
'.head'
},
function
(
data
)
{
$
(
'#page_browser_startpage'
).
remove
();
$
(
entry
).
children
(
'.page_browser_pagename'
).
after
(
' <span id="page_browser_startpage">the start page</span>'
);
$
.
glue
.
conf
.
page
.
startpage
=
pn
+
'.head'
;
if
(
span
)
{
$
(
entry
).
trigger
(
'mouseenter'
);
}
});
});
});
File Metadata
Details
Attached
Mime Type
text/html
Expires
Sat, Feb 22, 15:27 (1 h, 5 m ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23362
Default Alt Text
page_browser.js (2 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment