package page.example;

import org.wikiwebserver.handler.http.HTTPException;
import org.wikiwebserver.handler.http.HTTPHandler;
import org.wikiwebserver.handler.http.interfaces.*;
import page.config.SiteTemplatedPage;

import static org.wikiwebserver.html.HTMLHelper.*;

public class Notepad extends SiteTemplatedPage implements HTTPResponder {
    
    private String notes = "";
    
    public void init(HTTPHandler conn) throws HTTPException {
        super.init(conn);
        // Read data from persistent store
        notes = (String) getPageData().get("text");
    }
	
    public void generate() {
        
        setTitle("Notepad - WikiWebServer.org");
        
        if (getFormData() != null) {
            // Read notes from form data
            notes = getFormData().getFirst("notes");
            // Put data in persistent store
            getPageData().put("text", notes);
        }
        
        // Avoid displaying null
        if (notes == null) notes = "";

        append(h(1, "Notepad") +
               p("Enter some notes to be saved.") + 
               form("<h2>My notes:</h2>" + 
               textarea("notes", notes, "rows='30' cols='100'") + br() +
               submitbutton("action", "Save")
        ));

    }
    
    
    @Override    
    public String getCacheKey() {
        return null;
    }
    
    @Override
    public long getExpireTime() {
    	return System.currentTimeMillis();
    }    
}
