aboutsummaryrefslogtreecommitdiff
path: root/form_head.c
blob: 64325e994087a5b3a5050de1bff2ef0252837a61 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#define _POSIX_C_SOURCE 200809L

#include "form.h"
#include "defs.h"
#include <libweb/html.h>
#include <stdio.h>

#if 0
    "<link href=\"/" STYLE_PATH "\" rel=\"stylesheet\">"
    "   <meta charset=\"UTF-8\">\n" \
    "   <meta name=\"viewport\"\n" content=\"width=device-width, initial-scale=1, maximum-scale=1\">" \
    "<title>" PROJECT_TITLE "</title>"
#endif

int form_head(struct html_node *const n)
{
    struct html_node *head, *link, *charset, *name, *title;

    if (!(head = html_node_add_child(n, "head"))
        || !(link = html_node_add_child(head, "link"))
        || !(charset = html_node_add_child(head, "meta"))
        || !(name = html_node_add_child(head, "meta"))
        || !(title = html_node_add_child(head, "title")))
    {
        fprintf(stderr, "%s: html_node_add_child failed\n", __func__);
        return -1;
    }
    else if (html_node_add_attr(link, "href", "/" STYLE_PATH)
        || html_node_add_attr(link, "rel", "stylesheet")
        || html_node_add_attr(charset, "charset", "UTF-8")
        || html_node_add_attr(name, "name", "viewport")
        || html_node_add_attr(name, "content",
            "width=device-width, initial-scale=1, maximum-scale=1"))
    {
        fprintf(stderr, "%s: html_node_add_attr failed\n", __func__);
        return -1;
    }
    else if (html_node_set_value(title, PROJECT_TITLE))
    {
        fprintf(stderr, "%s: html_node_set_value failed\n", __func__);
        return -1;
    }

    return 0;
}