mirror of
https://github.com/skoelle/icloud-contacts-sync.git
synced 2026-09-18 07:50:25 +00:00
ui: sorting
This commit is contained in:
+7
-5
@@ -114,7 +114,7 @@ def list_contacts(
|
|||||||
f"""SELECT id, account, uid, full_name, given_name, family_name, organization,
|
f"""SELECT id, account, uid, full_name, given_name, family_name, organization,
|
||||||
job_title, birthday, notes, photo_url, emails, phones, addresses, urls, social_profiles, categories, updated_at
|
job_title, birthday, notes, photo_url, emails, phones, addresses, urls, social_profiles, categories, updated_at
|
||||||
FROM contacts {where_clause}{search_clause}
|
FROM contacts {where_clause}{search_clause}
|
||||||
ORDER BY full_name
|
ORDER BY given_name, family_name, full_name
|
||||||
LIMIT %s OFFSET %s""",
|
LIMIT %s OFFSET %s""",
|
||||||
params + [limit, offset],
|
params + [limit, offset],
|
||||||
)
|
)
|
||||||
@@ -163,7 +163,7 @@ def birthdays_today(current_user: str = Depends(get_current_user)):
|
|||||||
f"""SELECT id, account, uid, full_name, given_name, family_name, organization,
|
f"""SELECT id, account, uid, full_name, given_name, family_name, organization,
|
||||||
job_title, birthday, notes, photo_url, emails, phones, addresses, urls, social_profiles, categories, updated_at
|
job_title, birthday, notes, photo_url, emails, phones, addresses, urls, social_profiles, categories, updated_at
|
||||||
FROM contacts {where_clause} {month_day_clause}
|
FROM contacts {where_clause} {month_day_clause}
|
||||||
ORDER BY full_name""",
|
ORDER BY given_name, family_name, full_name""",
|
||||||
params + [today.month, today.day],
|
params + [today.month, today.day],
|
||||||
)
|
)
|
||||||
rows = cur.fetchall()
|
rows = cur.fetchall()
|
||||||
@@ -266,7 +266,8 @@ def get_group(group_id: int, current_user: str = Depends(get_current_user)):
|
|||||||
FROM group_members gm
|
FROM group_members gm
|
||||||
JOIN `groups` g ON g.id = gm.group_id
|
JOIN `groups` g ON g.id = gm.group_id
|
||||||
LEFT JOIN contacts c ON c.account = g.account AND c.uid = gm.member_uid
|
LEFT JOIN contacts c ON c.account = g.account AND c.uid = gm.member_uid
|
||||||
WHERE g.id = %s""",
|
WHERE g.id = %s
|
||||||
|
ORDER BY c.given_name, c.family_name, c.full_name""",
|
||||||
(group_id,),
|
(group_id,),
|
||||||
)
|
)
|
||||||
members = cur.fetchall()
|
members = cur.fetchall()
|
||||||
@@ -305,7 +306,8 @@ def get_group_members(group_id: int, current_user: str = Depends(get_current_use
|
|||||||
FROM group_members gm
|
FROM group_members gm
|
||||||
JOIN `groups` g ON g.id = gm.group_id
|
JOIN `groups` g ON g.id = gm.group_id
|
||||||
LEFT JOIN contacts c ON c.account = g.account AND c.uid = gm.member_uid
|
LEFT JOIN contacts c ON c.account = g.account AND c.uid = gm.member_uid
|
||||||
WHERE gm.group_id = %s""",
|
WHERE gm.group_id = %s
|
||||||
|
ORDER BY c.given_name, c.family_name, c.full_name""",
|
||||||
(group_id,),
|
(group_id,),
|
||||||
)
|
)
|
||||||
rows = cur.fetchall()
|
rows = cur.fetchall()
|
||||||
@@ -546,7 +548,7 @@ def web_search(
|
|||||||
f"""SELECT id, full_name, given_name, middle_name, family_name,
|
f"""SELECT id, full_name, given_name, middle_name, family_name,
|
||||||
prefix, suffix, organization, birthday, account, photo_url
|
prefix, suffix, organization, birthday, account, photo_url
|
||||||
FROM contacts {where_clause}{search_clause}
|
FROM contacts {where_clause}{search_clause}
|
||||||
ORDER BY full_name
|
ORDER BY given_name, family_name, full_name
|
||||||
LIMIT 200""",
|
LIMIT 200""",
|
||||||
params,
|
params,
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -184,7 +184,7 @@ def search_contacts_without_photo(conn, account: str | None) -> list[dict]:
|
|||||||
WHERE addr.city IS NOT NULL AND addr.city != ''
|
WHERE addr.city IS NOT NULL AND addr.city != ''
|
||||||
)
|
)
|
||||||
AND family_name != 'X'
|
AND family_name != 'X'
|
||||||
ORDER BY full_name""",
|
ORDER BY given_name, family_name, full_name""",
|
||||||
params,
|
params,
|
||||||
)
|
)
|
||||||
return cur.fetchall()
|
return cur.fetchall()
|
||||||
@@ -206,7 +206,7 @@ def search_contacts_without_city(conn, account: str | None) -> list[dict]:
|
|||||||
WHERE addr.city IS NOT NULL AND addr.city != ''
|
WHERE addr.city IS NOT NULL AND addr.city != ''
|
||||||
)
|
)
|
||||||
AND family_name != 'X'
|
AND family_name != 'X'
|
||||||
ORDER BY full_name""",
|
ORDER BY given_name, family_name, full_name""",
|
||||||
params,
|
params,
|
||||||
)
|
)
|
||||||
return cur.fetchall()
|
return cur.fetchall()
|
||||||
@@ -225,7 +225,7 @@ def search_contacts_without_social(conn, account: str | None) -> list[dict]:
|
|||||||
AND (JSON_LENGTH(phones) > 0 OR JSON_LENGTH(emails) > 0)
|
AND (JSON_LENGTH(phones) > 0 OR JSON_LENGTH(emails) > 0)
|
||||||
AND (social_profiles IS NULL OR JSON_LENGTH(social_profiles) = 0)
|
AND (social_profiles IS NULL OR JSON_LENGTH(social_profiles) = 0)
|
||||||
AND family_name != 'X'
|
AND family_name != 'X'
|
||||||
ORDER BY full_name""",
|
ORDER BY given_name, family_name, full_name""",
|
||||||
params,
|
params,
|
||||||
)
|
)
|
||||||
return cur.fetchall()
|
return cur.fetchall()
|
||||||
@@ -394,7 +394,7 @@ def get_contacts_by_group_uid(conn, account: str | None, group_uid: str) -> list
|
|||||||
JOIN group_members gm ON gm.member_uid = c.uid
|
JOIN group_members gm ON gm.member_uid = c.uid
|
||||||
JOIN `groups` g ON g.id = gm.group_id AND g.account = c.account
|
JOIN `groups` g ON g.id = gm.group_id AND g.account = c.account
|
||||||
{where_clause} {group_op} g.uid = %s
|
{where_clause} {group_op} g.uid = %s
|
||||||
ORDER BY c.full_name""",
|
ORDER BY c.given_name, c.family_name, c.full_name""",
|
||||||
params + [group_uid],
|
params + [group_uid],
|
||||||
)
|
)
|
||||||
return cur.fetchall()
|
return cur.fetchall()
|
||||||
|
|||||||
+1
-1
@@ -28,7 +28,7 @@ def fetch_birthdays_for_date(conn, target_date: date) -> list[dict]:
|
|||||||
WHERE birthday IS NOT NULL
|
WHERE birthday IS NOT NULL
|
||||||
AND MONTH(birthday) = %s
|
AND MONTH(birthday) = %s
|
||||||
AND DAY(birthday) = %s
|
AND DAY(birthday) = %s
|
||||||
ORDER BY full_name""",
|
ORDER BY given_name, family_name, full_name""",
|
||||||
(target_date.month, target_date.day),
|
(target_date.month, target_date.day),
|
||||||
)
|
)
|
||||||
rows = cur.fetchall()
|
rows = cur.fetchall()
|
||||||
|
|||||||
Reference in New Issue
Block a user