implemented adding of new addresses, numbers, emails and web pages
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -26,6 +26,23 @@
|
||||
let orgs = $derived(contact.vcard.match(/^ORG.*:.+$/gm));
|
||||
let urls = $derived(contact.vcard.match(/^URL.*:.+$/gm));
|
||||
|
||||
function add_address(){
|
||||
var new_addr = `ADR;TYPE=WORK:;;${t('street')};${t('locality')};${t('region')};${t('post_code')};${t('country')}`;
|
||||
patch('END:',`${new_addr}\nEND:`);
|
||||
}
|
||||
|
||||
function add_email(){
|
||||
patch('END:',`EMAIL:${t('email')}@example.com\nEND:`);
|
||||
}
|
||||
|
||||
function add_number(){
|
||||
patch('END:',`TEL:${t('phone')}\nEND:`);
|
||||
}
|
||||
|
||||
function add_url(){
|
||||
patch('END:',`URL:https://example.com\nEND:`);
|
||||
}
|
||||
|
||||
async function drop(){
|
||||
for (let n of names){
|
||||
n = name(n);
|
||||
@@ -114,13 +131,15 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<button class="symbol" onclick={add_address} title={t('add_object',{object:t('address')})}></button>
|
||||
{#each addresses as code}
|
||||
<Address {code} {patch} />
|
||||
{/each}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<td class="phones">
|
||||
<button class="symbol" onclick={add_number} title={t('add_object',{object:t('number')})}></button>
|
||||
{#each numbers as code}
|
||||
<Number {code} {patch} />
|
||||
{/each}
|
||||
@@ -128,6 +147,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<button class="symbol" onclick={add_email} title={t('add_object',{object:t('email')})}></button>
|
||||
{#each emails as code}
|
||||
<Email {code} {patch} />
|
||||
{/each}
|
||||
@@ -142,6 +162,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<button class="symbol" onclick={add_url} title={t('add_object',{object:t('website')})}></button>
|
||||
{#each urls as code}
|
||||
<URL {code} {patch} />
|
||||
{/each}
|
||||
|
||||
@@ -23,13 +23,9 @@ PRODID:Umbrella Contact manager by SRSoftware
|
||||
FN:${t('formatted_name')}
|
||||
N:${t('family_name')};${t('given_name')};;;
|
||||
ORG:${t('organization')}
|
||||
EMAIL;TYPE=HOME:${t('email')}
|
||||
EMAIL;TYPE=WORK:${t('email')}
|
||||
ADR;TYPE=HOME:;;${t('street')};${t('locality')};${t('region')};${t('post_code')};${t('country')}
|
||||
ADR;TYPE=WORK:;;${t('street')};${t('locality')};${t('region')};${t('post_code')};${t('country')}
|
||||
TEL;TYPE=CELL;:${t('phone_cell')}
|
||||
TEL;TYPE=HOME;:${t('phone_home')}
|
||||
TEL;TYPE=WORK;:${t('phone_work')}
|
||||
X-TAX-NUMBER:${t('tax_id')}
|
||||
X-BANK-ACCOUNT:${t('bank_account')}\\nIBAN:XXXX\\nBIC:XXXX
|
||||
X-COURT:${t('local_court')}
|
||||
|
||||
@@ -14,5 +14,5 @@
|
||||
</script>
|
||||
|
||||
{#if value}
|
||||
<LineEditor type="span" editable={true} {value} {onSet} title={t('url')}/>
|
||||
<LineEditor type="div" editable={true} {value} {onSet} title={t('url')}/>
|
||||
{/if}
|
||||
@@ -293,6 +293,7 @@
|
||||
"user_module" : "Umbrella User-Verwaltung",
|
||||
"users": "Benutzer",
|
||||
|
||||
"website": "Website",
|
||||
"welcome" : "Willkommen, {0}",
|
||||
"wiki": "Wiki",
|
||||
"wikis": "Wiki-Seiten",
|
||||
|
||||
@@ -419,4 +419,8 @@ fieldset.vcard{
|
||||
border-width: 1px;
|
||||
vertical-align: top;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
.vcard td button.symbol{
|
||||
float: right;
|
||||
}
|
||||
Reference in New Issue
Block a user