Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mahara
mahara
Commits
1acedbc0
Commit
1acedbc0
authored
Dec 19, 2006
by
Richard Mansfield
Browse files
Allow caller to modify the behaviour of the file browser buttons
parent
f007fa6a
Changes
1
Show whitespace changes
Inline
Side-by-side
htdocs/artefact/file/js/filebrowser.js
View file @
1acedbc0
var
changedir
=
function
()
{};
function
FileBrowser
(
element
,
source
,
changedircallback
)
{
function
FileBrowser
(
element
,
source
,
changedircallback
,
actionname
,
actioncallback
)
{
var
self
=
this
;
this
.
element
=
element
;
this
.
source
=
source
;
this
.
pathids
=
{
'
/
'
:
null
};
this
.
cwd
=
'
/
'
;
if
(
typeof
(
changedircallback
)
==
'
function
'
)
{
this
.
changedircallback
=
changedircallback
;
this
.
changedircallback
=
(
typeof
(
changedircallback
)
==
'
function
'
)
?
changedircallback
:
function
()
{};
this
.
actioncallback
=
(
typeof
(
actioncallback
)
==
'
function
'
)
?
actioncallback
:
function
()
{};
this
.
actionname
=
actionname
;
this
.
canmodify
=
!
actionname
;
this
.
filenames
=
{};
if
(
this
.
actionname
)
{
this
.
lastcolumnfunc
=
function
(
r
)
{
var
button
=
INPUT
({
'
type
'
:
'
button
'
,
'
value
'
:
get_string
(
self
.
actionname
)});
button
.
onclick
=
function
()
{
self
.
actioncallback
(
r
)
};
return
TD
(
null
,
button
);
}
}
else
{
this
.
changedircallback
=
function
()
{};
this
.
lastcolumnfunc
=
function
(
r
)
{
var
editb
=
INPUT
({
'
type
'
:
'
button
'
,
'
value
'
:
get_string
(
'
edit
'
)});
editb
.
onclick
=
function
()
{
self
.
openeditform
(
r
);
};
if
(
r
.
emptyfolder
)
{
return
TD
(
null
,
editb
);
}
var
deleteb
=
INPUT
({
'
type
'
:
'
button
'
,
'
value
'
:
get_string
(
'
delete
'
)});
deleteb
.
onclick
=
function
()
{
if
(
confirm
(
get_string
(
r
.
artefacttype
==
'
folder
'
?
'
deletefolder?
'
:
'
deletefile?
'
)))
{
sendjsonrequest
(
'
delete.json.php
'
,
{
'
id
'
:
r
.
id
},
self
.
refresh
);
}
};
return
TD
(
null
,
editb
,
deleteb
);
}
}
this
.
filenames
=
{};
this
.
init
=
function
()
{
if
(
self
.
canmodify
)
{
// Create the button which opens up the create folder form
var
button
=
INPUT
({
'
type
'
:
'
button
'
,
'
value
'
:
get_string
(
'
createfolder
'
),
'
onclick
'
:
function
()
{
hideElement
(
self
.
createfolderbutton
);
...
...
@@ -24,10 +47,13 @@ function FileBrowser(element, source, changedircallback) {
self
.
createfolderbutton
=
button
;
self
.
createfolderform
=
self
.
initcreatefolderform
();
insertSiblingNodesBefore
(
self
.
element
,
self
.
createfolderbutton
,
self
.
createfolderform
);
}
// Folder navigation links
insertSiblingNodesBefore
(
self
.
element
,
DIV
({
'
id
'
:
'
foldernav
'
}));
//self.lastcolumnfunc = self.actionname ? self.getfileinfo : self.editdelete;
self
.
filelist
=
new
TableRenderer
(
self
.
element
,
self
.
source
,
...
...
@@ -38,7 +64,7 @@ function FileBrowser(element, source, changedircallback) {
'
mtime
'
,
// @todo this function should be changed for when we
// are using the browser to attach files
self
.
editdelete
self
.
lastcolumnfunc
]
);
self
.
filelist
.
emptycontent
=
get_string
(
'
nofilesfound
'
);
...
...
@@ -52,20 +78,6 @@ function FileBrowser(element, source, changedircallback) {
this
.
refresh
=
function
()
{
self
.
changedir
(
self
.
cwd
);
};
this
.
editdelete
=
function
(
r
)
{
var
editb
=
INPUT
({
'
type
'
:
'
button
'
,
'
value
'
:
get_string
(
'
edit
'
)});
editb
.
onclick
=
function
()
{
self
.
openeditform
(
r
);
};
if
(
r
.
emptyfolder
)
{
return
TD
(
null
,
editb
);
}
var
deleteb
=
INPUT
({
'
type
'
:
'
button
'
,
'
value
'
:
get_string
(
'
delete
'
)});
deleteb
.
onclick
=
function
()
{
if
(
confirm
(
get_string
(
r
.
artefacttype
==
'
folder
'
?
'
deletefolder?
'
:
'
deletefile?
'
)))
{
sendjsonrequest
(
'
delete.json.php
'
,
{
'
id
'
:
r
.
id
},
self
.
refresh
);
}
};
return
TD
(
null
,
editb
,
deleteb
);
}
this
.
savemetadata
=
function
(
fileid
,
formid
,
replacefile
,
originalname
)
{
var
name
=
$
(
formid
).
name
.
value
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment