Mercurial > paster
comparison http.c @ 8:0f1d65d5ea89
pasterd: bring visibility into /fork
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 05 Feb 2020 14:16:00 +0100 |
parents | 39defd15564e |
children | e8f61741aaec |
comparison
equal
deleted
inserted
replaced
7:39defd15564e | 8:0f1d65d5ea89 |
---|---|
104 | 104 |
105 static const char *tmpl_new_keywords[] = { | 105 static const char *tmpl_new_keywords[] = { |
106 "title", /* /fork only */ | 106 "title", /* /fork only */ |
107 "author", /* /fork only */ | 107 "author", /* /fork only */ |
108 "code", /* /fork only */ | 108 "code", /* /fork only */ |
109 "private", /* /fork only */ | |
109 "languages" | 110 "languages" |
110 }; | 111 }; |
111 | 112 |
112 static const char *languages[] = { | 113 static const char *languages[] = { |
113 "nohighlight", | 114 "nohighlight", |
426 case 2: | 427 case 2: |
427 if (paste->code) | 428 if (paste->code) |
428 khttp_puts(data->req, paste->code); | 429 khttp_puts(data->req, paste->code); |
429 break; | 430 break; |
430 case 3: | 431 case 3: |
432 /* Add checked attribute to combobox. */ | |
433 if (!paste->visible) | |
434 khttp_puts(data->req, "checked"); | |
435 break;; | |
436 case 4: | |
431 /* TODO: fragment? */ | 437 /* TODO: fragment? */ |
432 for (const char **l = languages; *l != NULL; ++l) | 438 for (const char **l = languages; *l != NULL; ++l) |
433 khttp_puts(data->req, | 439 khttp_puts(data->req, |
434 bprintf("<option value=\"%s\">%s</option>", *l, *l)); | 440 bprintf("<option value=\"%s\">%s</option>", *l, *l)); |
435 break; | 441 break; |
508 struct tmpl_paste data = { | 514 struct tmpl_paste data = { |
509 .req = req | 515 .req = req |
510 }; | 516 }; |
511 const struct ktemplate kt = { | 517 const struct ktemplate kt = { |
512 .key = tmpl_new_keywords, | 518 .key = tmpl_new_keywords, |
513 .keysz = 4, | 519 .keysz = 5, |
514 .cb = tmpl_new, | 520 .cb = tmpl_new, |
515 .arg = &data | 521 .arg = &data |
516 }; | 522 }; |
517 | 523 |
518 page(req, &kt, KHTTP_200, "new.html"); | 524 page(req, &kt, KHTTP_200, "new.html"); |
585 if (!database_get(&data.paste, req->path)) | 591 if (!database_get(&data.paste, req->path)) |
586 page(req, NULL, KHTTP_404, "404.html"); | 592 page(req, NULL, KHTTP_404, "404.html"); |
587 else { | 593 else { |
588 const struct ktemplate kt = { | 594 const struct ktemplate kt = { |
589 .key = tmpl_new_keywords, | 595 .key = tmpl_new_keywords, |
590 .keysz = 4, | 596 .keysz = 5, |
591 .cb = tmpl_new, | 597 .cb = tmpl_new, |
592 .arg = &data | 598 .arg = &data |
593 }; | 599 }; |
594 | 600 |
595 page(req, &kt, KHTTP_200, "new.html"); | 601 page(req, &kt, KHTTP_200, "new.html"); |