'
const result = htmlCleanup(source)
assert.equal(result, should, source)
})
it('keeps text as is', () => {
const source = 'some link to somewhere'
const should = 'some link to somewhere'
const result = htmlCleanup(source)
assert.equal(result, should, source)
})
it('keeps lists as is', () => {
const source = '
'
const result = htmlCleanup(source)
assert.equal(result, should, source)
})
it('clears lists and new lines', () => {
const source = `
Wir führen eine (Produktiv-) Freshdesk Migratione für hosted Kunden kostenfrei durch.
Ablauf der Migration:
Abstimmung zum Projektablauf und Zeitplan
Produktivmigration zum gewünschten Zeitpunkt. Dabei werden folgende Attribute übertragen:
Companys
User (Agenten+Kontakte)
Gruppen
Tickets (inkl. aller Artikel und Anhänge)
Individuelle Felder (User, Ticket, Company)
Time-Accounting der Tickets (sofern im Freshdesk-Plan enthalten)
Nach erfolgreicher Migration ist direkt die Anmeldung durch den hinterlegten User möglich
Passwörter von anderen Usern können nicht mit übergeben werden, daher müssen sich weitere User über Standard Authentifizierung, wie z.B. der Passwort-zurücksetzen Funktion am System anmelden
Zum gewünschten Zeitpunkt werden die Postfächer aktiviert (durch uns)
Manuelle Zuweisung des Postfaches (durch den Kunden)
Weiteres Vorgehen:
Während der Migration kommt es zu einer Downtime, in der keine Tickets erstellt werden können. Die Downtime kann vorab abgeschätzt werden. Dafür brauchen wir folgende Informationen:
Name des bisherigen Freshdesk Plans (davon ist die Anzahl der Tickets abhängig, die über die API abgefragt werden können)
Ticketanzahl gesamt
Außerdem benötigen wir:
Email-Adresse und den API-Token eines Benutzers, der Zugriff auf alle relevanten Tickets hat
Name der Zammad hosted Instanz
gewünschter Zeitpunkt der Produktivmigration
gewünschter Zeitpunkt für die Aktivierung des Zammad-Postfaches
Sobald wir alle Informationen haben, werden wir Ihnen die Downtime zukommen lassen und danach mit dem Kunden alle weiteren Termine abstimmen.
zusätzliche Testmigration?
Möchte der Kunde auf Nummer Sicher gehen und eine Testmigration durchführen, damit er genügend Zeit hat sich mit dem Zammad System und den dazugehörigen Einstellungen vertraut machen? Das ist kein Problem! Über den kostenfreien Migrationsservice in Form der oben beschriebenen Produktiv-Migration hinaus, bieten wir eine zusätzliche Testmigration für 1.450€ an. Dieses Migrationspaket beinhaltet eine zusätzliche Testmigration sowie eventuelle Anpassungswünsche (vgl. Checkliste OTRS Migration). Je nachdem, ob sich weitere Anpassungswünsche aus der Checkliste ergeben, können die Kosten steigen.
`
const should =
'
Wir führen eine (Produktiv-) Freshdesk Migratione für hosted Kunden kostenfrei durch.
Ablauf der Migration:
Abstimmung zum Projektablauf und Zeitplan
Produktivmigration zum gewünschten Zeitpunkt. Dabei werden folgende Attribute übertragen:
Companys
User (Agenten+Kontakte)
Gruppen
Tickets (inkl. aller Artikel und Anhänge)
Individuelle Felder (User, Ticket, Company)
Time-Accounting der Tickets (sofern im Freshdesk-Plan enthalten)
Nach erfolgreicher Migration ist direkt die Anmeldung durch den hinterlegten User möglich
Passwörter von anderen Usern können nicht mit übergeben werden, daher müssen sich weitere User über Standard Authentifizierung, wie z.B. der Passwort-zurücksetzen Funktion am System anmelden
Zum gewünschten Zeitpunkt werden die Postfächer aktiviert (durch uns)
Manuelle Zuweisung des Postfaches (durch den Kunden)
Weiteres Vorgehen:
Während der Migration kommt es zu einer Downtime, in der keine Tickets erstellt werden können. Die Downtime kann vorab abgeschätzt werden. Dafür brauchen wir folgende Informationen:
Name des bisherigen Freshdesk Plans (davon ist die Anzahl der Tickets abhängig, die über die API abgefragt werden können)
Ticketanzahl gesamt
Außerdem benötigen wir:
Email-Adresse und den API-Token eines Benutzers, der Zugriff auf alle relevanten Tickets hat
Name der Zammad hosted Instanz
gewünschter Zeitpunkt der Produktivmigration
gewünschter Zeitpunkt für die Aktivierung des Zammad-Postfaches
Sobald wir alle Informationen haben, werden wir Ihnen die Downtime zukommen lassen und danach mit dem Kunden alle weiteren Termine abstimmen.
zusätzliche Testmigration?
Möchte der Kunde auf Nummer Sicher gehen und eine Testmigration durchführen, damit er genügend Zeit hat sich mit dem Zammad System und den dazugehörigen Einstellungen vertraut machen? Das ist kein Problem! Über den kostenfreien Migrationsservice in Form der oben beschriebenen Produktiv-Migration hinaus, bieten wir eine zusätzliche Testmigration für 1.450€ an. Dieses Migrationspaket beinhaltet eine zusätzliche Testmigration sowie eventuelle Anpassungswünsche (vgl. Checkliste OTRS Migration). Je nachdem, ob sich weitere Anpassungswünsche aus der Checkliste ergeben, können die Kosten steigen.
'
const result = htmlCleanup(source)
assert.equal(result, should, source)
})
// strip out browser-inserted (broken) link (see https://github.com/zammad/zammad/issues/2019)
// should not be possible in the new tech stack
// source =
// '
'
// should =
// 'test'
// result = htmlCleanup(source)
// assert.equal(result, should, source)
// this is done on the backend now
// source =
// '
aaa
value
'
// should =
// '
aaa
value
'
// result = htmlCleanup(source)
// result.get(0).outerHTML
// // equal(result.get(0).outerHTML, should, source) / string order is different on browsers
// assert.equal(result.first().attr('bgcolor'), 'green')
// assert.equal(result.first().attr('style'), 'color:red;')
// assert.equal(result.first().attr('aaa'), undefined)
// assert.equal(result.find('tr').first().attr('style'), 'margin-top:10px;')
// assert.equal(result.find('th').first().attr('colspan'), '2')
// assert.equal(result.find('th').first().attr('abc'), undefined)
// assert.equal(result.find('th').first().attr('style'), 'margin-top:12px;')
// source =
// '
aaa
value
'
// should =
// '
aaa
value
'
// result = htmlCleanup(source)
// // equal(result.get(0).outerHTML, should, source) / string order is different on browsers
// assert.equal(result.first().attr('bgcolor'), 'green')
// assert.equal(result.first().attr('style'), 'color:red;')
// assert.equal(result.first().attr('aaa'), undefined)
// assert.equal(result.find('tr').first().attr('style'), undefined)
// assert.equal(result.find('th').first().attr('colspan'), '2')
// assert.equal(result.find('th').first().attr('abc'), undefined)
// assert.equal(result.find('th').first().attr('style'), undefined)
// https://github.com/zammad/zammad/issues/4445
// source =
// 'This is a black font colour with white background'
// should = 'This is a black font colour with white background'
// result = htmlCleanup(source)
// assert.equal(result, should, source)
// source =
// '
This is a black font colour with white background
'
// should =
// '
This is a black font colour with white background
'
// result = htmlCleanup(source)
// assert.equal(result, should, source)
})