|
@@ -27,6 +27,9 @@ type ListGenerator struct {
|
|
|
Config *config.ConfigT
|
|
|
|
|
|
JobID uint
|
|
|
+
|
|
|
+ ncClient *cloud.Client
|
|
|
+ kaClient *karmen_client.Client
|
|
|
}
|
|
|
|
|
|
var funcMap template.FuncMap = template.FuncMap{
|
|
@@ -36,18 +39,25 @@ var funcMap template.FuncMap = template.FuncMap{
|
|
|
"nbsp": nbsp,
|
|
|
}
|
|
|
|
|
|
-func (generator *ListGenerator) prepareRemoteFolder() {
|
|
|
- files, err := filepath.Glob("!*.go")
|
|
|
+func (generator *ListGenerator) generate(outputPath string, teachers []*orm.Teacher, funcMap template.FuncMap) {
|
|
|
+ filename := filepath.Join(outputPath, "elenco_docenti")
|
|
|
+
|
|
|
+ tplContent, err := generator.ncClient.Download("Karmen/list/list.tpl.md")
|
|
|
if err != nil {
|
|
|
- log.Println(err)
|
|
|
+ panic(err)
|
|
|
}
|
|
|
- log.Println(files)
|
|
|
-}
|
|
|
|
|
|
-func (generator *ListGenerator) generate(outputPath string, teachers []*orm.Teacher, funcMap template.FuncMap) {
|
|
|
- filename := filepath.Join(outputPath, "elenco_docenti")
|
|
|
- // tplContent, err := ncClient.Download("")
|
|
|
- tpl, err := tpl_util.LoadTextTemplate("./generator/generators/list/list.tpl.md", funcMap)
|
|
|
+ refContent, err := generator.ncClient.Download("Karmen/list/reference.odt")
|
|
|
+ if err != nil {
|
|
|
+ panic(err)
|
|
|
+ }
|
|
|
+
|
|
|
+ err = ioutil.WriteFile(filepath.Join(outputPath, "reference.odt"), refContent, 0777)
|
|
|
+ if err != nil {
|
|
|
+ panic(err)
|
|
|
+ }
|
|
|
+
|
|
|
+ tpl, err := tpl_util.LoadTextTemplateFromString(string(tplContent), funcMap)
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
@@ -67,7 +77,7 @@ func (generator *ListGenerator) generate(outputPath string, teachers []*orm.Teac
|
|
|
|
|
|
log.Println("Generate", odtFilename)
|
|
|
|
|
|
- if err := pandoc.Convert(filename+".md", odtFilename, "--data-dir", "./generator/generators/list/"); err != nil {
|
|
|
+ if err := pandoc.Convert(filename+".md", odtFilename, "--data-dir", outputPath); err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
|
|
|
@@ -140,7 +150,9 @@ func (generator *ListGenerator) SetJobId(id uint) {
|
|
|
}
|
|
|
|
|
|
func (generator *ListGenerator) Run() {
|
|
|
- ncClient, err := cloud.Dial(
|
|
|
+ var err error
|
|
|
+
|
|
|
+ generator.ncClient, err = cloud.Dial(
|
|
|
generator.Config.Cloud.Url,
|
|
|
generator.Config.Cloud.Username,
|
|
|
generator.Config.Cloud.Password,
|
|
@@ -150,7 +162,7 @@ func (generator *ListGenerator) Run() {
|
|
|
}
|
|
|
|
|
|
log.Printf("Connecting to karmen...")
|
|
|
- client, err := karmen_client.Dial(
|
|
|
+ generator.kaClient, err = karmen_client.Dial(
|
|
|
generator.Config.Url,
|
|
|
generator.Config.Admin.Username,
|
|
|
generator.Config.Admin.Password,
|
|
@@ -162,19 +174,19 @@ func (generator *ListGenerator) Run() {
|
|
|
var job *orm.Job
|
|
|
|
|
|
if generator.JobID > 0 {
|
|
|
- job, err := client.GetJob(generator.JobID)
|
|
|
+ job, err = generator.kaClient.GetJob(generator.JobID)
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
|
|
|
|
job.Start = time.Now()
|
|
|
- err = client.UpdateJob(job)
|
|
|
+ err = generator.kaClient.UpdateJob(job)
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- teachers, err := client.GetTeachers()
|
|
|
+ teachers, err := generator.kaClient.GetTeachers()
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
@@ -198,7 +210,7 @@ func (generator *ListGenerator) Run() {
|
|
|
|
|
|
job.Files = append(job.Files, &orm.File{Path: "elenco_docenti.pdf"})
|
|
|
|
|
|
- err = client.UpdateJob(job)
|
|
|
+ err = generator.kaClient.UpdateJob(job)
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
@@ -209,7 +221,7 @@ func (generator *ListGenerator) Run() {
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
|
- err = ncClient.Upload(src, "Documents/elenco_docenti.pdf")
|
|
|
+ err = generator.ncClient.Upload(src, "Documents/elenco_docenti.pdf")
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|