Virtuelna Multimedijalna Biblioteka

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 16

http://www.maturski.

org

Projektni zadatak
Virtuelna multimedijalna biblioteka

Namjena multimedijalne biblioteke je arhiviranje nekoliko vrsta datoteka,tanije


tekstualnih,zvunih,video datoteka kao I slika.Datoteke se mogu dodati sa
lokalnog diska,a tekstualne datoteke I sa web stranice.Datoteke se smijetaju
unutar trenutnog direktorijuma u kojem se nalazi Macromedia Director.Potrebno
je unutar tog foldera kreirati sljedee
foldere:/sound,/text,/webtext,/video./soundplaylist,/image.
Poetni ekran aplikacije je dat na sljedeoj slici.

Odabirom opcije Upload korisniku je omogueno da dodaje datoteke sa lokalnog diska


ili ,eventualno, interneta.
Primjer upload-a tekstualnog fajla je dat na sljedeoj slici:

Aktivacijom dugmeta Select file otvara se dijalog za izbor datoteke.Takoe je neophodno


unijeti naziv pod kojim e datoteka biti sauvana.Ukoliko su parametri uneseni,klikom na
dugme Upload datoteka se pamti na sljedei nain:ukoliko je npr. datoteka
tekstualna,unutar unaprijed kreiranog foldera text koji se nalazi unutar instalacionog
foldera Directora(npr. C:\Director MX 2004\text),se kreira nova datoteka koja nosi ime
fajla koji dodajemo,i iji je sadraj string koji specifikuje adresu sa koje je dodana
datoteka.
Lingo skript za Select file:
onmouseUpme

fajl=newxtra("fileio")
fajl.setFilterMask("Text")
rezultat=fajl.displayOpen()
ifrezultat=EMPTYTHEN
alert"Izaberitedatoteku!"
else
member("lokacijatextlocal").text=string(rezultat)
updateStage
endif
end

Lingo skript za Upload file:

globallokacija
onmouseUpme
fajl1=newxtra("fileio")

putanja=member("lokacijatextlocal").text
imeFajla=member("tekstimeizbor").text
ifputanja=EMPTYTHEN
alert("Unesiteputanjudodatogfajla!")
elseifimeFajla=EMPTYTHEN
alert"Izaberiteimepodkojimcedatotekabitisacuvana!"

else
lokacija=string(_player.applicationPath&"text\")
fajl1.openFile(putanja,0)

fajl2=newxtra("fileio")

fajl2.createFile(string(lokacija&string(imeFajla)))
fajl2.openFile(string(lokacija&string(imeFajla)),0)
fajl2.writeString(putanja)

alert"Uploaduspjesan!"
endif
end

Izborom opcije Search sa poetne strane mogue je pretraiti biblioteku prema tipu i
imenu datoteke.Izgled ekrana za pretragu dat je na slijedeoj slici:

Na primjer,ako pretraujemo tekstualne datoteke klikom na dugme Pretrai tekstualne


datoteke pokrece se skript:
globaltipDatoteke
onmouseUpme

fileList=[]
fileListWeb=[]
wantedList=[]
wantedListWeb=[]
uzorak=member("uzorakpotipu").text
ifuzorak=EMPTYTHEN
ALERT"Unesitekljucnurijecpretrage!"
else
repeatwithi=1to1000

n=getNthFileNameInFolder(string(_player.applicationPath&
"text\"),i)
spisakimenaufolderuukojemsusmjestenedatoteke
ifn=EMPTYthenexitrepeat
fileList.add(n)
endrepeat
duzina=fileList.count()
repeatwithj=1toduzina
linija=fileList.getAt(j)

iflinijacontainsuzorakthenprovjeradaliimedatotekesadrzi
uzorakpokojempretrazujemo
wantedList.add(string(linija))akosadrzidodajemoimedatoteke
ulistupronadjenihdatoteka

endif
endrepeat
tekst1=""

REPEATwithk=1towantedList.count()
clan=wantedList.getAt(k)
member("rezultatpretrage").line[k]=string(clan)utekstualno
poljenaslijedecojstranidodajemolinijesarezultatimapretrage

endrepeat
repeatwithk=1to1000
m=getNthFileNameInFolder(string(_player.applicationPath&
"webtext\"),k)spretragadatotekaprikljucenihsaweba,slicnokao
gore
ifm=EMPTYthenexitrepeat
fileListWeb.add(m)
endrepeat
duzinaWeb=fileListWeb.count()
repeatwithp=1toduzinaWeb
linijaWeb=fileListWeb.getAt(p)
iflinijaWebcontainsuzorakthen
wantedListWeb.add(string(linijaWeb))

endif
endrepeat

REPEATwithm=1towantedListWeb.count()
clanWeb=wantedListWeb.getAt(m)
member("rezultatwebpretrage").line[m]=string(clanWeb)

endrepeat

updateStage
tipDatoteke="text"globalnapromjenljivakojaspecifikujetip
datotekakojetrazimo.Upotrebljivprilikomreprodukcijedatihdatoteka.
_movie.go(81)
endif

end

Slijedei ekran prikazuje rezultate pretrage:

Klikom na dugme Play selected files dolazimo do ekrana na kojme je mogue pokrenuti
selektovanu datoteku.Utvrdjujemo koja je datoteka selektovana tako to polju sa
rezultatima pridruimo skript:
globallineText1
globalizvortext
globalizvorsound
globalizvorvideo
onmouseUpme
pointClicked=_mouse.mouseLocmjestoupoljunakojejeklikmuto
misem
currentMember=sprite(5).member
lineNum=sprite(5).pointToLine(pointClicked)rednibrojlinije
tekstakojajekliknuta
lineText1=currentMember.line[lineNum]tekstsatelinije
izvortext="local"
izvorsound="local"
izvorvideo="local"tipdatoteke:lokalnailiweb

end

Dugmetu Play Selected files je pridruen skript:


globaltipDatoteke
globallineText1imeselektovanedatotekeizpoljasarezultatima
onmouseUpme
iflineText1=EMPTYthen
alert"Izaberitedatoteku!"


elseiftipDatoteke="text"then
member("texttrenutniclan").text=string(lineText1)
_movie.go(101)
navigacijadofrejmaukojemsenalaziplayerzaodredjenuvrstu
datoteka
elseiftipDatoteke="video"then
member("videotrenutniclan").text=string(lineText1)
_movie.go(106)
elseiftipDatoteke="sound"then
member("zvuktrenutniclanime").text=string(lineText1)
_movie.go(111)
elseiftipDatoteke="image"then
member("nazivslike").text=string(lineText1)
_MOVIE.GO(131)
endif

Playeri:
Sound player:

Skript za Play dugme:


globalizvorsounddefinisanaranije,specifikacijadalijefajllokalni
ilisaweba
onmouseUpme
member("mutezvuk").text="MUTEDISABLED"podafaultumutejeiskljucen
zvukClan=_movie.newMember(#sound)
SOUND(1).VOLUME=250defaultvolume
odrediste=member("zvuktrenutniclanime").text

ifodrediste=EMPTYTHEN
ALERT"IZABERITENEKUDATOTEKU!"
elseifizvorsound="web"thenzadatotekusaweba
fajl2=newxtra("fileio")
fajl2.openFile(string(_player.applicationPath&"websound\"&
string(odrediste)),0)otvarasefajlkojinosiimedatoteke
adresa=fajl2.readLine()citaseadresasaojejefajluploadovan
fajl2.closeFile()
setmynetid=preloadNetThing(string(adresa))
downLoadNetThing("http://"&string(adresa),theapplicationPath&
string(odrediste))
sound(1).volume=250
sound(1).playFile(string(theapplicationPath&string(odrediste)))

elseifizvorsound="local"thenzalokalnudatoteku
fajl3=newxtra("fileio")

fajl3.openFile(string(_player.applicationPath&"sound\"&
string(odrediste)),0)
adresa2=fajl3.readLine()
fajl3.closeFile()
sound(1).volume=250
sound(1).playFile(string(adresa2))koristisemetodaplayFile()
zvucnogkanala

endif
END

Skript za Volume up dugme:


onmouseUpme
jacinaZvuka=sound(1).volume
ifjacinaZvuka<1000then
jacinaZvuka=jacinaZvuka+100
sound(1).volume=jacinaZvuka
endif
end

Reprodukcija video datoteka:

Skript za play dugme:


globalizvorvideo
globalobjWindow
globalvideoClan
onmouseUpme
MEMBER("VIDEO").fileName=EMPTY
member("loop").text="LOOPDISABLED"
updateStage
member("video").stop()
member("video").audio=truereprodukcijazvukajeomogucena

odrediste=member("videotrenutniclan").text
ifodrediste=EMPTYTHEN
ALERT"IZABERITENEKUDATOTEKU!"

elseifizvorvideo="local"then
fajl3=newxtra("fileio")

fajl3.openFile(string(_player.applicationPath&"video\"&
string(odrediste)),0)

adresa2=fajl3.readLine()ocitavanjeadresenakojojsenalazi
datoteka
fajl3.closeFile()
member("video").fileName=string(adresa2)fajlsaadresese
pridruzujewindowsmediacastmemberu'video'

endif
END

Skript za Loop disabled/enabled dugme:


onmouseUpme
ifmember("poljeloop").text="LOOPENABLED"then
member("poljeloop").text="LOOPDISABLED"
member("video").loop=FALSE
elseifmember("poljeloop").text="LOOPDISABLED"then
member("poljeloop").text="LOOPENABLED"
member("video").loop=TRUE

endif
end

Preglednik slika:

Skript za dugme Pregledaj:


onmouseUpme

odrediste=member("nazivslike").text
ifodrediste=EMPTYTHEN
ALERT"IZABERITENEKUDATOTEKU!"

else
fajl3=newxtra("fileio")

fajl3.openFile(string(_player.applicationPath&"image\"&
string(odrediste)),0)
adresa2=fajl3.readLine()

fajl3.closeFile()
fajl33=newxtra("fileio")
member("bmp1").fileName=string(adresa2)datotekasanavedeneadrese
jepridruzenabitmapcastmemberu'bmp1'
updateStage

endif
end

Preglednik teksta:

Skript za dugme Pregledaj(tekst):


globaltheNetId
globalizvortext
onmouseUpme

odrediste=member("texttrenutniclan").text
ifodrediste=EMPTYTHEN

ALERT"IZABERITENEKUDATOTEKU!"
elseifizvortext="web"thenzawebdatoteke
fajl2=newxtra("fileio")
fajl2.openFile(string(_player.applicationPath&"webtext\"&
string(odrediste)),0)
adresa=fajl2.readLine()
fajl2.closeFile()
theNetID=getNetText(string(adresa))

elseifizvortext="local"thenlokalnifajlovi
fajl3=newxtra("fileio")

fajl3.openFile(string(_player.applicationPath&"text\"&
string(odrediste)),0)
adresa2=fajl3.readLine()ocitavanjeadresesakojejedodanfajlu
biblioteku

fajl3.closeFile()
fajl33=newxtra("fileio")otvaranjefajlasaadrese
fajl33.openFile(string(adresa2),0)
sadrzaj=fajl33.readLine()citanjesadrzaja.txtdatoteke
fajl33.closeFile()
member("ispistextpregleda").text=string(sadrzaj)
updateStage

endif
END

Provjera uspjenosti pribavljanja teksta iz datoteke locirane na web adresi,se vri


tako to se u 1 frejm smijesti skript:
globaltheNetID
onexitFrameme

ifnetDone(theNetID)then
member("ispistextpregleda").text=netTextResult(theNetID)
endif
end

Odabirom opcije Sound playlist korisniku je omogueno kreiranje listi zvunih


datoteka,kao i popunjavanje datih listi datotekama po izboru.

Dugmetu za prikaz listi pridruen je sprajt:


globaltipDatoteke
onmouseUpme

fileList=[]novalistafajlovakojisenalazeufolderu
/soundplaylist

repeatwithi=1to1000

n=getNthFileNameInFolder(string(_player.applicationPath&
"soundplaylist\"),i)
ifn=EMPTYthenexitrepeat
fileList.add(n)
endrepeat
duzina=fileList.count()
repeatwithj=1toduzina
linija=fileList.getAt(j)
member("playlistlista").line[j]=string(linija)ispispostojecih
listi

endrepeat
END

Dugmetu za dodavanje zvune datoteke u izabranu listu pridruen je sprajt:


globalplaylist1
onmouseUpme
ifmember("selectedsoundfile").text=EMPTYTHEN
ALERT"Trebateizabratidatoteku!"

elseifmember("playlistpolje").text=EMPTYthen
alert"Trebateizabratilistuzvucnihdatoteka!"provjeredalije
korisnikizabraozvucnudatotekukojudodajetelistudatotekaukojuce
jedodati
else

fajl1=newxtra("fileio")

imeFajla=member("selectedsoundFile").text
imeListe=member("playlistpolje").text

lokacija=string(_player.applicationPath&"soundplaylist\")
fajl1.openFile((string(lokacija)&string(imeListe)),0)
playlist1=propList()

setaPropplaylist1,string(imeFajla),string(imeListe)propertylista
saimenimadatoteka,kojimajepridruzenalistaukojojsenalaze.Uovom
slucajuimeFajlajeproperty.Ukolikovecpostoji,pridruzujemuseime
noveListe,aukolikonepostojikreirasenoviproperty

fajl1.writeString(string(imeFajla))upisivanjeimenadatotekeu
fajlsaimenomlistejeostavljeno,medjutimneefikasnozbognemogucnosti
kreiranjanovihredova,stodovodidozamjeneprethodnogfajlanovim,te
selistaustvarisastojiodsamo1fajla.

fajl1.closeFile()
alert"Dodavanjedatotekeuspjesno"
endif
end

Aktivacijom opcije Dodaj novu listu otvara se sljedei ekran:

Dugmetu Dodaj je pridruen skript:


globalpotvrda
onmouseUpme
imeListe=member("imeliste").textimelistekojudodajemo
potvrda="moze"specifikacijadalinavedenalistavecpostoji
fileList=[]
repeatwithi=1to100
n=getNthFileNameInFolder(themoviePath,i)
ifn=EMPTYthenexitrepeat
fileList.append(n)
endrepeat
repeatwithj=1tofileList.count
iffileList.getAt(j)=imeListethen
potvrda="nemoze"
endif
endrepeat
ifmember("imeliste").text=EMPTYthenukolikonijeunesenoimenove
liste
alert"Unesitenazivlistekojuzelitekreirati!"
elseifpotvrda="nemoze"then
alert"Listasanavedenimimenomvecpostoji!"

elseifpotvrda="moze"thenukolikonepostojilistasanavedenim
imenom

fajl1=newxtra("fileio")
lokacija=string(_player.applicationPath&"soundplaylist\")

fajl1.createFile(string(lokacija)&string(imeListe))kreiramo
datotekusaimenomlisteukojucesekasnijeupisivatireferencena
zvucnedatoteke

fajl1.closeFile()
k=member("spisaklista").lineCount
l=k+1
member("spisaklista").line[l]=string(imeListe)
upoljeukomsunavedenepostojecelistedodajemonovokreiranu
listu

endif
end

Napomena:Zbog nedostatka prostora prikazani su samo odredjeni


skriptovi,primjerci nekih navigacionih prozora,te njihova primjena.

You might also like