- Početna
- Radni prostor
- Razvoj
- Dodavanje prilagođenih modula
Dodavanje prilagođenih modula
Uvod
Ako želite da kreirate sopstvene module za ONLYOFFICE i dodate ih u ONLYOFFICE Workspace, sada to možete lako učiniti. Primer projekta je dostupan ovde: https://github.com/ONLYOFFICE/CommunityServer/tree/master/web/studio/ASC.Web.Studio/Products/Sample
Možete modifikovati ovaj primer ili kreirati novi prilagođeni modul na njegovoj osnovi. Uverite se da su svi potrebni komponenti dostupni u navedenim folderima i da su određene linije koda dodate u navedene fajlove kako je opisano u nastavku.
Kako funkcioniše
- Preuzmite ONLYOFFICE Community Server sa https://github.com/ONLYOFFICE/CommunityServer
- Projekat
Sampleje dostupan u folderuProductsovde:https://github.com/ONLYOFFICE/CommunityServer/tree/master/web/studio/ASC.Web.Studio/Products
ASC.Api.Sampleje dostupan u folderuASC.Apiovde:https://github.com/ONLYOFFICE/CommunityServer/tree/master/module/ASC.Api
- Sledeće linije koda su dodate u fajl https://github.com/ONLYOFFICE/CommunityServer/blob/master/build/msbuild/build.proj:
<!-- Sample --> <ProjectToBuild Include="$(ASCDir)web\studio\ASC.Web.Studio\Products\Sample\ASC.Web.Sample.csproj"/>i
<ProjectToBuild Include="$(ASCDir)module\ASC.Api\ASC.Api.Sample\ASC.Api.Sample.csproj"/>Možete pogledati i druge postojeće projekte da biste saznali gde treba dodati ove linije.
Napomena! Redosled unosa linija je veoma važan. ASC.Api.Sample.SampleApije dodan u fajlweb\studio\ASC.Web.Studio\web.autofac.configna sledeći način:<component type="ASC.Api.Sample.SampleApi, ASC.Api.Sample" service="ASC.Api.Interfaces.IApiEntryPoint, ASC.Api" name="sample"/>- Fajl
Build.batmože se pokrenuti ovde:https://github.com/ONLYOFFICE/CommunityServer/blob/master/build/Build.bat
Kako kreirati sopstveni modul za ONLYOFFICE
- Kreirajte ASP.NET Web Application (ASC.Web.Sample) projekat i postavite ga u folder
...web\studio\ASC.Web.Studio\Products\Sample.VAŽNO!!! Ime izlaznog dll fajla mora biti "ASC.Web.*.dll". - Povežite potrebne reference iz
...\web\studio\ASC.Web.Studio\bin\:ASC.Common.dll ASC.Core.Common.dll ASC.Data.Storage.dll ASC.Web.Core.dll ASC.Web.Studio.dll - Implementirajte interfejs
IProductu fajluProductEntryPoint.cs.VAŽNO!!! ProductID mora biti jedinstveni Guid (u VS2012 se generiše kaoTOOLS->GUID->New GUID) - Dodajte sledeće linije u fajl
AssemblyInfo.cs:[assembly: Product(typeof(ASC.Web.Sample.Configuration.ProductEntryPoint))] - Nasledite Master iz
web\studio\ASC.Web.Studio\Masters\BaseTemplate.master - Podesite putanju izlaza u svojstvima projekta ovako:
<OutputPath>..\..\bin\</OutputPath>tako da se buildovi kreiraju u folderu
web\studio\ASC.Web.Studio\bin. - Projekat se može izgraditi ručno ili korišćenjem buildera. Za ovo drugo dodajte sledeće linije u fajl
build\msbuild\build.proj:<ProjectToBuild Include="$(ASCDir)web\studio\ASC.Web.Studio\Products\Sample\ASC.Web.Sample.csproj"/>i pokrenite fajl
build\Build.bat. - Nakon izgradnje, pokrenite vebsajt na adresi
localhost:port, idite na stranicu Podešavanja "Modules & Tools" (http://localhost:port/management.aspx?type=2) i omogućite novi Sample modul. Biće dostupan u padajućem meniju zaglavlja portala ili korišćenjem direktnog linka: http://localhost:port/products/sample/default.aspx
Sada možete kreirati API za svoj modul prateći ove instrukcije.