void ad_spi_device_init(const spi_device_id id) { #if !CONFIG_SPI_RESOURCE_STATIC_ID const spi_device_config *config = (const spi_device_config *) id; config->data->dev_res_id = resource_add(); #endif }
///>>>>>>>>>>>>>>>>>>>>>>>>>>>>> void server_pensioners(socket_t * client, resource_t * lt, http_request_t * req) { char buf[10200] = ""; if(strcmp(req->method, "GET") == 0) { cJSON * arr = cJSON_CreateArray(); for(int i = 0; i < resource_getCnt(lt); i++) { cJSON * pens = cJSON_CreateObject(); pensioner_t * ps = resource_getPens(lt, i); cJSON_AddItemToObject(pens, "id", cJSON_CreateNumber(pensioner_getID(ps))); cJSON_AddItemToObject(pens, "name", cJSON_CreateString(pensioner_getName(ps))); cJSON_AddItemToObject(pens, "surname", cJSON_CreateString(pensioner_getSurname(ps))); cJSON_AddItemToObject(pens, "year", cJSON_CreateString(pensioner_getYear(ps))); cJSON_AddItemToObject(pens, "experience", cJSON_CreateNumber(pensioner_getExperience(ps))); cJSON_AddItemToObject(pens, "pension", cJSON_CreateNumber(pensioner_getPension(ps))); cJSON_AddItemToArray(arr, pens); } char * Jtext = cJSON_Print(arr); char * textP = textToBuf_JSON(Jtext); strcat(buf, textP); free(textP); } else if(strcmp(req->method, "POST") == 0) { pensioner_t * pens = pensioner_new(); char * id = (char *)http_request_getArg(req, "id"); char * name = (char *)http_request_getArg(req, "name"); char * surname = (char *)http_request_getArg(req, "surname"); char * birthdate = (char *)http_request_getArg(req, "birthday"); char * pension = (char *)http_request_getArg(req, "pension"); char * experience = (char *)http_request_getArg(req, "experience"); pensioner_set(pens, atoi(id), birthdate, name, surname, atof(pension), atoi(experience)); resource_add(lt, pens); char * Jst = pensioner_toJSON(pens); char * pageT = textToBuf_JSON(Jst); strcat(buf, pageT); free(pageT); } socket_write_string(client, buf); socket_close(client); }
void server_pensionersHtml(socket_t * client, resource_t * lt, http_request_t * req) { char buf[10000] = ""; if(strcmp(req->method, "GET") == 0) { char text[4000] = ""; for(int i = 0; i < resource_getCnt(lt); i++) { char pageText[300] = ""; sprintf(pageText, "<a href=\"http://127.0.0.1:5000/pensioners/%i\">%s %s<br></a>\n", pensioner_getID(resource_getPens(lt, i)), pensioner_getName(resource_getPens(lt, i)), pensioner_getSurname(resource_getPens(lt, i))); strcat(text, pageText); } char * pageText = "<a href=\"http://127.0.0.1:5000/new-pensioner\"><br>New pensioner</a>"; strcat(text, pageText); char * textHTML = textToBuf_HTML(text); strcat(buf, textHTML); free(textHTML); } else if(strcmp(req->method, "POST") == 0) { char * id = (char *) http_request_getArg(req, "id"); char * name = (char *)http_request_getArg(req, "name"); char * surname = (char *)http_request_getArg(req, "surname"); char * birthday = (char *)http_request_getArg(req, "birthday"); char * pension = (char *)http_request_getArg(req, "pension"); char * experience = (char *)http_request_getArg(req, "experience"); int ch = check(id, name, surname, birthday, pension, experience, lt); char * message; switch(ch) { case 1: { pensioner_t * pens = pensioner_new(); pensioner_set(pens, atoi(id), birthday, name, surname, atof(pension), atoi(experience)); resource_add(lt, pens); message = "<h3>Success</h3>" "<a href=\"http://127.0.0.1:5000/pensioners\"><br>Back to the list.</a>"; break; } case 2: { message = "<h3 style=\"color:green\">This index is already occupied.</h3>"; break; } case 3: { message = "<h3 style=\"color:green\">Wrong index. Number must be > 0.</h3>"; break; } case 4: { message = "<h3 style=\"color:green\">Wrong data format.</h3>"; break; } default: message = "<h3 style=\"color:green\">Wrong input or empty field.</h3>"; break; } char * textHtml = textToBuf_HTML(message); strcat(buf, textHtml); free(textHtml); } socket_write_string(client, buf); socket_close(client); }