package main
import (
"strings"
"strconv"
"math"
"fmt"
"os"
)
func main() {
var html string
userFile := "log.html"
fout, _ := os.Create(userFile)
defer fout.Close()
fmt.Println(html)
fout.WriteString(html)
}
func multi(num int, perpage int, curpage int, url string) (html string) {
var (
mpurl string
from int
to int
ret []byte
)
ret= []byte("")
if strings.Index(url, "?")!= -1 {
mpurl = url+ "&"
}else{
mpurl = url+ "?;"
}
if num> perpage {
page := 10
offset := 5
pages := int(math.Ceil(float64(num / perpage)))
if page> pages {
from = 1
to = pages
}else{
from = curpage- offset
to = curpage+ page+ offset -1
if from <1 {
to= curpage+ 1- from
from= 1
if((to - from) < page && (to - from) < pages) {
to = page
}
}else if(to > pages) {
from = curpage - pages + to
to = pages
if((to - from) < page && (to - from) < pages) {
from = pages - page + 1
}
}
}
if (curpage - offset) > 1 && pages > page {
ret= []byte(string(ret)+ "<a href=\""+ mpurl + "page=1\" class=\"p_redirect\">«</a>")
}
if curpage > 1 {
ret= []byte(string(ret)+ "<a href=\""+ mpurl + "page="+ strconv.Itoa(curpage - 1)+ "\" class=\"p_redirect\">‹</a>")
}
for i := from; i <= to; i++ {
if i == curpage {
ret= []byte(string(ret)+ "<span class=\"p_curpage\">" + strconv.Itoa(i)+ "</span>")
}else{
ret= []byte(string(ret)+ "<a href=\""+ mpurl+ "page="+ strconv.Itoa(i) + "\" class=\"p_num\">"+ strconv.Itoa(i) + "</a>")
}
}
if curpage < pages {
ret= []byte(string(ret)+ "<a href=\""+ mpurl + "page="+ strconv.Itoa(curpage + 1)+ "\" class=\"p_redirect\">›</a>")
}
if to < pages {
ret= []byte(string(ret)+ "<a href=\""+ mpurl + "page="+ strconv.Itoa(pages)+ "\" class=\"p_redirect\">»</a>")
}
if string(ret)!= "" {
ret= []byte("<div class=\"p_bar\"><span class=\"p_info\">Records:"+ strconv.Itoa(num) + "</span>"+ string(ret) + "</div>")
}
}
return string(ret)
}
/*
function multi($num, $perpage, $curpage, $mpurl) {
$multipage = '';
$mpurl .= strpos($mpurl, '?') ? '&' : '?';
if($num > $perpage) {
$page = 10;
$offset = 5;
$pages = @ceil($num / $perpage);
if($page > $pages) {
$from = 1;
$to = $pages;
} else {
$from = $curpage - $offset;
$to = $curpage + $page - $offset - 1;
if($from < 1) {
$to = $curpage + 1 - $from;
$from = 1;
if(($to - $from) < $page && ($to - $from) < $pages) {
$to = $page;
}
} elseif($to > $pages) {
$from = $curpage - $pages + $to;
$to = $pages;
if(($to - $from) < $page && ($to - $from) < $pages) {
$from = $pages - $page + 1;
}
}
}
$multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="'.$mpurl.'page=1" class="p_redirect">«</a>' : '').($curpage > 1 ? '<a href="'.$mpurl.'page='.($curpage - 1).'" class="p_redirect">‹</a>' : '');
for($i = $from; $i <= $to; $i++) {
$multipage .= $i == $curpage ? '<span class="p_curpage">'.$i.'</span>' : '<a href="'.$mpurl.'page='.$i.'" class="p_num">'.$i.'</a>';
}
$multipage .= ($curpage < $pages ? '<a href="'.$mpurl.'page='.($curpage + 1).'" class="p_redirect">›</a>' : '').($to < $pages ? '<a href="'.$mpurl.'page='.$pages.'" class="p_redirect">»</a>' : '');
$multipage = $multipage ? '<div class="p_bar"><span class="p_info">Records:'.$num.'</span>'.$multipage.'</div>' : '';
}
return $multipage;
}
*/