From c390d12dd27e69a256a23e563819edb614919d98 Mon Sep 17 00:00:00 2001
From: life <lifephp@gmail.com>
Date: Thu, 2 Apr 2015 13:58:02 +0800
Subject: [PATCH] update controller

---
 app/controllers/NoteController.go | 201 ------------------------------
 conf/routes                       |   2 -
 2 files changed, 203 deletions(-)

diff --git a/app/controllers/NoteController.go b/app/controllers/NoteController.go
index 94d1c09..4f504bc 100644
--- a/app/controllers/NoteController.go
+++ b/app/controllers/NoteController.go
@@ -6,7 +6,6 @@ import (
 	"gopkg.in/mgo.v2/bson"
 	. "github.com/leanote/leanote/app/lea"
 	"github.com/leanote/leanote/app/info"
-	"os/exec"
 	"strings"
 //	"time"
 //	"github.com/leanote/leanote/app/types"
@@ -292,206 +291,6 @@ func (c Note) SearchNoteByTags(tags []string) revel.Result {
 	return c.RenderJson(blogs)
 }
 
-//------------------
-// html2image
-// 判断是否有权限生成
-// 博客也可以调用
-// 这是脚本调用, 没有cookie, 不执行权限控制, 通过传来的appKey判断
-func (c Note) ToImage(noteId, appKey string) revel.Result {
-	// 虽然传了cookie但是这里还是不能得到userId, 所以还是通过appKey来验证之
-	/*
-	appKeyTrue, _ := revel.Config.String("app.secret")
-	if appKeyTrue != appKey {
-		 return c.RenderText("")
-	}
-	*/
-	note := noteService.GetNoteById(noteId)
-	if note.NoteId == "" {
-		return c.RenderText("")
-	}
-	
-	c.SetLocale()
-	
-	noteUserId := note.UserId.Hex()
-	content := noteService.GetNoteContent(noteId, noteUserId)
-	userInfo := userService.GetUserInfo(noteUserId);
-	
-	c.RenderArgs["blog"] = note
-	c.RenderArgs["content"] = content.Content
-	c.RenderArgs["userInfo"] = userInfo
-	userBlog := blogService.GetUserBlog(noteUserId)
-	c.RenderArgs["userBlog"] = userBlog
-	
-	return c.RenderTemplate("html2Image/index.html")
-}
-
-func (c Note) Html2Image(noteId string) revel.Result {
-	re := info.NewRe()
-	userId := c.GetUserId()
-	note := noteService.GetNoteById(noteId)
-	if note.NoteId == "" {
-		re.Msg = "No Note"
-		return c.RenderJson(re)
-	}
-	
-	noteUserId := note.UserId.Hex()
-	// 是否有权限
-	if noteUserId != userId {
-		// 是否是有权限协作的
-		if !note.IsBlog && !shareService.HasReadPerm(noteUserId, userId, noteId) {
-			re.Msg = "No Perm"
-			return c.RenderJson(re)
-		}
-	}
-
-	// path 判断是否需要重新生成之
-	fileUrlPath := "/upload/" + noteUserId + "/images/weibo"
-	dir := revel.BasePath + "/public/" + fileUrlPath
-	if !ClearDir(dir) {
-		re.Msg = "No Dir"
-		return c.RenderJson(re)
-	}
-	
-	filename := note.NoteId.Hex() + ".png";
-	path := dir + "/" + filename
-	
-	// cookie
-	cookieName := revel.CookiePrefix + "_SESSION"
-	cookie, err := c.Request.Cookie(cookieName)
-	cookieStr := cookie.String()
-	cookieValue := ""
-	if err == nil && len(cookieStr) > len(cookieName) {
-		cookieValue = cookieStr[len(cookieName)+1:]
-	}
-	
-	appKey, _ := revel.Config.String("app.secret")
-	cookieDomain, _ := revel.Config.String("cookie.domain")
-	// 生成之
-	url := configService.GetSiteUrl() + "/note/toImage?noteId=" + noteId + "&appKey=" + appKey;
-	// /Users/life/Documents/bin/phantomjs/bin/phantomjs /Users/life/Desktop/test/b.js
-	binPath := configService.GetGlobalStringConfig("toImageBinPath")
-	if binPath == "" {
-		return c.RenderJson(re);
-	}
-	cc := binPath + " \"" + url + "\"  \"" + path + "\" \"" + cookieDomain + "\" \"" + cookieName + "\" \"" + cookieValue + "\""
-	cmd := exec.Command("/bin/sh", "-c", cc)
-	Log(cc);
-	b, err := cmd.Output()
-    if err == nil {
-    	re.Ok = true
-		re.Id = fileUrlPath + "/" + filename
-    } else {
-    	re.Msg = string(b)
-    	Log("error:......")
-    	Log(string(b))
-    }
-    
-	return c.RenderJson(re)
-	
-    /*
-    // 这里速度慢, 生成不完全(图片和内容都不全)
-	content := noteService.GetNoteContent(noteId, noteUserId)
-	userInfo := userService.GetUserInfo(noteUserId);
-	
-	c.SetLocale()	
-    
-	c.RenderArgs["blog"] = note
-	c.RenderArgs["content"] = content.Content
-	c.RenderArgs["userInfo"] = userInfo
-	userBlog := blogService.GetUserBlog(noteUserId)
-	c.RenderArgs["userBlog"] = userBlog
-	
-	html := c.RenderTemplateStr("html2Image/index.html") // Result类型的
-	contentFile := dir + "/html";
-	fout, err := os.Create(contentFile)
-    if err != nil {
-		return c.RenderJson(re)
-    }
-    fout.WriteString(html);
-    fout.Close()
-    
-    cc := "/Users/life/Documents/bin/phantomjs/bin/phantomjs /Users/life/Desktop/test/c.js \"" + contentFile + "\"  \"" + path + "\""
-	cmd := exec.Command("/bin/sh", "-c", cc)
-	b, err := cmd.Output()
-    if err == nil {
-    	re.Ok = true
-		re.Id = fileUrlPath + "/" + filename
-    } else {
-    	Log(string(b))
-    }
-	*/
-	
-}
-
-// 导出成PDF
-func (c Note) ExportPdf(noteId string) revel.Result {
-	re := info.NewRe()
-	userId := c.GetUserId()
-	note := noteService.GetNoteById(noteId)
-	if note.NoteId == "" {
-		re.Msg = "No Note"
-		return c.RenderJson(re)
-	}
-	
-	noteUserId := note.UserId.Hex()
-	// 是否有权限
-	if noteUserId != userId {
-		// 是否是有权限协作的
-		if !note.IsBlog && !shareService.HasReadPerm(noteUserId, userId, noteId) {
-			re.Msg = "No Perm"
-			return c.RenderJson(re)
-		}
-	}
-
-	// path 判断是否需要重新生成之
-	fileUrlPath := "upload/" + noteUserId + "/images/weibo"
-	dir := revel.BasePath + "/public/" + fileUrlPath
-	if !ClearDir(dir) {
-		re.Msg = "No Dir"
-		return c.RenderJson(re)
-	}
-	filename := note.Title + ".pdf";
-	if note.Title == "" {
-		filename = "Untitled.pdf";
-	}
-	path := dir + "/" + filename
-	
-	// cookie
-	cookieName := revel.CookiePrefix + "_SESSION"
-	cookie, err := c.Request.Cookie(cookieName)
-	cookieStr := cookie.String()
-	cookieValue := ""
-	if err == nil && len(cookieStr) > len(cookieName) {
-		cookieValue = cookieStr[len(cookieName)+1:]
-	}
-	Log(cookieValue)
-	
-	appKey, _ := revel.Config.String("app.secret")
-//	cookieDomain, _ := revel.Config.String("cookie.domain")
-	// 生成之
-	url := configService.GetSiteUrl() + "/note/toImage?noteId=" + noteId + "&appKey=" + appKey;
-	// /Users/life/Documents/bin/phantomjs/bin/phantomjs /Users/life/Desktop/test/b.js
-	binPath := "/usr/local/bin/wkhtmltopdf" // configService.GetGlobalStringConfig("toImageBinPath")
-	if binPath == "" {
-		return c.RenderJson(re);
-	}
-//	cc := binPath + " \"" + url + "\"  \"" + path + "\" \"" + cookieDomain + "\" \"" + cookieName + "\" \"" + cookieValue + "\""
-	cc := binPath + " \"" + url + "\"  \"" + path + "\"" //  \"" + cookieDomain + "\" \"" + cookieName + "\" \"" + cookieValue + "\""
-	cmd := exec.Command("/bin/sh", "-c", cc)
-	Log(cc);
-	b, err := cmd.Output()
-    if err == nil {
-    	re.Ok = true
-		re.Id = fileUrlPath + "/" + filename
-    } else {
-    	re.Msg = string(b)
-    	Log("error:......")
-    	Log(string(b))
-    }
-    
-	return c.RenderJson(re)
-}
-
 // 设置/取消Blog; 置顶
 func (c Note) SetNote2Blog(noteId string, isBlog, isTop bool) revel.Result {
 	re := noteService.ToBlog(c.GetUserId(), noteId, isBlog, isTop)
diff --git a/conf/routes b/conf/routes
index a03a70f..1f40074 100644
--- a/conf/routes
+++ b/conf/routes
@@ -37,8 +37,6 @@ POST	/findPasswordUpdate							Auth.FindPasswordUpdate
 * /note/copyNote Note.CopyNote
 * /note/copySharedNote Note.CopySharedNote
 * /note/searchNoteByTags Note.SearchNoteByTags
-* /note/toImage Note.ToImage
-* /note/html2Image Note.Html2Image
 * /note/setNote2Blog Note.SetNote2Blog
 # pjax
 GET     /note/:noteId   	                        Note.Index