comparison mod_http_admin_api/mod_http_admin_api.lua @ 5785:671a6ad1f026

mod_http_admin_api: Fix some luacheck warnings and code style issues
author Matthew Wild <mwild1@gmail.com>
date Thu, 07 Dec 2023 15:43:16 +0000
parents 5c589fab6f53
children 076b79eb747f
comparison
equal deleted inserted replaced
5784:5c589fab6f53 5785:671a6ad1f026
475 475
476 return 200; 476 return 200;
477 end 477 end
478 478
479 function update_user(event, username) 479 function update_user(event, username)
480 local current_user = get_user_info(username);
481 480
482 local request = event.request; 481 local request = event.request;
483 if request.headers.content_type ~= json_content_type 482 if request.headers.content_type ~= json_content_type
484 or (not request.body or #request.body == 0) then 483 or (not request.body or #request.body == 0) then
485 return 400; 484 return 400;
490 end 489 end
491 490
492 if new_user.username and new_user.username ~= username then 491 if new_user.username and new_user.username ~= username then
493 return 400; 492 return 400;
494 end 493 end
495
496 local final_user = {};
497 494
498 if new_user.display_name then 495 if new_user.display_name then
499 local pep_service = mod_pep.get_pep_service(username); 496 local pep_service = mod_pep.get_pep_service(username);
500 -- TODO: publish 497 -- TODO: publish
501 local nick_item = st.stanza("item", { xmlns = xmlns_pubsub, id = "current" }) 498 local nick_item = st.stanza("item", { xmlns = xmlns_pubsub, id = "current" })
502 :text_tag("nick", new_user.display_name, { xmlns = xmlns_nick }); 499 :text_tag("nick", new_user.display_name, { xmlns = xmlns_nick });
503 if pep_service:publish(xmlns_nick, true, "current", nick_item, { 500 pep_service:publish(xmlns_nick, true, "current", nick_item, {
504 access_model = "open"; 501 access_model = "open";
505 _defaults_only = true; 502 _defaults_only = true;
506 }) then 503 });
507 final_user.display_name = new_user.display_name;
508 end
509 end 504 end
510 505
511 if new_user.role then 506 if new_user.role then
512 if not usermanager.set_user_role then 507 if not usermanager.set_user_role then
513 return 500, "feature-not-implemented"; 508 return 500, "feature-not-implemented";
525 520
526 local backend_roles = {}; 521 local backend_roles = {};
527 for _, role in ipairs(new_user.roles) do 522 for _, role in ipairs(new_user.roles) do
528 backend_roles[role] = true; 523 backend_roles[role] = true;
529 end 524 end
530 local jid = username.."@"..module.host; 525 local user_jid = username.."@"..module.host;
531 if not usermanager.set_user_roles(username, module.host, backend_roles) then 526 if not usermanager.set_user_roles(username, module.host, backend_roles) then
532 module:log("error", "failed to set roles %q for %s", backend_roles, jid) 527 module:log("error", "failed to set roles %q for %s", backend_roles, user_jid)
533 return 500 528 return 500
534 end 529 end
535 end 530 end
536 531
537 if new_user.enabled ~= nil then 532 if new_user.enabled ~= nil then
621 }); 616 });
622 end 617 end
623 618
624 function update_group(event, group) --luacheck: ignore 212/event 619 function update_group(event, group) --luacheck: ignore 212/event
625 -- Add member 620 -- Add member
626 local group_id, member_name = group:match("^([^/]+)/members/([^/]+)$"); 621 do
627 if group_id and member_name then 622 local group_id, member_name = group:match("^([^/]+)/members/([^/]+)$");
628 if not mod_groups.add_member(group_id, member_name) then 623 if group_id and member_name then
629 return 500; 624 if not mod_groups.add_member(group_id, member_name) then
630 end 625 return 500;
631 return 204; 626 end
627 return 204;
628 end
632 end 629 end
633 630
634 local group_id = group:match("^([^/]+)$") 631 local group_id = group:match("^([^/]+)$")
635 if group_id then 632 if not group_id then return 404; end
636 local request = event.request; 633
637 if request.headers.content_type ~= json_content_type or (not request.body or #request.body == 0) then 634 local request = event.request;
638 return 400; 635 if request.headers.content_type ~= json_content_type or (not request.body or #request.body == 0) then
639 end 636 return 400;
640 637 end
641 local update = json.decode(event.request.body); 638
642 if not update then 639 local update = json.decode(event.request.body);
643 return 400; 640 if not update then
644 end 641 return 400;
645 642 end
646 local group_info = mod_groups.get_info(group_id); 643
647 if not group_info then 644 local group_info = mod_groups.get_info(group_id);
648 return 404; 645 if not group_info then
649 end 646 return 404;
650 647 end
651 if update.name then 648
652 group_info["name"] = update.name; 649 if update.name then
653 end 650 group_info["name"] = update.name;
654 if mod_groups.set_info(group_id, group_info) then 651 end
655 return 204; 652 if not mod_groups.set_info(group_id, group_info) then
656 else 653 return 500;
657 return 500; 654 end
658 end 655 return 204;
659 end
660 return 404;
661 end 656 end
662 657
663 function extend_group(event, subpath) 658 function extend_group(event, subpath)
664 -- Add group chat 659 -- Add group chat
665 local group_id = subpath:match("^([^/]+)/chats$"); 660 local group_id = subpath:match("^([^/]+)/chats$");