mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-03-12 00:45:34 +00:00
Merge branch 'seeddms-5.0.x' into develop
This commit is contained in:
commit
5863d962ac
|
@ -6,6 +6,8 @@
|
|||
- disallow read access for group didn't prevent the users from being selected
|
||||
as a reviewer/approver
|
||||
- move the last bits of plain sql code from op/*.php into the core
|
||||
- group manager uses ajax like user manager
|
||||
- start to enforce content security policy
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
Changes in version 4.3.22
|
||||
|
|
|
@ -81,6 +81,7 @@ class UI extends UI_Default {
|
|||
$view = new $classname($params, $theme);
|
||||
/* Set some configuration parameters */
|
||||
$view->setParam('refferer', $_SERVER['REQUEST_URI']);
|
||||
$view->setParam('class', $class);
|
||||
$view->setParam('session', $session);
|
||||
$view->setParam('settings', $settings);
|
||||
$view->setParam('sitename', $settings->_siteName);
|
||||
|
|
|
@ -460,6 +460,7 @@ URL: [url]',
|
|||
'groups' => 'المجموعات',
|
||||
'group_approval_summary' => 'ملخص موافقة المجموعة',
|
||||
'group_exists' => 'المجموعة موجودة بالفعل.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'إدارة المجموعات',
|
||||
'group_members' => 'أعضاء المجموعة',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -707,6 +708,8 @@ URL: [url]',
|
|||
'password_strength' => 'قوة كلمة السر',
|
||||
'password_strength_insuffient' => 'قوة كلمة السر غير كافية',
|
||||
'password_wrong' => 'كلمة سر خاطئة',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'قوائم الكلمات البحثية الشخصية',
|
||||
'pl_PL' => 'ﺎﻠﺑﻮﻠﻧﺪﻳﺓ',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -722,6 +725,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => '',
|
||||
'quota_warning' => 'اقصى مساحة للقرص الصلب تم تعديها بمقدار [bytes]. من فضلك قم بمسح بعض المستندات او اصدارات سابقة منها',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'اعادة تحميل',
|
||||
|
@ -792,6 +797,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -391,6 +391,7 @@ $text = array(
|
|||
'groups' => 'Групи',
|
||||
'group_approval_summary' => 'Сводка по утвърждаването на група',
|
||||
'group_exists' => 'Групата вече съществува',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Управление на групи',
|
||||
'group_members' => 'Членове на групата',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -608,6 +609,8 @@ $text = array(
|
|||
'password_strength' => 'Устойчивост на паролата',
|
||||
'password_strength_insuffient' => 'Недостатъчна устойчивост на паролата',
|
||||
'password_wrong' => 'Грешна парола',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Личен списък с ключови думи',
|
||||
'pl_PL' => '',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -623,6 +626,8 @@ $text = array(
|
|||
'quota_is_disabled' => '',
|
||||
'quota_warning' => 'Вашето max. използуване на диска е превишена с [bytes]. Please remove documents or previous versions.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Обнови',
|
||||
|
@ -670,6 +675,8 @@ $text = array(
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -396,6 +396,7 @@ URL: [url]',
|
|||
'groups' => 'Grups',
|
||||
'group_approval_summary' => 'Resum del grup aprovador',
|
||||
'group_exists' => 'El grup ja existeix',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Grups',
|
||||
'group_members' => 'Membres del grup',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -613,6 +614,8 @@ URL: [url]',
|
|||
'password_strength' => '',
|
||||
'password_strength_insuffient' => '',
|
||||
'password_wrong' => '',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Mots clau personals',
|
||||
'pl_PL' => '',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -628,6 +631,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => '',
|
||||
'quota_warning' => '',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Refresh',
|
||||
|
@ -675,6 +680,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -467,6 +467,7 @@ URL: [url]',
|
|||
'groups' => 'Skupiny',
|
||||
'group_approval_summary' => 'Souhrn schválení skupiny',
|
||||
'group_exists' => 'Skupina již existuje.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Skupiny',
|
||||
'group_members' => 'Členové skupiny',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -718,6 +719,8 @@ Pokud budete mít problém s přihlášením i po změně hesla, kontaktujte Adm
|
|||
'password_strength' => 'Síla hesla',
|
||||
'password_strength_insuffient' => 'Nedostatečná síla hesla',
|
||||
'password_wrong' => 'Špatné heslo',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Osobní klíčová slova',
|
||||
'pl_PL' => 'Polština',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -733,6 +736,8 @@ Pokud budete mít problém s přihlášením i po změně hesla, kontaktujte Adm
|
|||
'quota_is_disabled' => 'Podpora kvót je v současné době zakázána v nastavení. Nastavení uživatelských kvót nebude mít žádný vliv, dokud se znovu neaktivuje.',
|
||||
'quota_warning' => 'Vaše maximální využití disku je překročeno o [bajtů]. Prosím, odstraňte dokumenty nebo předchozí verze.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Obnovit',
|
||||
|
@ -801,6 +806,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
//
|
||||
// Translators: Admin (2145), dgrutsch (18)
|
||||
// Translators: Admin (2154), dgrutsch (18)
|
||||
|
||||
$text = array(
|
||||
'accept' => 'Übernehmen',
|
||||
|
@ -472,6 +472,7 @@ URL: [url]',
|
|||
'groups' => 'Gruppen',
|
||||
'group_approval_summary' => 'Freigabe-Gruppen',
|
||||
'group_exists' => 'Gruppe existiert bereits',
|
||||
'group_info' => 'Gruppeninformation',
|
||||
'group_management' => 'Gruppenverwaltung',
|
||||
'group_members' => 'Gruppenmitglieder',
|
||||
'group_receipt_summary' => 'Übersicht Gruppenbestätigungen',
|
||||
|
@ -726,6 +727,8 @@ Sollen Sie danach immer noch Problem bei der Anmeldung haben, dann kontaktieren
|
|||
'password_strength' => 'Passwortstärke',
|
||||
'password_strength_insuffient' => 'Ungenügend starkes Passwort',
|
||||
'password_wrong' => 'Falsches Passwort',
|
||||
'pending_approvals' => 'Ausstehende Freigaben',
|
||||
'pending_reviews' => 'Ausstehende Prüfungen',
|
||||
'personal_default_keywords' => 'Persönliche Stichwortlisten',
|
||||
'pl_PL' => 'Polnisch',
|
||||
'possible_substitutes' => 'Vertreter',
|
||||
|
@ -741,6 +744,13 @@ Sollen Sie danach immer noch Problem bei der Anmeldung haben, dann kontaktieren
|
|||
'quota_is_disabled' => 'Quota-Unterstützung ist zur Zeit ausgeschaltet. Benutzer-Quota werden ignoriert bis Quota-Unterstützung in den Einstellungen eingeschaltet wird.',
|
||||
'quota_warning' => 'Ihr maximal verfügbarer Plattenplatz wurde um [bytes] überschritten. Bitte löschen Sie Dokumente oder ältere Versionen.',
|
||||
'receipt_log' => 'Protokoll der Empfangsbestätigungen',
|
||||
'receipt_request_email_body' => 'Aufforderung zur Empfangsbestätigung
|
||||
Dokument: [name]
|
||||
Version: [version]
|
||||
Elternordner: [folder_path]
|
||||
Benutzer: [username]
|
||||
URL: [url]',
|
||||
'receipt_request_email_subject' => '[sitename]: [name] - Aufforderung zur Empfangsbestätigung',
|
||||
'receipt_summary' => 'Übersicht Bestätigungen',
|
||||
'recipients' => 'Empfänger',
|
||||
'refresh' => 'Aktualisieren',
|
||||
|
@ -821,6 +831,13 @@ URL: [url]',
|
|||
'revise_document_on' => 'Nächste Überprüfung des Dokuments am [date]',
|
||||
'revision_date' => 'Datum der Wiederholungsprüfung',
|
||||
'revision_log' => 'Protokoll der erneuten Prüfung',
|
||||
'revision_request_email_body' => 'Aufforderung zur Wiederholungsprüfung
|
||||
Dokument: [name]
|
||||
Version: [version]
|
||||
Elternordner: [folder_path]
|
||||
Benutzer: [username]
|
||||
URL: [url]',
|
||||
'revision_request_email_subject' => '[sitename]: [name] - Aufforderung zur Wiederholungsprüfung',
|
||||
'revisors' => 'Überprüfer',
|
||||
'revisor_already_assigned' => 'Benutzer bereits als Wiederholungsprüfer eingetragen.',
|
||||
'revisor_already_removed' => 'Wiederholungsprüfer wurde bereits vom Prozess ausgeschlossen oder hat das Dokument bereits geprüft.',
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
//
|
||||
// Translators: Admin (1280), dgrutsch (3), netixw (14)
|
||||
// Translators: Admin (1287), dgrutsch (3), netixw (14)
|
||||
|
||||
$text = array(
|
||||
'accept' => 'Accept',
|
||||
|
@ -472,6 +472,7 @@ URL: [url]',
|
|||
'groups' => 'Groups',
|
||||
'group_approval_summary' => 'Group approval summary',
|
||||
'group_exists' => 'Group already exists.',
|
||||
'group_info' => 'Group information',
|
||||
'group_management' => 'Groups management',
|
||||
'group_members' => 'Group members',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -726,6 +727,8 @@ If you have still problems to login, then please contact your administrator.',
|
|||
'password_strength' => 'Password strength',
|
||||
'password_strength_insuffient' => 'Insuffient password strength',
|
||||
'password_wrong' => 'Wrong password',
|
||||
'pending_approvals' => 'Pending approvals',
|
||||
'pending_reviews' => 'Pending reviews',
|
||||
'personal_default_keywords' => 'Personal keywordlists',
|
||||
'pl_PL' => 'Polish',
|
||||
'possible_substitutes' => 'Substitutes',
|
||||
|
@ -741,6 +744,13 @@ If you have still problems to login, then please contact your administrator.',
|
|||
'quota_is_disabled' => 'Quota support is currently disabled in the settings. Setting a user quota will have no effect until it is enabled again.',
|
||||
'quota_warning' => 'Your maximum disc usage is exceeded by [bytes]. Please remove documents or previous versions.',
|
||||
'receipt_log' => 'Reception Log',
|
||||
'receipt_request_email_body' => 'Reception request
|
||||
Document: [name]
|
||||
Version: [version]
|
||||
Parent folder: [folder_path]
|
||||
User: [username]
|
||||
URL: [url]',
|
||||
'receipt_request_email_subject' => '[sitename]: [name] - Reception request',
|
||||
'receipt_summary' => 'Receipt summary',
|
||||
'recipients' => 'Recipients',
|
||||
'refresh' => 'Refresh',
|
||||
|
@ -828,6 +838,13 @@ URL: [url]',
|
|||
'revise_document_on' => 'Next revision of document version on [date]',
|
||||
'revision_date' => 'Date of revision',
|
||||
'revision_log' => 'Revision log',
|
||||
'revision_request_email_body' => 'Revision request
|
||||
Document: [name]
|
||||
Version: [version]
|
||||
Parent folder: [folder_path]
|
||||
User: [username]
|
||||
URL: [url]',
|
||||
'revision_request_email_subject' => '[sitename]: [name] - Revision request',
|
||||
'revisors' => 'Revisors',
|
||||
'revisor_already_assigned' => 'User is already assigned as an revisor.',
|
||||
'revisor_already_removed' => 'Revisor has already been removed from revision process or has already revised the document.',
|
||||
|
|
|
@ -467,6 +467,7 @@ URL: [url]',
|
|||
'groups' => 'Grupos',
|
||||
'group_approval_summary' => 'Resumen del grupo aprobador',
|
||||
'group_exists' => 'El grupo ya existe.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Gestion de Grupos',
|
||||
'group_members' => 'Miembros de grupo',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -722,6 +723,8 @@ Si continua teniendo problemas de acceso, por favor contacte con el administrado
|
|||
'password_strength' => 'Fortaleza de la contraseña',
|
||||
'password_strength_insuffient' => 'Insuficiente Seguridad de la contraseña',
|
||||
'password_wrong' => 'Contraseña incorrecta',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Listas de palabras clave personales',
|
||||
'pl_PL' => 'Polaco',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -737,6 +740,8 @@ Si continua teniendo problemas de acceso, por favor contacte con el administrado
|
|||
'quota_is_disabled' => 'La cuota está actualmente deshabilitada en las opciones. Establecer una cuota de usuario no tendrá efecto hasta que sea habilitada de nuevo.',
|
||||
'quota_warning' => 'El máximo de uso de disco se ha excedido en [bytes]. Por favor eliminar documentos o versiones anteriores.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Actualizar',
|
||||
|
@ -807,6 +812,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -467,6 +467,7 @@ URL: [url]',
|
|||
'groups' => 'Groupes',
|
||||
'group_approval_summary' => 'Résumé groupe d\'approbation',
|
||||
'group_exists' => 'Ce groupe existe déjà.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Groupes',
|
||||
'group_members' => 'Membres de groupes',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -719,6 +720,8 @@ En cas de problème persistant, veuillez contacter votre administrateur.',
|
|||
'password_strength' => 'Fiabilité du mot de passe',
|
||||
'password_strength_insuffient' => 'Mot de passe trop faible',
|
||||
'password_wrong' => 'Mauvais mot de passe',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Mots-clés personnels',
|
||||
'pl_PL' => 'Polonais',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -734,6 +737,8 @@ En cas de problème persistant, veuillez contacter votre administrateur.',
|
|||
'quota_is_disabled' => 'Le support des quota est actuellement désactivé dans les réglages. Affecter un quota utilisateur n\'aura pas d\'effet jusqu\'à ce qu\'il soit de nouveau activé.',
|
||||
'quota_warning' => 'Votre taille maximale de disque est dépassée de [bytes]. SVP supprimer des documents ou d\'anciennes versions.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Actualiser',
|
||||
|
@ -796,6 +801,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -472,6 +472,7 @@ Internet poveznica: [url]',
|
|||
'groups' => 'Grupe',
|
||||
'group_approval_summary' => 'Pregled odobrenja grupe',
|
||||
'group_exists' => 'Grupa već postoji.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Upravljanje grupama',
|
||||
'group_members' => 'Članovi grupe',
|
||||
'group_receipt_summary' => 'Sažetak prijema za grupu',
|
||||
|
@ -726,6 +727,8 @@ Ako i dalje imate problema s prijavom, molimo kontaktirajte Vašeg administrator
|
|||
'password_strength' => 'Jačina lozinke',
|
||||
'password_strength_insuffient' => 'Nedovoljna jačina lozinke',
|
||||
'password_wrong' => 'Pogrešna lozinka',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Osobni popis ključnih riječi',
|
||||
'pl_PL' => 'Poljski',
|
||||
'possible_substitutes' => 'Zamjene',
|
||||
|
@ -741,6 +744,8 @@ Ako i dalje imate problema s prijavom, molimo kontaktirajte Vašeg administrator
|
|||
'quota_is_disabled' => 'Podrška kvoti je trenutno onemogućena u postavkama. Postavka korisničke kvote neće imati utjecaja dok se ponovno ne omogući.',
|
||||
'quota_warning' => 'Vaš maksimalni prostor na disku je premašen za [bytes]. Molimo uklonite dokumente ili prethodne verzije.',
|
||||
'receipt_log' => 'Zapisi prijema',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => 'Sažetak prijema',
|
||||
'recipients' => 'Primatelji',
|
||||
'refresh' => 'Osvježi',
|
||||
|
@ -828,6 +833,8 @@ Internet poveznica: [url]',
|
|||
'revise_document_on' => 'Slijedeća revizija verzije dokumenta na dan [date]',
|
||||
'revision_date' => 'Datum revizije',
|
||||
'revision_log' => 'Zapisi revizije',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => 'Revizori',
|
||||
'revisor_already_assigned' => 'Korisnik je već dodijeljen kao revizor',
|
||||
'revisor_already_removed' => 'Revizor je uklonjen iz procesa revizije ili je već revidirao dokument.',
|
||||
|
|
|
@ -467,6 +467,7 @@ URL: [url]',
|
|||
'groups' => 'Csoportok',
|
||||
'group_approval_summary' => 'Csoport jóváhagyás összefoglaló',
|
||||
'group_exists' => 'Csoport már létezik.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Csoportok',
|
||||
'group_members' => 'Csoporttagok',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -722,6 +723,8 @@ Amennyiben problémákba ütközik a bejelentkezés során, kérjük vegye fel a
|
|||
'password_strength' => 'Jelszó erősség',
|
||||
'password_strength_insuffient' => 'Jelszó erőssége elégtelen',
|
||||
'password_wrong' => 'Hibás jelszó',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Személyes kulcsszó lista',
|
||||
'pl_PL' => 'Lengyel',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -737,6 +740,8 @@ Amennyiben problémákba ütközik a bejelentkezés során, kérjük vegye fel a
|
|||
'quota_is_disabled' => 'Kvóta támogatás jelenleg le van tiltva a beállításoknál. Felhasználói korlát beállítások nem kerülnek érvényesítésre amíg nincs újra engedélyezve.',
|
||||
'quota_warning' => 'Túllépte lemez korlátot [bytes] bájttal. Kérjük távolítson el dokumentumokat vagy korábbi változatokat.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Frissítés',
|
||||
|
@ -807,6 +812,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -473,6 +473,7 @@ URL: [url]',
|
|||
'groups' => 'Gruppi',
|
||||
'group_approval_summary' => 'Dettaglio approvazioni di gruppo',
|
||||
'group_exists' => 'Il gruppo è già esistente',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Amministrazione gruppi',
|
||||
'group_members' => 'Membri del gruppo',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -728,6 +729,8 @@ Dovessero esserci ancora problemi al login, prego contatta l\'Amministratore di
|
|||
'password_strength' => 'Sicurezza password',
|
||||
'password_strength_insuffient' => 'Efficacia della password insufficiente',
|
||||
'password_wrong' => 'Password errata',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Parole-chiave personali',
|
||||
'pl_PL' => 'Polacco',
|
||||
'possible_substitutes' => 'Sostituti',
|
||||
|
@ -743,6 +746,8 @@ Dovessero esserci ancora problemi al login, prego contatta l\'Amministratore di
|
|||
'quota_is_disabled' => 'Il supporto per le quote è attualmente disattivato nelle impostazioni. L\'impostazione di una quota-utente non avrà alcun effetto finché tale funzionalità non verrà nuovamente attivata.',
|
||||
'quota_warning' => 'Il vostro utilizzo massimo di spazio è stato superato di [bytes]. Si prega di rimuovere documenti o versioni obsolete.',
|
||||
'receipt_log' => 'Ricezione Log',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => 'Sommario ricezione',
|
||||
'recipients' => 'Cartelle',
|
||||
'refresh' => 'Ricarica',
|
||||
|
@ -830,6 +835,8 @@ URL: [url]',
|
|||
'revise_document_on' => 'Prossima revisione del documento il [date]',
|
||||
'revision_date' => 'data revisione',
|
||||
'revision_log' => 'Log revisione',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => 'Revisori',
|
||||
'revisor_already_assigned' => 'Utente già assegnato al ruolo di revisore',
|
||||
'revisor_already_removed' => 'Revisore già rimosso dal processo di revisione o ha già revisionato documento.',
|
||||
|
|
|
@ -472,6 +472,7 @@ URL: [url]',
|
|||
'groups' => '그룹',
|
||||
'group_approval_summary' => '그룹의 승인 요약',
|
||||
'group_exists' => '그룹이 이미 존재합니다.',
|
||||
'group_info' => '',
|
||||
'group_management' => '그룹 관리',
|
||||
'group_members' => '카페 회원',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -719,6 +720,8 @@ URL : [url]',
|
|||
'password_strength' => '강력한 비밀번호',
|
||||
'password_strength_insuffient' => '부족한 비밀번호 강도',
|
||||
'password_wrong' => '잘못된 비밀번호',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => '개인 키워드 목록',
|
||||
'pl_PL' => '폴란드어',
|
||||
'possible_substitutes' => '대체',
|
||||
|
@ -734,6 +737,8 @@ URL : [url]',
|
|||
'quota_is_disabled' => '할당량 지원이 설정에서 비활성화되어 있습니다. 다시 활성화 될 때까지 사용자의 할당량 설정은 적용되지 않습니다.',
|
||||
'quota_warning' => '당신의 최대 디스크 사용량 [bytes] 초과됩니다. 문서 또는 이전 버전을 제거하십시오.',
|
||||
'receipt_log' => '로그 수신',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '접수증 요약',
|
||||
'recipients' => '받는 사람',
|
||||
'refresh' => '새로 고침',
|
||||
|
@ -821,6 +826,8 @@ URL: [url]',
|
|||
'revise_document_on' => '문서 버전의 다음 개정 [날짜]',
|
||||
'revision_date' => '개정 일자',
|
||||
'revision_log' => '개정 로그',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '감사',
|
||||
'revisor_already_assigned' => '이미 감사가 선임이 된 사용자.',
|
||||
'revisor_already_removed' => '감사는 문서의 개정을 과정에서 삭제했거나 이미 개정을 완료 했습니다.',
|
||||
|
|
|
@ -465,6 +465,7 @@ URL: [url]',
|
|||
'groups' => 'Groepen',
|
||||
'group_approval_summary' => 'Groep [Goedkeuring] samenvatting',
|
||||
'group_exists' => 'Groep bestaat reeds.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Groepen beheer',
|
||||
'group_members' => 'Groepsleden',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -720,6 +721,8 @@ Mocht u de komende minuten geen email ontvangen, probeer het dan nogmaals en con
|
|||
'password_strength' => 'Sterkte wachtwoord',
|
||||
'password_strength_insuffient' => 'Onvoldoende wachtwoord sterkte',
|
||||
'password_wrong' => 'Verkeerde wachtwoord',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Persoonlijke sleutelwoorden',
|
||||
'pl_PL' => 'Polen',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -735,6 +738,8 @@ Mocht u de komende minuten geen email ontvangen, probeer het dan nogmaals en con
|
|||
'quota_is_disabled' => 'Quota support is momenteel niet aktief in de eigenschappen. Een user quota zetten zal geen effect hebben tot quotas actief zijn.',
|
||||
'quota_warning' => 'Uw maximale data gebruik is overschreden met [bytes]. Gelieve documenten of eerdere versies te verwijderen.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Verversen',
|
||||
|
@ -803,6 +808,8 @@ URL: [url',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -460,6 +460,7 @@ URL: [url]',
|
|||
'groups' => 'Grupy',
|
||||
'group_approval_summary' => 'Podsumowanie akceptacji dla grupy',
|
||||
'group_exists' => 'Grupa już istnieje.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Zarządzanie grupami',
|
||||
'group_members' => 'Członkowie grupy',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -715,6 +716,8 @@ Jeśli nadal będą problemy z zalogowaniem, prosimy o kontakt z administratorem
|
|||
'password_strength' => 'Siła hasła',
|
||||
'password_strength_insuffient' => 'Niewystarczająca siła hasła',
|
||||
'password_wrong' => 'Złe hasło',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Osobiste sława kluczowe',
|
||||
'pl_PL' => 'Polski',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -730,6 +733,8 @@ Jeśli nadal będą problemy z zalogowaniem, prosimy o kontakt z administratorem
|
|||
'quota_is_disabled' => 'Wsparcie limitów dyskowych jest obecnie wyłączone w ustawieniach. Ustawiony limit dyskowy użytkownika nie będzie działał dopóki wparcie nie zostanie ponownie włączone.',
|
||||
'quota_warning' => 'Przekroczono użycie dysku o [bytes]. Usuń dokumenty lub poprzednie wersje.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Odśwież',
|
||||
|
@ -786,6 +791,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -466,6 +466,7 @@ URL: [url]',
|
|||
'groups' => 'Grupos',
|
||||
'group_approval_summary' => 'Resumo aprovação de grupo',
|
||||
'group_exists' => 'Group already exists.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Grupos',
|
||||
'group_members' => 'Grupo membros',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -720,6 +721,8 @@ Se você ainda tiver problemas para fazer o login, por favor, contate o administ
|
|||
'password_strength' => 'Força da senha',
|
||||
'password_strength_insuffient' => 'A força da senha é insuficiente',
|
||||
'password_wrong' => 'Senha errada',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'palavras-chave pessoais',
|
||||
'pl_PL' => 'Polonês',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -735,6 +738,8 @@ Se você ainda tiver problemas para fazer o login, por favor, contate o administ
|
|||
'quota_is_disabled' => 'Suporte a cota está desativado nas configurações. A definição de cota do usuário não terá efeito até que seja habilitada novamente.',
|
||||
'quota_warning' => 'Seu uso máximo do disco foi ultrapassado em [bytes]. Por favor, remova documentos ou versões anteriores.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Atualizar',
|
||||
|
@ -804,6 +809,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -472,6 +472,7 @@ URL: [url]',
|
|||
'groups' => 'Grupe',
|
||||
'group_approval_summary' => 'Sumar aprobare grup',
|
||||
'group_exists' => 'Grupul există deja.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Management grupuri',
|
||||
'group_members' => 'Membrii grupului',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -727,6 +728,8 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț
|
|||
'password_strength' => 'Siguranța parolei',
|
||||
'password_strength_insuffient' => 'Siguranța parolei este insuficientă',
|
||||
'password_wrong' => 'Parolă greșită',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Liste de cuvinte cheie personale',
|
||||
'pl_PL' => 'Poloneză',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -742,6 +745,8 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț
|
|||
'quota_is_disabled' => 'Spatiu alocat este dezactivată în setări. Stabilirea unui spatiu alocat pentru utilizator nu va avea nici un efect până când setarea este reactivată din nou.',
|
||||
'quota_warning' => 'Dimensiunea dumneavoastră maximă este depasită cu [bytes]. Vă rugăm să eliminați documente sau versiuni anterioare.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => 'Destinatari',
|
||||
'refresh' => 'Refresh',
|
||||
|
@ -829,6 +834,8 @@ URL: [url]',
|
|||
'revise_document_on' => 'Urmatoarea revizuire a versiunii document pe [data]',
|
||||
'revision_date' => '',
|
||||
'revision_log' => 'Log revizuire',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => 'Revizuitori',
|
||||
'revisor_already_assigned' => 'Utilizatorul este deja asignat ca retrimitor.',
|
||||
'revisor_already_removed' => 'Retrimitorul a fost deja eliminat din procesul de revizuire sau a revizuit deja documentul.',
|
||||
|
|
|
@ -460,6 +460,7 @@ URL: [url]',
|
|||
'groups' => 'Группы',
|
||||
'group_approval_summary' => 'Сводка по утверждению группы',
|
||||
'group_exists' => 'Группа уже существует',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Управление группами',
|
||||
'group_members' => 'Члены группы',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -712,6 +713,8 @@ URL: [url]',
|
|||
'password_strength' => 'Надёжность пароля',
|
||||
'password_strength_insuffient' => 'Недостаточная надёжность пароля',
|
||||
'password_wrong' => 'Неверный пароль',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Личный список меток',
|
||||
'pl_PL' => 'Polish',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -727,6 +730,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => '',
|
||||
'quota_warning' => 'Ваша дисковая квота превышена на [bytes]. Удалите ненужные документы или их предыдущие версии.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Обновить',
|
||||
|
@ -797,6 +802,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -391,6 +391,7 @@ $text = array(
|
|||
'groups' => 'Skupiny',
|
||||
'group_approval_summary' => 'Zhrnutie skupinového schválenia',
|
||||
'group_exists' => 'Skupina už existuje.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Skupiny',
|
||||
'group_members' => 'Členovia skupiny',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -608,6 +609,8 @@ $text = array(
|
|||
'password_strength' => '',
|
||||
'password_strength_insuffient' => '',
|
||||
'password_wrong' => '',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Osobné kľúčové slová',
|
||||
'pl_PL' => 'Polština',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -623,6 +626,8 @@ $text = array(
|
|||
'quota_is_disabled' => '',
|
||||
'quota_warning' => '',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => '',
|
||||
|
@ -670,6 +675,8 @@ $text = array(
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -460,6 +460,7 @@ URL: [url]',
|
|||
'groups' => 'Grupper',
|
||||
'group_approval_summary' => 'Sammanfattning av gruppgodkännande',
|
||||
'group_exists' => 'Grupp finns redan.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Grupphantering',
|
||||
'group_members' => 'Gruppmedlemmar',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -707,6 +708,8 @@ URL: [url]',
|
|||
'password_strength' => 'Lösenordskvalitet',
|
||||
'password_strength_insuffient' => 'För låg kvalitet på lösenordet',
|
||||
'password_wrong' => 'Fel lösenord',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Personlig nyckelordslista',
|
||||
'pl_PL' => 'polska',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -722,6 +725,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => 'Kvot stöd är för närvarande inaktiverad i inställningarna. Ställa in en användarkvot kommer att ha någon effekt förrän den är aktiverad igen.',
|
||||
'quota_warning' => 'Din maximala minneskvot har överskridits med [bytes]. Ta bort dokument eller tidigare versioner.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Uppdatera',
|
||||
|
@ -792,6 +797,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -466,6 +466,7 @@ URL: [url]',
|
|||
'groups' => 'Gruplar',
|
||||
'group_approval_summary' => 'Grup onay özeti',
|
||||
'group_exists' => 'Grup zaten mevcut.',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Grup yönetimi',
|
||||
'group_members' => 'Grup üyeleri',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -723,6 +724,8 @@ Giriş yaparken halen sorun yaşıyorsanız lütfen sistem yöneticinizle görü
|
|||
'password_strength' => 'Parola güvenlik düzeyi',
|
||||
'password_strength_insuffient' => 'Parola güvenlik düzeyi yetersiz',
|
||||
'password_wrong' => 'Yanlış parola',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Kişisel anahtar kelimeler',
|
||||
'pl_PL' => 'Polonyaca',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -738,6 +741,8 @@ Giriş yaparken halen sorun yaşıyorsanız lütfen sistem yöneticinizle görü
|
|||
'quota_is_disabled' => 'Kota desteği ayarlardan kapatılmış durumda. Açılana kadar kullanıcıya kota tanımlamanın bir etkisi olmaz.',
|
||||
'quota_warning' => 'Size ayrılan disk kotası [bytes] aşıldı. Lütfen gereksiz olduğunu düşündüğünüz dokümanları veya eski versiyonları silin.',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => 'Yenile',
|
||||
|
@ -808,6 +813,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -472,6 +472,7 @@ URL: [url]',
|
|||
'groups' => 'Групи',
|
||||
'group_approval_summary' => 'Підсумки затвердження групи',
|
||||
'group_exists' => 'Група вже існує',
|
||||
'group_info' => '',
|
||||
'group_management' => 'Керування групами',
|
||||
'group_members' => 'Члени групи',
|
||||
'group_receipt_summary' => 'Підсумки отримання групи',
|
||||
|
@ -724,6 +725,8 @@ URL: [url]',
|
|||
'password_strength' => 'Надійність пароля',
|
||||
'password_strength_insuffient' => 'Недостатня надійність пароля',
|
||||
'password_wrong' => 'Невірний пароль',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => 'Особистий список ключових слів',
|
||||
'pl_PL' => 'Polish',
|
||||
'possible_substitutes' => 'Підстановки',
|
||||
|
@ -739,6 +742,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => 'Квотування відключено',
|
||||
'quota_warning' => 'Ваша дискова квота перевищена на [bytes]. Видаліть непотрібні документи або їх попередні версії.',
|
||||
'receipt_log' => 'Лог отримання',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => 'Підсумки отримання',
|
||||
'recipients' => 'Отримувачі',
|
||||
'refresh' => 'Оновити',
|
||||
|
@ -819,6 +824,8 @@ URL: [url]',
|
|||
'revise_document_on' => 'Наступна ревізія документу [date]',
|
||||
'revision_date' => 'Дата ревізії',
|
||||
'revision_log' => 'Лог ревізії',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => 'Ревізори',
|
||||
'revisor_already_assigned' => 'Ревізор вже призначений',
|
||||
'revisor_already_removed' => 'Ревізора вже видалено',
|
||||
|
|
|
@ -397,6 +397,7 @@ URL: [url]',
|
|||
'groups' => '组别',
|
||||
'group_approval_summary' => '审核组汇总',
|
||||
'group_exists' => '组已存在',
|
||||
'group_info' => '',
|
||||
'group_management' => '组管理',
|
||||
'group_members' => '组成员',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -614,6 +615,8 @@ URL: [url]',
|
|||
'password_strength' => '密码强度',
|
||||
'password_strength_insuffient' => '',
|
||||
'password_wrong' => '',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => '用户关键字',
|
||||
'pl_PL' => '波兰语',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -629,6 +632,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => '配额的支持',
|
||||
'quota_warning' => '',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => '',
|
||||
|
@ -676,6 +681,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -395,6 +395,7 @@ URL: [url]',
|
|||
'groups' => '組別',
|
||||
'group_approval_summary' => '審核組匯總',
|
||||
'group_exists' => '組已存在',
|
||||
'group_info' => '',
|
||||
'group_management' => '組管理',
|
||||
'group_members' => '組成員',
|
||||
'group_receipt_summary' => '',
|
||||
|
@ -612,6 +613,8 @@ URL: [url]',
|
|||
'password_strength' => '密碼強度',
|
||||
'password_strength_insuffient' => '',
|
||||
'password_wrong' => '',
|
||||
'pending_approvals' => '',
|
||||
'pending_reviews' => '',
|
||||
'personal_default_keywords' => '用戶關鍵字',
|
||||
'pl_PL' => '波蘭語',
|
||||
'possible_substitutes' => '',
|
||||
|
@ -627,6 +630,8 @@ URL: [url]',
|
|||
'quota_is_disabled' => '',
|
||||
'quota_warning' => '',
|
||||
'receipt_log' => '',
|
||||
'receipt_request_email_body' => '',
|
||||
'receipt_request_email_subject' => '',
|
||||
'receipt_summary' => '',
|
||||
'recipients' => '',
|
||||
'refresh' => '',
|
||||
|
@ -674,6 +679,8 @@ URL: [url]',
|
|||
'revise_document_on' => '',
|
||||
'revision_date' => '',
|
||||
'revision_log' => '',
|
||||
'revision_request_email_body' => '',
|
||||
'revision_request_email_subject' => '',
|
||||
'revisors' => '',
|
||||
'revisor_already_assigned' => '',
|
||||
'revisor_already_removed' => '',
|
||||
|
|
|
@ -51,7 +51,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
|||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'document'=>$document, 'strictformcheck'=>$settings->_strictFormCheck, 'enablelargefileupload'=>$settings->_enableLargeFileUpload));
|
||||
if($view) {
|
||||
$view->setParam('accessobject', $accessop);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ if($view) {
|
|||
$view->setParam('backupdir', $settings->_backupDir);
|
||||
else
|
||||
$view->setParam('backupdir', $settings->_contentDir);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ switch($type) {
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'rootfolder'=>$rootfolder, 'type'=>$type, 'data'=>$data));
|
||||
if($view) {
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -53,7 +53,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
|||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'document'=>$document, 'allusers'=>$allUsers, 'allgroups'=>$allGroups));
|
||||
if($view) {
|
||||
$view->setParam('accessobject', $accessop);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ $folder = $dms->getFolder($folderid);
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'form'=>$form, 'partialtree'=>$partialtree));
|
||||
if($view) {
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -51,7 +51,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
|||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'document'=>$document, 'sortusersinlist'=>$settings->_sortUsersInList));
|
||||
if($view) {
|
||||
$view->setParam('accessobject', $accessop);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'dropfold
|
|||
if($view) {
|
||||
$view->setParam('cachedir', $settings->_cacheDir);
|
||||
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -57,7 +57,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
|||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'document'=>$document, 'attrdefs'=>$attrdefs, 'strictformcheck'=>$settings->_strictFormCheck, 'orderby'=>$settings->_sortFoldersDefault));
|
||||
if($view) {
|
||||
$view->setParam('accessobject', $accessop);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ $exclude = intval($_GET["exclude"]);
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'rootfolderid'=>$settings->_rootFolderID, 'form'=>$form, 'mode'=>$mode, 'exclude'=>$exclude));
|
||||
if($view) {
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -27,6 +27,11 @@ include("../inc/inc.DBInit.php");
|
|||
include("../inc/inc.ClassUI.php");
|
||||
include("../inc/inc.Authentication.php");
|
||||
|
||||
/**
|
||||
* Include class to preview documents
|
||||
*/
|
||||
require_once("SeedDMS/Preview.php");
|
||||
|
||||
if (!$user->isAdmin()) {
|
||||
UI::exitError(getMLText("admin_tools"),getMLText("access_denied"));
|
||||
}
|
||||
|
@ -48,10 +53,9 @@ if(isset($_GET['groupid']) && $_GET['groupid']) {
|
|||
}
|
||||
|
||||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'selgroup'=>$selgroup, 'allgroups'=>$allGroups, 'allusers'=>$allUsers, 'strictformcheck'=>$settings->_strictFormCheck));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'selgroup'=>$selgroup, 'allgroups'=>$allGroups, 'allusers'=>$allUsers, 'strictformcheck'=>$settings->_strictFormCheck, 'cachedir'=>$settings->_cacheDir, 'previewWidthList'=>$settings->_previewWidthList));
|
||||
if($view) {
|
||||
$view->show();
|
||||
exit;
|
||||
$view($_GET);
|
||||
}
|
||||
|
||||
?>
|
||||
|
|
|
@ -44,7 +44,7 @@ if($_GET['target']) {
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'categories'=>$categories, 'form'=>$target));
|
||||
if($view) {
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ else $mode='web';
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'logname'=>$logname, 'mode'=>$mode, 'contentdir'=>$settings->_contentDir));
|
||||
if($view) {
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -70,7 +70,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
|||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'document'=>$document, 'target'=>$target));
|
||||
if($view) {
|
||||
$view->setParam('accessobject', $accessop);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -357,7 +357,7 @@ if(isset($_GET["fullsearch"]) && $_GET["fullsearch"]) {
|
|||
$pageNumber = (int) $_GET["pg"];
|
||||
}
|
||||
elseif (!strcasecmp($_GET["pg"], "all")) {
|
||||
$limit = 0;
|
||||
// $limit = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -420,7 +420,7 @@ if(isset($_GET["fullsearch"]) && $_GET["fullsearch"]) {
|
|||
$totalPages = (int) (count($entries)/$limit);
|
||||
if(count($entries)%$limit)
|
||||
$totalPages++;
|
||||
if($limit > 0)
|
||||
if (!isset($_GET["pg"]) || strcasecmp($_GET["pg"], "all"))
|
||||
$entries = array_slice($entries, ($pageNumber-1)*$limit, $limit);
|
||||
// }}}
|
||||
}
|
||||
|
@ -467,7 +467,7 @@ if(count($entries) == 1) {
|
|||
$view->setParam('enablefullsearch', $settings->_enableFullSearch);
|
||||
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
||||
$view->setParam('previewconverters', $settings->_converters['preview']);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
}
|
|
@ -33,7 +33,7 @@ $rootfolder = $dms->getFolder($settings->_rootFolderID);
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'rootfolder'=>$rootfolder));
|
||||
if($view) {
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -64,7 +64,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
|||
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'folder'=>$folder, 'document'=>$document, 'strictformcheck'=>$settings->_strictFormCheck, 'enablelargefileupload'=>$settings->_enableLargeFileUpload, 'enableadminrevapp'=>$settings->_enableAdminRevApp, 'enableownerrevapp'=>$settings->_enableOwnerRevApp, 'enableselfrevapp'=>$settings->_enableSelfRevApp, 'dropfolderdir'=>$settings->_dropFolderDir, 'workflowmode'=>$settings->_workflowMode, 'presetexpiration'=>$settings->_presetExpirationDate));
|
||||
if($view) {
|
||||
$view->setParam('accessobject', $accessop);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@ if($view) {
|
|||
$view->setParam('maxRecursiveCount', $settings->_maxRecursiveCount);
|
||||
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
||||
$view->setParam('previewconverters', $settings->_converters['preview']);
|
||||
$view->show();
|
||||
$view($_GET);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
|
|
@ -162,6 +162,10 @@ div.timeline-event-selected {
|
|||
z-index: 999;
|
||||
}
|
||||
|
||||
div.splash {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (max-width: 480px) {
|
||||
.nav-tabs > li {
|
||||
float:none;
|
||||
|
|
|
@ -128,76 +128,6 @@ $(document).ready( function() {
|
|||
}
|
||||
});
|
||||
|
||||
$('body').on('click', 'button.removedocument', function(ev){
|
||||
ev.preventDefault();
|
||||
attr_rel = $(ev.currentTarget).attr('rel');
|
||||
attr_msg = $(ev.currentTarget).attr('msg');
|
||||
attr_formtoken = $(ev.currentTarget).attr('formtoken');
|
||||
id = attr_rel;
|
||||
$.get('../op/op.Ajax.php',
|
||||
{ command: 'deletedocument', id: id, formtoken: attr_formtoken },
|
||||
function(data) {
|
||||
// console.log(data);
|
||||
if(data.success) {
|
||||
$('#table-row-document-'+id).hide('slow');
|
||||
noty({
|
||||
text: attr_msg,
|
||||
type: 'success',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 1500,
|
||||
});
|
||||
} else {
|
||||
noty({
|
||||
text: data.message,
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 3500,
|
||||
});
|
||||
}
|
||||
},
|
||||
'json'
|
||||
);
|
||||
});
|
||||
|
||||
$('body').on('click', 'button.removefolder', function(ev){
|
||||
ev.preventDefault();
|
||||
attr_rel = $(ev.currentTarget).attr('rel');
|
||||
attr_msg = $(ev.currentTarget).attr('msg');
|
||||
attr_formtoken = $(ev.currentTarget).attr('formtoken');
|
||||
id = attr_rel;
|
||||
$.get('../op/op.Ajax.php',
|
||||
{ command: 'deletefolder', id: id, formtoken: attr_formtoken },
|
||||
function(data) {
|
||||
// console.log(data);
|
||||
if(data.success) {
|
||||
$('#table-row-folder-'+id).hide('slow');
|
||||
noty({
|
||||
text: attr_msg,
|
||||
type: 'success',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 1500,
|
||||
});
|
||||
} else {
|
||||
noty({
|
||||
text: data.message,
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 3500,
|
||||
});
|
||||
}
|
||||
},
|
||||
'json'
|
||||
);
|
||||
});
|
||||
|
||||
$('body').on('click', 'a.addtoclipboard', function(ev){
|
||||
ev.preventDefault();
|
||||
attr_rel = $(ev.currentTarget).attr('rel');
|
||||
|
@ -752,6 +682,20 @@ $(document).ready(function() {
|
|||
e.preventDefault();
|
||||
});
|
||||
|
||||
$('div.splash').each(function(index) {
|
||||
var element = $(this);
|
||||
var msgtype = element.data('type');
|
||||
var timeout = element.data('timeout');
|
||||
var msg = element.text();
|
||||
noty({
|
||||
text: msg,
|
||||
type: msgtype,
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: (timeout == 'undefined' ? 1500 : timeout),
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
var approval_count, review_count, receipt_count, revision_count;
|
||||
|
@ -776,5 +720,9 @@ $(document).ready(function() {
|
|||
});
|
||||
timeOutId = setTimeout(checkTasks, 10000);
|
||||
}
|
||||
$(document).ready(function() {
|
||||
$("#menu-tasks > ul > li").checkTasks();
|
||||
});
|
||||
|
||||
//checkTasks();
|
||||
|
||||
|
|
551
styles/bootstrap/bootbox/bootbox.js
vendored
Normal file
551
styles/bootstrap/bootbox/bootbox.js
vendored
Normal file
|
@ -0,0 +1,551 @@
|
|||
/**
|
||||
* bootbox.js v2.5.1
|
||||
*
|
||||
* http://bootboxjs.com/license.txt
|
||||
*/
|
||||
var bootbox = window.bootbox || (function($) {
|
||||
|
||||
var _locale = 'en',
|
||||
_defaultLocale = 'en',
|
||||
_animate = true,
|
||||
_backdrop = 'static',
|
||||
_defaultHref = 'javascript:;',
|
||||
_classes = '',
|
||||
_icons = {},
|
||||
/* last var should always be the public object we'll return */
|
||||
that = {};
|
||||
|
||||
/**
|
||||
* standard locales. Please add more according to ISO 639-1 standard. Multiple language variants are
|
||||
* unlikely to be required. If this gets too large it can be split out into separate JS files.
|
||||
*/
|
||||
var _locales = {
|
||||
'en' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Cancel',
|
||||
CONFIRM : 'OK'
|
||||
},
|
||||
'fr' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Annuler',
|
||||
CONFIRM : 'D\'accord'
|
||||
},
|
||||
'de' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Abbrechen',
|
||||
CONFIRM : 'Akzeptieren'
|
||||
},
|
||||
'es' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Cancelar',
|
||||
CONFIRM : 'Aceptar'
|
||||
},
|
||||
'br' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Cancelar',
|
||||
CONFIRM : 'Sim'
|
||||
},
|
||||
'nl' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Annuleren',
|
||||
CONFIRM : 'Accepteren'
|
||||
},
|
||||
'ru' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Отмена',
|
||||
CONFIRM : 'Применить'
|
||||
},
|
||||
'it' : {
|
||||
OK : 'OK',
|
||||
CANCEL : 'Annulla',
|
||||
CONFIRM : 'Conferma'
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* private methods
|
||||
*/
|
||||
function _translate(str, locale) {
|
||||
// we assume if no target locale is probided then we should take it from current setting
|
||||
if (locale == null) {
|
||||
locale = _locale;
|
||||
}
|
||||
if (typeof _locales[locale][str] == 'string') {
|
||||
return _locales[locale][str];
|
||||
}
|
||||
|
||||
// if we couldn't find a lookup then try and fallback to a default translation
|
||||
|
||||
if (locale != _defaultLocale) {
|
||||
return _translate(str, _defaultLocale);
|
||||
}
|
||||
|
||||
// if we can't do anything then bail out with whatever string was passed in - last resort
|
||||
return str;
|
||||
}
|
||||
|
||||
/**
|
||||
* public API
|
||||
*/
|
||||
that.setLocale = function(locale) {
|
||||
for (var i in _locales) {
|
||||
if (i == locale) {
|
||||
_locale = locale;
|
||||
return;
|
||||
}
|
||||
}
|
||||
throw new Error('Invalid locale: '+locale);
|
||||
};
|
||||
|
||||
that.addLocale = function(locale, translations) {
|
||||
if (typeof _locales[locale] == 'undefined') {
|
||||
_locales[locale] = {};
|
||||
}
|
||||
for (var str in translations) {
|
||||
_locales[locale][str] = translations[str];
|
||||
}
|
||||
};
|
||||
|
||||
that.setIcons = function(icons) {
|
||||
_icons = icons;
|
||||
if (typeof _icons !== 'object' || _icons == null) {
|
||||
_icons = {};
|
||||
}
|
||||
};
|
||||
|
||||
that.alert = function(/*str, label, cb*/) {
|
||||
var str = "",
|
||||
label = _translate('OK'),
|
||||
cb = null;
|
||||
|
||||
switch (arguments.length) {
|
||||
case 1:
|
||||
// no callback, default button label
|
||||
str = arguments[0];
|
||||
break;
|
||||
case 2:
|
||||
// callback *or* custom button label dependent on type
|
||||
str = arguments[0];
|
||||
if (typeof arguments[1] == 'function') {
|
||||
cb = arguments[1];
|
||||
} else {
|
||||
label = arguments[1];
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
// callback and custom button label
|
||||
str = arguments[0];
|
||||
label = arguments[1];
|
||||
cb = arguments[2];
|
||||
break;
|
||||
default:
|
||||
throw new Error("Incorrect number of arguments: expected 1-3");
|
||||
break;
|
||||
}
|
||||
|
||||
return that.dialog(str, {
|
||||
"label": label,
|
||||
"icon" : _icons.OK,
|
||||
"callback": cb
|
||||
}, {
|
||||
"onEscape": cb
|
||||
});
|
||||
};
|
||||
|
||||
that.confirm = function(/*str, labelCancel, labelOk, cb*/) {
|
||||
var str = "",
|
||||
labelCancel = _translate('CANCEL'),
|
||||
labelOk = _translate('CONFIRM'),
|
||||
cb = null;
|
||||
|
||||
switch (arguments.length) {
|
||||
case 1:
|
||||
str = arguments[0];
|
||||
break;
|
||||
case 2:
|
||||
str = arguments[0];
|
||||
if (typeof arguments[1] == 'function') {
|
||||
cb = arguments[1];
|
||||
} else {
|
||||
labelCancel = arguments[1];
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
str = arguments[0];
|
||||
labelCancel = arguments[1];
|
||||
if (typeof arguments[2] == 'function') {
|
||||
cb = arguments[2];
|
||||
} else {
|
||||
labelOk = arguments[2];
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
str = arguments[0];
|
||||
labelCancel = arguments[1];
|
||||
labelOk = arguments[2];
|
||||
cb = arguments[3];
|
||||
break;
|
||||
default:
|
||||
throw new Error("Incorrect number of arguments: expected 1-4");
|
||||
break;
|
||||
}
|
||||
|
||||
return that.dialog(str, [{
|
||||
"label": labelCancel,
|
||||
"icon" : _icons.CANCEL,
|
||||
"callback": function() {
|
||||
if (typeof cb == 'function') {
|
||||
cb(false);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"label": labelOk,
|
||||
"icon" : _icons.CONFIRM,
|
||||
"callback": function() {
|
||||
if (typeof cb == 'function') {
|
||||
cb(true);
|
||||
}
|
||||
}
|
||||
}]);
|
||||
};
|
||||
|
||||
that.prompt = function(/*str, labelCancel, labelOk, cb, defaultVal*/) {
|
||||
var str = "",
|
||||
labelCancel = _translate('CANCEL'),
|
||||
labelOk = _translate('CONFIRM'),
|
||||
cb = null,
|
||||
defaultVal = "";
|
||||
|
||||
switch (arguments.length) {
|
||||
case 1:
|
||||
str = arguments[0];
|
||||
break;
|
||||
case 2:
|
||||
str = arguments[0];
|
||||
if (typeof arguments[1] == 'function') {
|
||||
cb = arguments[1];
|
||||
} else {
|
||||
labelCancel = arguments[1];
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
str = arguments[0];
|
||||
labelCancel = arguments[1];
|
||||
if (typeof arguments[2] == 'function') {
|
||||
cb = arguments[2];
|
||||
} else {
|
||||
labelOk = arguments[2];
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
str = arguments[0];
|
||||
labelCancel = arguments[1];
|
||||
labelOk = arguments[2];
|
||||
cb = arguments[3];
|
||||
break;
|
||||
case 5:
|
||||
str = arguments[0];
|
||||
labelCancel = arguments[1];
|
||||
labelOk = arguments[2];
|
||||
cb = arguments[3];
|
||||
defaultVal = arguments[4];
|
||||
break;
|
||||
default:
|
||||
throw new Error("Incorrect number of arguments: expected 1-5");
|
||||
break;
|
||||
}
|
||||
|
||||
var header = str;
|
||||
|
||||
// let's keep a reference to the form object for later
|
||||
var form = $("<form></form>");
|
||||
form.append("<input autocomplete=off type=text value='" + defaultVal + "' />");
|
||||
|
||||
var div = that.dialog(form, [{
|
||||
"label": labelCancel,
|
||||
"icon" : _icons.CANCEL,
|
||||
"callback": function() {
|
||||
if (typeof cb == 'function') {
|
||||
cb(null);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"label": labelOk,
|
||||
"icon" : _icons.CONFIRM,
|
||||
"callback": function() {
|
||||
if (typeof cb == 'function') {
|
||||
cb(
|
||||
form.find("input[type=text]").val()
|
||||
);
|
||||
}
|
||||
}
|
||||
}], {
|
||||
"header": header
|
||||
});
|
||||
|
||||
div.on("shown", function() {
|
||||
form.find("input[type=text]").focus();
|
||||
|
||||
// ensure that submitting the form (e.g. with the enter key)
|
||||
// replicates the behaviour of a normal prompt()
|
||||
form.on("submit", function(e) {
|
||||
e.preventDefault();
|
||||
div.find(".btn-primary").click();
|
||||
});
|
||||
});
|
||||
|
||||
return div;
|
||||
};
|
||||
|
||||
that.modal = function(/*str, label, options*/) {
|
||||
var str;
|
||||
var label;
|
||||
var options;
|
||||
|
||||
var defaultOptions = {
|
||||
"onEscape": null,
|
||||
"keyboard": true,
|
||||
"backdrop": _backdrop
|
||||
};
|
||||
|
||||
switch (arguments.length) {
|
||||
case 1:
|
||||
str = arguments[0];
|
||||
break;
|
||||
case 2:
|
||||
str = arguments[0];
|
||||
if (typeof arguments[1] == 'object') {
|
||||
options = arguments[1];
|
||||
} else {
|
||||
label = arguments[1];
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
str = arguments[0];
|
||||
label = arguments[1];
|
||||
options = arguments[2];
|
||||
break;
|
||||
default:
|
||||
throw new Error("Incorrect number of arguments: expected 1-3");
|
||||
break;
|
||||
}
|
||||
|
||||
defaultOptions['header'] = label;
|
||||
|
||||
if (typeof options == 'object') {
|
||||
options = $.extend(defaultOptions, options);
|
||||
} else {
|
||||
options = defaultOptions;
|
||||
}
|
||||
|
||||
return that.dialog(str, [], options);
|
||||
};
|
||||
|
||||
that.dialog = function(str, handlers, options) {
|
||||
var hideSource = null,
|
||||
buttons = "",
|
||||
callbacks = [],
|
||||
options = options || {};
|
||||
|
||||
// check for single object and convert to array if necessary
|
||||
if (handlers == null) {
|
||||
handlers = [];
|
||||
} else if (typeof handlers.length == 'undefined') {
|
||||
handlers = [handlers];
|
||||
}
|
||||
|
||||
var i = handlers.length;
|
||||
while (i--) {
|
||||
var label = null,
|
||||
href = null,
|
||||
_class = null,
|
||||
icon = '',
|
||||
callback = null;
|
||||
|
||||
if (typeof handlers[i]['label'] == 'undefined' &&
|
||||
typeof handlers[i]['class'] == 'undefined' &&
|
||||
typeof handlers[i]['callback'] == 'undefined') {
|
||||
// if we've got nothing we expect, check for condensed format
|
||||
|
||||
var propCount = 0, // condensed will only match if this == 1
|
||||
property = null; // save the last property we found
|
||||
|
||||
// be nicer to count the properties without this, but don't think it's possible...
|
||||
for (var j in handlers[i]) {
|
||||
property = j;
|
||||
if (++propCount > 1) {
|
||||
// forget it, too many properties
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (propCount == 1 && typeof handlers[i][j] == 'function') {
|
||||
// matches condensed format of label -> function
|
||||
handlers[i]['label'] = property;
|
||||
handlers[i]['callback'] = handlers[i][j];
|
||||
}
|
||||
}
|
||||
|
||||
if (typeof handlers[i]['callback']== 'function') {
|
||||
callback = handlers[i]['callback'];
|
||||
}
|
||||
|
||||
if (handlers[i]['class']) {
|
||||
_class = handlers[i]['class'];
|
||||
} else if (i == handlers.length -1 && handlers.length <= 2) {
|
||||
// always add a primary to the main option in a two-button dialog
|
||||
_class = 'btn-primary';
|
||||
}
|
||||
|
||||
if (handlers[i]['label']) {
|
||||
label = handlers[i]['label'];
|
||||
} else {
|
||||
label = "Option "+(i+1);
|
||||
}
|
||||
|
||||
if (handlers[i]['icon']) {
|
||||
icon = "<i class='"+handlers[i]['icon']+"'></i> ";
|
||||
}
|
||||
|
||||
if (handlers[i]['href']) {
|
||||
href = handlers[i]['href'];
|
||||
}
|
||||
else {
|
||||
href = _defaultHref;
|
||||
}
|
||||
|
||||
buttons += "<a data-handler='"+i+"' class='btn "+_class+"' href='" + href + "'>"+icon+""+label+"</a>";
|
||||
|
||||
callbacks[i] = callback;
|
||||
}
|
||||
|
||||
// @see https://github.com/makeusabrew/bootbox/issues/46#issuecomment-8235302
|
||||
// and https://github.com/twitter/bootstrap/issues/4474
|
||||
// for an explanation of the inline overflow: hidden
|
||||
|
||||
var parts = ["<div class='bootbox modal' style='overflow:hidden;'>"];
|
||||
|
||||
if (options['header']) {
|
||||
var closeButton = '';
|
||||
if (typeof options['headerCloseButton'] == 'undefined' || options['headerCloseButton']) {
|
||||
closeButton = "<a href='"+_defaultHref+"' class='close'>×</a>";
|
||||
}
|
||||
|
||||
parts.push("<div class='modal-header'>"+closeButton+"<h3>"+options['header']+"</h3></div>");
|
||||
}
|
||||
|
||||
// push an empty body into which we'll inject the proper content later
|
||||
parts.push("<div class='modal-body'></div>");
|
||||
|
||||
if (buttons) {
|
||||
parts.push("<div class='modal-footer'>"+buttons+"</div>");
|
||||
}
|
||||
|
||||
parts.push("</div>");
|
||||
|
||||
var div = $(parts.join("\n"));
|
||||
|
||||
// check whether we should fade in/out
|
||||
var shouldFade = (typeof options.animate === 'undefined') ? _animate : options.animate;
|
||||
|
||||
if (shouldFade) {
|
||||
div.addClass("fade");
|
||||
}
|
||||
|
||||
var optionalClasses = (typeof options.classes === 'undefined') ? _classes : options.classes;
|
||||
if( optionalClasses ) {
|
||||
div.addClass( optionalClasses );
|
||||
}
|
||||
|
||||
// now we've built up the div properly we can inject the content whether it was a string or a jQuery object
|
||||
$(".modal-body", div).html(str);
|
||||
|
||||
div.bind('hidden', function() {
|
||||
div.remove();
|
||||
});
|
||||
|
||||
div.bind('hide', function() {
|
||||
if (hideSource == 'escape' &&
|
||||
typeof options.onEscape == 'function') {
|
||||
options.onEscape();
|
||||
}
|
||||
});
|
||||
|
||||
// hook into the modal's keyup trigger to check for the escape key
|
||||
$(document).bind('keyup.modal', function ( e ) {
|
||||
if (e.which == 27) {
|
||||
hideSource = 'escape';
|
||||
}
|
||||
});
|
||||
|
||||
// well, *if* we have a primary - give the last dom element (first displayed) focus
|
||||
div.bind('shown', function() {
|
||||
$("a.btn-primary:last", div).focus();
|
||||
});
|
||||
|
||||
// wire up button handlers
|
||||
div.on('click', '.modal-footer a, a.close', function(e) {
|
||||
|
||||
var handler = $(this).data("handler"),
|
||||
cb = callbacks[handler],
|
||||
hideModal = null;
|
||||
|
||||
// sort of @see https://github.com/makeusabrew/bootbox/pull/68 - heavily adapted
|
||||
// if we've got a custom href attribute, all bets are off
|
||||
if (typeof handler !== 'undefined' &&
|
||||
typeof handlers[handler]['href'] !== 'undefined') {
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
if (typeof cb == 'function') {
|
||||
hideModal = cb();
|
||||
}
|
||||
|
||||
// the only way hideModal *will* be false is if a callback exists and
|
||||
// returns it as a value. in those situations, don't hide the dialog
|
||||
// @see https://github.com/makeusabrew/bootbox/pull/25
|
||||
if (hideModal !== false) {
|
||||
hideSource = 'button';
|
||||
div.modal("hide");
|
||||
}
|
||||
});
|
||||
|
||||
if (options.keyboard == null) {
|
||||
options.keyboard = (typeof options.onEscape == 'function');
|
||||
}
|
||||
|
||||
$("body").append(div);
|
||||
|
||||
div.modal({
|
||||
"backdrop" : (typeof options.backdrop === 'undefined') ? _backdrop : options.backdrop,
|
||||
"keyboard" : options.keyboard
|
||||
});
|
||||
|
||||
return div;
|
||||
};
|
||||
|
||||
that.hideAll = function() {
|
||||
$(".bootbox").modal("hide");
|
||||
};
|
||||
|
||||
that.animate = function(animate) {
|
||||
_animate = animate;
|
||||
};
|
||||
|
||||
that.backdrop = function(backdrop) {
|
||||
_backdrop = backdrop;
|
||||
};
|
||||
|
||||
that.classes = function(classes) {
|
||||
_classes = classes;
|
||||
};
|
||||
|
||||
return that;
|
||||
|
||||
})( window.jQuery );
|
||||
|
||||
// @see https://github.com/makeusabrew/bootbox/issues/71
|
||||
window.bootbox = bootbox;
|
16
styles/bootstrap/bootbox/bootbox.min.js
vendored
Normal file
16
styles/bootstrap/bootbox/bootbox.min.js
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
/**
|
||||
* bootbox.js v2.5.1
|
||||
*
|
||||
* http://bootboxjs.com/license.txt
|
||||
*/
|
||||
var bootbox=window.bootbox||function(k){function h(b,a){null==a&&(a=m);return"string"==typeof i[a][b]?i[a][b]:a!=n?h(b,n):b}var m="en",n="en",s=!0,r="static",t="",j={},e={},i={en:{OK:"OK",CANCEL:"Cancel",CONFIRM:"OK"},fr:{OK:"OK",CANCEL:"Annuler",CONFIRM:"D'accord"},de:{OK:"OK",CANCEL:"Abbrechen",CONFIRM:"Akzeptieren"},es:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Aceptar"},br:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Sim"},nl:{OK:"OK",CANCEL:"Annuleren",CONFIRM:"Accepteren"},ru:{OK:"OK",CANCEL:"\u041e\u0442\u043c\u0435\u043d\u0430",
|
||||
CONFIRM:"\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c"},it:{OK:"OK",CANCEL:"Annulla",CONFIRM:"Conferma"}};e.setLocale=function(b){for(var a in i)if(a==b){m=b;return}throw Error("Invalid locale: "+b);};e.addLocale=function(b,a){"undefined"==typeof i[b]&&(i[b]={});for(var c in a)i[b][c]=a[c]};e.setIcons=function(b){j=b;if("object"!==typeof j||null==j)j={}};e.alert=function(){var b="",a=h("OK"),c=null;switch(arguments.length){case 1:b=arguments[0];break;case 2:b=arguments[0];"function"==typeof arguments[1]?
|
||||
c=arguments[1]:a=arguments[1];break;case 3:b=arguments[0];a=arguments[1];c=arguments[2];break;default:throw Error("Incorrect number of arguments: expected 1-3");}return e.dialog(b,{label:a,icon:j.OK,callback:c},{onEscape:c})};e.confirm=function(){var b="",a=h("CANCEL"),c=h("CONFIRM"),f=null;switch(arguments.length){case 1:b=arguments[0];break;case 2:b=arguments[0];"function"==typeof arguments[1]?f=arguments[1]:a=arguments[1];break;case 3:b=arguments[0];a=arguments[1];"function"==typeof arguments[2]?
|
||||
f=arguments[2]:c=arguments[2];break;case 4:b=arguments[0];a=arguments[1];c=arguments[2];f=arguments[3];break;default:throw Error("Incorrect number of arguments: expected 1-4");}return e.dialog(b,[{label:a,icon:j.CANCEL,callback:function(){"function"==typeof f&&f(!1)}},{label:c,icon:j.CONFIRM,callback:function(){"function"==typeof f&&f(!0)}}])};e.prompt=function(){var b="",a=h("CANCEL"),c=h("CONFIRM"),f=null,u="";switch(arguments.length){case 1:b=arguments[0];break;case 2:b=arguments[0];"function"==
|
||||
typeof arguments[1]?f=arguments[1]:a=arguments[1];break;case 3:b=arguments[0];a=arguments[1];"function"==typeof arguments[2]?f=arguments[2]:c=arguments[2];break;case 4:b=arguments[0];a=arguments[1];c=arguments[2];f=arguments[3];break;case 5:b=arguments[0];a=arguments[1];c=arguments[2];f=arguments[3];u=arguments[4];break;default:throw Error("Incorrect number of arguments: expected 1-5");}var p=k("<form></form>");p.append("<input autocomplete=off type=text value='"+u+"' />");var d=e.dialog(p,[{label:a,
|
||||
icon:j.CANCEL,callback:function(){"function"==typeof f&&f(null)}},{label:c,icon:j.CONFIRM,callback:function(){"function"==typeof f&&f(p.find("input[type=text]").val())}}],{header:b});d.on("shown",function(){p.find("input[type=text]").focus();p.on("submit",function(a){a.preventDefault();d.find(".btn-primary").click()})});return d};e.modal=function(){var b,a,c,f={onEscape:null,keyboard:!0,backdrop:r};switch(arguments.length){case 1:b=arguments[0];break;case 2:b=arguments[0];"object"==typeof arguments[1]?
|
||||
c=arguments[1]:a=arguments[1];break;case 3:b=arguments[0];a=arguments[1];c=arguments[2];break;default:throw Error("Incorrect number of arguments: expected 1-3");}f.header=a;c="object"==typeof c?k.extend(f,c):f;return e.dialog(b,[],c)};e.dialog=function(b,a,c){var f=null,e="",j=[],c=c||{};null==a?a=[]:"undefined"==typeof a.length&&(a=[a]);for(var d=a.length;d--;){var h=null,i=null,l=null,m="",n=null;if("undefined"==typeof a[d].label&&"undefined"==typeof a[d]["class"]&&"undefined"==typeof a[d].callback){var h=
|
||||
0,i=null,q;for(q in a[d])if(i=q,1<++h)break;1==h&&"function"==typeof a[d][q]&&(a[d].label=i,a[d].callback=a[d][q])}"function"==typeof a[d].callback&&(n=a[d].callback);a[d]["class"]?l=a[d]["class"]:d==a.length-1&&2>=a.length&&(l="btn-primary");h=a[d].label?a[d].label:"Option "+(d+1);a[d].icon&&(m="<i class='"+a[d].icon+"'></i> ");i=a[d].href?a[d].href:"javascript:;";e+="<a data-handler='"+d+"' class='btn "+l+"' href='"+i+"'>"+m+""+h+"</a>";j[d]=n}d=["<div class='bootbox modal' style='overflow:hidden;'>"];
|
||||
if(c.header){l="";if("undefined"==typeof c.headerCloseButton||c.headerCloseButton)l="<a href='javascript:;' class='close'>×</a>";d.push("<div class='modal-header'>"+l+"<h3>"+c.header+"</h3></div>")}d.push("<div class='modal-body'></div>");e&&d.push("<div class='modal-footer'>"+e+"</div>");d.push("</div>");var g=k(d.join("\n"));("undefined"===typeof c.animate?s:c.animate)&&g.addClass("fade");(e="undefined"===typeof c.classes?t:c.classes)&&g.addClass(e);k(".modal-body",g).html(b);g.bind("hidden",
|
||||
function(){g.remove()});g.bind("hide",function(){if("escape"==f&&"function"==typeof c.onEscape)c.onEscape()});k(document).bind("keyup.modal",function(a){27==a.which&&(f="escape")});g.bind("shown",function(){k("a.btn-primary:last",g).focus()});g.on("click",".modal-footer a, a.close",function(b){var c=k(this).data("handler"),d=j[c],e=null;"undefined"!==typeof c&&"undefined"!==typeof a[c].href||(b.preventDefault(),"function"==typeof d&&(e=d()),!1!==e&&(f="button",g.modal("hide")))});null==c.keyboard&&
|
||||
(c.keyboard="function"==typeof c.onEscape);k("body").append(g);g.modal({backdrop:"undefined"===typeof c.backdrop?r:c.backdrop,keyboard:c.keyboard});return g};e.hideAll=function(){k(".bootbox").modal("hide")};e.animate=function(b){s=b};e.backdrop=function(b){r=b};e.classes=function(b){t=b};return e}(window.jQuery);window.bootbox=bootbox;
|
|
@ -31,30 +31,17 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_AddFile extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$document = $this->params['document'];
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
$enablelargefileupload = $this->params['enablelargefileupload'];
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
function js() { /* {{{ */
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
if (document.form1.userfile.value == "") msg.push("<?php printMLText("js_no_file");?>");
|
||||
if (document.form1.name.value == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
if ($("#userfile").val() == "") msg.push("<?php printMLText("js_no_file");?>");
|
||||
if ($("#name").val() == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
<?php
|
||||
if (isset($settings->_strictFormCheck) && $settings->_strictFormCheck) {
|
||||
?>
|
||||
if (document.form1.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
if ($("#comment").val() == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
@ -73,8 +60,29 @@ function checkForm()
|
|||
else
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#fileupload', function(ev){
|
||||
if(checkForm()) return;
|
||||
event.preventDefault();
|
||||
});
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$document = $this->params['document'];
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
$enablelargefileupload = $this->params['enablelargefileupload'];
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
$this->contentHeading(getMLText("linked_files"));
|
||||
?>
|
||||
<div class="alert alert-warning">
|
||||
|
@ -89,7 +97,7 @@ function checkForm()
|
|||
$this->contentContainerStart();
|
||||
?>
|
||||
|
||||
<form action="../op/op.AddFile.php" enctype="multipart/form-data" method="post" name="form1" id="fileupload" onsubmit="return checkForm();">
|
||||
<form action="../op/op.AddFile.php" enctype="multipart/form-data" method="post" name="form1" id="fileupload">
|
||||
<input type="hidden" name="documentid" value="<?php print $document->getId(); ?>">
|
||||
<table class="table-condensed">
|
||||
<tr>
|
||||
|
@ -102,11 +110,11 @@ function checkForm()
|
|||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("name");?>:</td>
|
||||
<td><input type="text" name="name" size="60"></td>
|
||||
<td><input type="text" name="name" id="name" size="60"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("comment");?>:</td>
|
||||
<td><textarea name="comment" rows="4" cols="80"></textarea></td>
|
||||
<td><textarea name="comment" id="comment" rows="4" cols="80"></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
|
|
|
@ -31,6 +31,14 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
|
||||
$this->printFolderChooserJs("form1");
|
||||
$this->printFolderChooserJs("form2");
|
||||
$this->printFolderChooserJs("form3");
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -53,7 +61,7 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style {
|
|||
print "<p>".getMLText("versioning_file_creation_warning")."</p>\n";
|
||||
|
||||
print "<form class=\"form-inline\" action=\"../op/op.CreateVersioningFiles.php\" name=\"form1\">";
|
||||
$this->printFolderChooser("form1",M_READWRITE);
|
||||
$this->printFolderChooserHtml("form1",M_READWRITE);
|
||||
print "<input type='submit' class='btn' name='' value='".getMLText("versioning_file_creation")."'/>";
|
||||
print "</form>\n";
|
||||
|
||||
|
@ -66,7 +74,7 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style {
|
|||
print "<p>".getMLText("archive_creation_warning")."</p>\n";
|
||||
|
||||
print "<form action=\"../op/op.CreateFolderArchive.php\" name=\"form2\">";
|
||||
$this->printFolderChooser("form2",M_READWRITE);
|
||||
$this->printFolderChooserHtml("form2",M_READWRITE);
|
||||
print "<label class=\"checkbox\"><input type=\"checkbox\" name=\"human_readable\" value=\"1\">".getMLText("human_readable")."</label>";
|
||||
print "<input type='submit' class='btn' name='' value='".getMLText("archive_creation")."'/>";
|
||||
print "</form>\n";
|
||||
|
@ -184,7 +192,7 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style {
|
|||
print "<p>".getMLText("files_deletion_warning")."</p>\n";
|
||||
|
||||
print "<form class=\"form-inline\" action=\"../out/out.RemoveFolderFiles.php\" name=\"form3\">";
|
||||
$this->printFolderChooser("form3",M_READWRITE);
|
||||
$this->printFolderChooserHtml("form3",M_READWRITE);
|
||||
print "<input type='submit' class='btn' name='' value='".getMLText("files_deletion")."'/>";
|
||||
print "</form>\n";
|
||||
|
||||
|
|
|
@ -50,6 +50,20 @@ class SeedDMS_Bootstrap_Style extends SeedDMS_View_Common {
|
|||
} /* }}} */
|
||||
|
||||
function htmlStartPage($title="", $bodyClass="", $base="") { /* {{{ */
|
||||
if(method_exists($this, 'js')) {
|
||||
/* We still need unsafe-eval, because printDocumentChooserHtml and
|
||||
* printFolderChooserHtml will include a javascript file with ajax
|
||||
* which is evaled by jquery
|
||||
* X-WebKit-CSP is deprecated, Chrome understands Content-Security-Policy
|
||||
* since version 25+
|
||||
* X-Content-Security-Policy is deprecated, Firefox understands
|
||||
* Content-Security-Policy since version 23+
|
||||
*/
|
||||
$csp_rules = "script-src 'self' 'unsafe-eval';"; // style-src 'self';";
|
||||
foreach (array("X-WebKit-CSP", "X-Content-Security-Policy", "Content-Security-Policy") as $csp) {
|
||||
header($csp . ": " . $csp_rules);
|
||||
}
|
||||
}
|
||||
echo "<!DOCTYPE html>\n";
|
||||
echo "<html lang=\"en\">\n<head>\n";
|
||||
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n";
|
||||
|
@ -94,19 +108,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
|||
echo "<body".(strlen($bodyClass)>0 ? " class=\"".$bodyClass."\"" : "").">\n";
|
||||
if($this->params['session'] && $flashmsg = $this->params['session']->getSplashMsg()) {
|
||||
$this->params['session']->clearSplashMsg();
|
||||
?>
|
||||
<script>
|
||||
noty({
|
||||
text: '<?php echo $flashmsg['msg'] ?>',
|
||||
type: '<?php echo $flashmsg['type'] ?>',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: <?php echo isset($flashmsg['duration']) && is_numeric($flashmsg['duration']) ? $flashmsg['duration'] : ($flashmsg['type'] == "error" ? "3000" : "1500"); ?>,
|
||||
_template: '<div class="noty_message alert alert-block alert-error"><span class="noty_text"></span><div class="noty_close"></div></div>'
|
||||
});
|
||||
</script>
|
||||
<?php
|
||||
echo "<div class=\"splash\" data-type=\"".$flashmsg['type']."\">".$flashmsg['msg']."</div>\n";
|
||||
}
|
||||
} /* }}} */
|
||||
|
||||
|
@ -114,10 +116,12 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
|||
$this->extraheader[$type] .= $head;
|
||||
} /* }}} */
|
||||
|
||||
function htmlEndPage() { /* {{{ */
|
||||
$this->footNote();
|
||||
if($this->params['showmissingtranslations']) {
|
||||
$this->missingḺanguageKeys();
|
||||
function htmlEndPage($nofooter=false) { /* {{{ */
|
||||
if(!$nofooter) {
|
||||
$this->footNote();
|
||||
if($this->params['showmissingtranslations']) {
|
||||
$this->missingḺanguageKeys();
|
||||
}
|
||||
}
|
||||
echo '<script src="../styles/'.$this->theme.'/bootstrap/js/bootstrap.min.js"></script>'."\n";
|
||||
echo '<script src="../styles/'.$this->theme.'/datepicker/js/bootstrap-datepicker.js"></script>'."\n";
|
||||
|
@ -137,6 +141,8 @@ $(document).ready(function () {
|
|||
//]]>
|
||||
</script>";
|
||||
}
|
||||
if(method_exists($this, 'js'))
|
||||
echo '<script src="../out/out.'.$this->params['class'].'.php?action=js&'.$_SERVER['QUERY_STRING'].'"></script>'."\n";
|
||||
echo "</body>\n</html>\n";
|
||||
} /* }}} */
|
||||
|
||||
|
@ -152,18 +158,7 @@ $(document).ready(function () {
|
|||
echo "<tr><td>".$key."</td><td>".$LANG['en_GB'][$key]."</td><td><div class=\"input-append send-missing-translation\"><input name=\"missing-lang-key\" type=\"hidden\" value=\"".$key."\" /><input name=\"missing-lang-lang\" type=\"hidden\" value=\"".$lang."\" /><input type=\"text\" class=\"input-xxlarge\" name=\"missing-lang-translation\" placeholder=\"Your translation in '".$lang."'\"/><a class=\"btn\">Submit</a></div></td></tr>";
|
||||
}
|
||||
echo "</table>";
|
||||
?>
|
||||
<script>
|
||||
noty({
|
||||
text: '<b>There are missing translations on this page!</b><br />Please check the bottom of the page.',
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 5500,
|
||||
});
|
||||
</script>
|
||||
<?php
|
||||
echo "<div class=\"splash\" data-type=\"error\" data-timeout=\"5500\"><b>There are missing translations on this page!</b><br />Please check the bottom of the page.</div>\n";
|
||||
}
|
||||
} /* }}} */
|
||||
|
||||
|
@ -401,7 +396,7 @@ $(document).ready(function () {
|
|||
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
|
||||
echo " <li><a href=\"../out/out.Help.php?context=".$tmp[1]."\">".getMLText("help")."</a></li>\n";
|
||||
echo " </ul>\n";
|
||||
echo " <form action=\"../op/op.Search.php\" class=\"form-inline navbar-search pull-left\" autocomplete=\"off\">";
|
||||
echo " <form action=\"../out/out.Search.php\" class=\"form-inline navbar-search pull-left\" autocomplete=\"off\">";
|
||||
if ($folder!=null && is_object($folder) && !strcasecmp(get_class($folder), $dms->getClassname('folder'))) {
|
||||
echo " <input type=\"hidden\" name=\"folderid\" value=\"".$folder->getID()."\" />";
|
||||
}
|
||||
|
@ -1018,7 +1013,7 @@ $(document).ready(function () {
|
|||
print "</select>";
|
||||
} /* }}} */
|
||||
|
||||
function printDocumentChooser($form, $accessMode=M_READ, $exclude = -1, $default = false, $formname = '', $folder='', $partialtree=0) { /* {{{ */
|
||||
function printDocumentChooserHtml($form, $accessMode=M_READ, $exclude = -1, $default = false, $formname = '', $folder='', $partialtree=0) { /* {{{ */
|
||||
$formid = "docid".$form;
|
||||
if(!$formname)
|
||||
$formname = "docid";
|
||||
|
@ -1044,20 +1039,34 @@ $(document).ready(function () {
|
|||
<button class="btn btn-primary" data-dismiss="modal" aria-hidden="true"><?php printMLText("close") ?></button>
|
||||
</div>
|
||||
</div>
|
||||
<script language="JavaScript">
|
||||
modalDocChooser<?php echo $form ?> = $('#docChooser<?php echo $form ?>');
|
||||
function documentSelected<?php echo $form ?>(id, name) {
|
||||
$('#docid<?php echo $form ?>').val(id);
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printDocumentChooserJs($formName) { /* {{{ */
|
||||
?>
|
||||
modalDocChooser<?php echo $formName ?> = $('#docChooser<?php echo $formName ?>');
|
||||
function documentSelected<?php echo $formName ?>(id, name) {
|
||||
$('#docid<?php echo $formName ?>').val(id);
|
||||
$('#choosedocsearch').val(name);
|
||||
modalDocChooser<?php echo $form ?>.modal('hide');
|
||||
}
|
||||
function folderSelected<?php echo $form ?>(id, name) {
|
||||
}
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printDocumentChooser($formName) { /* {{{ */
|
||||
$this->printDocumentChooserHtml($formName);
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
<?php
|
||||
$this->printDocumentChooserJs($formName);
|
||||
?>
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printFolderChooser($form, $accessMode, $exclude = -1, $default = false, $formname = '') { /* {{{ */
|
||||
function printFolderChooserHtml($form, $accessMode, $exclude = -1, $default = false, $formname = '') { /* {{{ */
|
||||
$formid = "targetid".$form;
|
||||
if(!$formname)
|
||||
$formname = "targetid";
|
||||
|
@ -1079,15 +1088,28 @@ function folderSelected<?php echo $form ?>(id, name) {
|
|||
<button class="btn btn-primary" data-dismiss="modal" aria-hidden="true"><?php printMLText("close") ?></button>
|
||||
</div>
|
||||
</div>
|
||||
<script language="JavaScript">
|
||||
/* Set up a callback which is called when a folder in the tree is selected */
|
||||
modalFolderChooser<?php echo $form ?> = $('#folderChooser<?php echo $form ?>');
|
||||
function folderSelected<?php echo $form ?>(id, name) {
|
||||
$('#<?php echo $formid ?>').val(id);
|
||||
$('#choosefoldersearch<?php echo $form ?>').val(name);
|
||||
modalFolderChooser<?php echo $form ?>.modal('hide');
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printFolderChooserJs($formName) { /* {{{ */
|
||||
?>
|
||||
modalFolderChooser<?php echo $formName ?> = $('#folderChooser<?php echo $formName ?>');
|
||||
function folderSelected<?php echo $formName ?>(id, name) {
|
||||
$('#targetid<?php echo $formName ?>').val(id);
|
||||
$('#choosefoldersearch<?php echo $formName ?>').val(name);
|
||||
modalFolderChooser<?php echo $formName ?>.modal('hide');
|
||||
}
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printFolderChooser($formName, $accessMode, $exclude = -1, $default = false) { /* {{{ */
|
||||
$this->printFolderChooserHtml($formName, $accessMode, $exclude, $default);
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
<?php
|
||||
$this->printFolderChooserJs($formName);
|
||||
?>
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
|
@ -1142,7 +1164,7 @@ function folderSelected<?php echo $form ?>(id, name) {
|
|||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printKeywordChooser($formName, $keywords='', $fieldname='keywords') { /* {{{ */
|
||||
function printKeywordChooserHtml($formName, $keywords='', $fieldname='keywords') { /* {{{ */
|
||||
?>
|
||||
<div class="input-append">
|
||||
<input type="text" name="<?php echo $fieldname; ?>" value="<?php print htmlspecialchars($keywords);?>" />
|
||||
|
@ -1158,12 +1180,31 @@ function folderSelected<?php echo $form ?>(id, name) {
|
|||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-primary" data-dismiss="modal" aria-hidden="true"><?php printMLText("close") ?></button>
|
||||
<button class="btn" data-dismiss="modal" aria-hidden="true" onClick="acceptKeywords();"><i class="icon-save"></i> <?php printMLText("save") ?></button>
|
||||
<button class="btn" data-dismiss="modal" aria-hidden="true" id="acceptkeywords"><i class="icon-save"></i> <?php printMLText("save") ?></button>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printKeywordChooserJs($formName) { /* {{{ */
|
||||
?>
|
||||
$('#acceptkeywords').click(function(ev) {
|
||||
acceptKeywords();
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printKeywordChooser($formName, $keywords='', $fieldname='keywords') { /* {{{ */
|
||||
$this->printKeywordChooserHtml($formName, $keywords, $fieldname);
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
<?php
|
||||
$this->printKeywordChooserJs($formName);
|
||||
?>
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printAttributeEditField($attrdef, $attribute, $fieldname='attributes') { /* {{{ */
|
||||
switch($attrdef->getType()) {
|
||||
case SeedDMS_Core_AttributeDefinition::type_boolean:
|
||||
|
@ -1214,10 +1255,10 @@ function folderSelected<?php echo $form ?>(id, name) {
|
|||
}
|
||||
} /* }}} */
|
||||
|
||||
function printDropFolderChooser($formName, $dropfolderfile="") { /* {{{ */
|
||||
function printDropFolderChooserHtml($formName, $dropfolderfile="") { /* {{{ */
|
||||
print "<div class=\"input-append\">\n";
|
||||
print "<input readonly type=\"text\" id=\"dropfolderfile".$formName."\" name=\"dropfolderfile".$formName."\" value=\"".$dropfolderfile."\">";
|
||||
print "<button type=\"button\" class=\"btn\" onclick=\"javascript:clearFilename".$formName."();\"><i class=\"icon-remove\"></i></button>";
|
||||
print "<button type=\"button\" class=\"btn\" id=\"clearFilename".$formName."\"><i class=\"icon-remove\"></i></button>";
|
||||
print "<a data-target=\"#dropfolderChooser\" href=\"out.DropFolderChooser.php?form=form1&dropfolderfile=".$dropfolderfile."\" role=\"button\" class=\"btn\" data-toggle=\"modal\">".getMLText("choose_target_file")."…</a>\n";
|
||||
print "</div>\n";
|
||||
?>
|
||||
|
@ -1234,7 +1275,11 @@ function folderSelected<?php echo $form ?>(id, name) {
|
|||
<!-- <button class="btn" data-dismiss="modal" aria-hidden="true" onClick="acceptCategories();"><i class="icon-save"></i> <?php printMLText("save") ?></button> -->
|
||||
</div>
|
||||
</div>
|
||||
<script language="JavaScript">
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printDropFolderChooserJs($formName) { /* {{{ */
|
||||
?>
|
||||
/* Set up a callback which is called when a folder in the tree is selected */
|
||||
modalDropfolderChooser = $('#dropfolderChooser');
|
||||
function fileSelected(name) {
|
||||
|
@ -1244,7 +1289,20 @@ function fileSelected(name) {
|
|||
function clearFilename<?php print $formName ?>() {
|
||||
$('#dropfolderfile<?php echo $formName ?>').val('');
|
||||
}
|
||||
</script>
|
||||
$('#clearfilename<?php print $formName ?>').click(function(ev) {
|
||||
$('#dropfolderfile<?php echo $formName ?>').val('');
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printDropFolderChooser($formName, $dropfolderfile="") { /* {{{ */
|
||||
$this->printDropFolderChooserHtml($formName, $dropfolderfile);
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
<?php
|
||||
$this->printDropFolderChooserJs($formName);
|
||||
?>
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
|
@ -1310,6 +1368,21 @@ function clearFilename<?php print $formName ?>() {
|
|||
exit;
|
||||
} /* }}} */
|
||||
|
||||
function printNewTreeNavigation($folderid=0, $accessmode=M_READ, $showdocs=0, $formid='form1', $expandtree=0, $orderby='') { /* {{{ */
|
||||
$this->printNewTreeNavigationHtml($folderid, $accessmode, $showdocs, $formid, $expandtree, $orderby);
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
<?php
|
||||
$this->printNewTreeNavigationJs($folderid, $accessmode, $showdocs, $formid, $expandtree, $orderby);
|
||||
?>
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function printNewTreeNavigationHtml($folderid=0, $accessmode=M_READ, $showdocs=0, $formid='form1', $expandtree=0, $orderby='') { /* {{{ */
|
||||
echo "<div id=\"jqtree".$formid."\" style=\"margin-left: 10px;\" data-url=\"../op/op.Ajax.php?command=subtree&showdocs=".$showdocs."&orderby=".$orderby."\"></div>\n";
|
||||
} /* }}} */
|
||||
|
||||
/**
|
||||
* Create a tree of folders using jqtree.
|
||||
*
|
||||
|
@ -1322,7 +1395,7 @@ function clearFilename<?php print $formName ?>() {
|
|||
* @param boolean $showdocs set to true if tree shall contain documents
|
||||
* as well.
|
||||
*/
|
||||
function printNewTreeNavigation($folderid=0, $accessmode=M_READ, $showdocs=0, $formid='form1', $expandtree=0, $orderby='', $partialtree=false) { /* {{{ */
|
||||
function printNewTreeNavigationJs($folderid=0, $accessmode=M_READ, $showdocs=0, $formid='form1', $expandtree=0, $orderby='', $partialtree=false) { /* {{{ */
|
||||
function jqtree($path, $folder, $user, $accessmode, $showdocs=1, $expandtree=0, $orderby='') {
|
||||
if($path || $expandtree) {
|
||||
if($path)
|
||||
|
@ -1401,9 +1474,7 @@ function clearFilename<?php print $formName ?>() {
|
|||
$tree = array(array('label'=>$root->getName(), 'id'=>$root->getID(), 'load_on_demand'=>true, 'is_folder'=>true));
|
||||
}
|
||||
|
||||
echo "<div id=\"jqtree".$formid."\" style=\"margin-left: 10px;\" data-url=\"../op/op.Ajax.php?command=subtree&showdocs=".$showdocs."&orderby=".$orderby."\"></div>\n";
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
var data = <?php echo json_encode($tree); ?>;
|
||||
$(function() {
|
||||
$('#jqtree<?php echo $formid ?>').tree({
|
||||
|
@ -1441,7 +1512,6 @@ $(function() {
|
|||
}
|
||||
);
|
||||
});
|
||||
</script>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
|
@ -1578,14 +1648,7 @@ $(function() {
|
|||
function printDeleteDocumentButton($document, $msg, $return=false){ /* {{{ */
|
||||
$docid = $document->getID();
|
||||
$content = '';
|
||||
$content .= '<a id="delete-document-btn-'.$docid.'" rel="'.$docid.'" msg="'.getMLText($msg).'"><i class="icon-remove"></i></a>';
|
||||
$this->addFooterJS("
|
||||
$('#delete-document-btn-".$docid."').popover({
|
||||
title: '".getMLText("rm_document")."',
|
||||
placement: 'left',
|
||||
html: true,
|
||||
content: \"<div>".htmlspecialchars(getMLText("confirm_rm_document", array ("documentname" => $document->getName())), ENT_QUOTES)."</div><div><button class='btn btn-danger removedocument' style='float: right; margin:10px 0px;' rel='".$docid."' msg='".getMLText($msg)."' formtoken='".createFormKey('removedocument')."' id='confirm-delete-document-btn-".$docid."'><i class='icon-remove'></i> ".getMLText("rm_document")."</button> <button type='button' class='btn' style='float: right; margin:10px 10px;' onclick='$("#delete-document-btn-".$docid."").popover("hide");'>".getMLText('cancel')."</button></div>\"});
|
||||
");
|
||||
$content .= '<a class="delete-document-btn" rel="'.$docid.'" msg="'.getMLText($msg).'"confirmmsg="'.htmlspecialchars(getMLText("confirm_rm_document", array ("documentname" => $document->getName())), ENT_QUOTES).'"><i class="icon-remove"></i></a>';
|
||||
if($return)
|
||||
return $content;
|
||||
else
|
||||
|
@ -1593,6 +1656,56 @@ $('#delete-document-btn-".$docid."').popover({
|
|||
return '';
|
||||
} /* }}} */
|
||||
|
||||
function printDeleteDocumentButtonJs(){ /* {{{ */
|
||||
echo "
|
||||
$(document).ready(function () {
|
||||
$('.delete-document-btn').click(function(ev) {
|
||||
id = $(ev.currentTarget).attr('rel');
|
||||
confirmmsg = $(ev.currentTarget).attr('confirmmsg');
|
||||
msg = $(ev.currentTarget).attr('msg');
|
||||
formtoken = '".createFormKey('removedocument')."';
|
||||
bootbox.dialog(confirmmsg, [{
|
||||
\"label\" : \"<i class='icon-remove'></i> ".getMLText("rm_document")."\",
|
||||
\"class\" : \"btn-danger\",
|
||||
\"callback\": function() {
|
||||
$.get('../op/op.Ajax.php',
|
||||
{ command: 'deletedocument', id: id, formtoken: formtoken },
|
||||
function(data) {
|
||||
if(data.success) {
|
||||
$('#table-row-document-'+id).hide('slow');
|
||||
noty({
|
||||
text: msg,
|
||||
type: 'success',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 1500,
|
||||
});
|
||||
} else {
|
||||
noty({
|
||||
text: data.message,
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 3500,
|
||||
});
|
||||
}
|
||||
},
|
||||
'json'
|
||||
);
|
||||
}
|
||||
}, {
|
||||
\"label\" : \"".getMLText("cancel")."\",
|
||||
\"class\" : \"btn-cancel\",
|
||||
\"callback\": function() {
|
||||
}
|
||||
}]);
|
||||
});
|
||||
});
|
||||
";
|
||||
} /* }}} */
|
||||
|
||||
/**
|
||||
* Print button with link for deleting a folder
|
||||
*
|
||||
|
@ -1607,14 +1720,7 @@ $('#delete-document-btn-".$docid."').popover({
|
|||
function printDeleteFolderButton($folder, $msg, $return=false){ /* {{{ */
|
||||
$folderid = $folder->getID();
|
||||
$content = '';
|
||||
$content .= '<a id="delete-folder-btn-'.$folderid.'" rel="'.$folderid.'" msg="'.getMLText($msg).'"><i class="icon-remove"></i></a>';
|
||||
$this->addFooterJS("
|
||||
$('#delete-folder-btn-".$folderid."').popover({
|
||||
title: '".getMLText("rm_folder")."',
|
||||
placement: 'left',
|
||||
html: true,
|
||||
content: \"<div>".htmlspecialchars(getMLText("confirm_rm_folder", array ("foldername" => $folder->getName())), ENT_QUOTES)."</div><div><button class='btn btn-danger removefolder' style='float: right; margin:10px 0px;' rel='".$folderid."' msg='".getMLText($msg)."' formtoken='".createFormKey('removefolder')."' id='confirm-delete-folder-btn-".$folderid."'><i class='icon-remove'></i> ".getMLText("rm_folder")."</button> <button type='button' class='btn' style='float: right; margin:10px 10px;' onclick='$("#delete-folder-btn-".$folderid."").popover("hide");'>".getMLText('cancel')."</button></div>\"});
|
||||
");
|
||||
$content .= '<a class="delete-folder-btn" rel="'.$folderid.'" msg="'.getMLText($msg).'" confirmmsg="'.htmlspecialchars(getMLText("confirm_rm_folder", array ("foldername" => $folder->getName())), ENT_QUOTES).'"><i class="icon-remove"></i></a>';
|
||||
if($return)
|
||||
return $content;
|
||||
else
|
||||
|
@ -1622,6 +1728,56 @@ $('#delete-folder-btn-".$folderid."').popover({
|
|||
return '';
|
||||
} /* }}} */
|
||||
|
||||
function printDeleteFolderButtonJs(){ /* {{{ */
|
||||
echo "
|
||||
$(document).ready(function () {
|
||||
$('.delete-folder-btn').click(function(ev) {
|
||||
id = $(ev.currentTarget).attr('rel');
|
||||
confirmmsg = $(ev.currentTarget).attr('confirmmsg');
|
||||
msg = $(ev.currentTarget).attr('msg');
|
||||
formtoken = '".createFormKey('removefolder')."';
|
||||
bootbox.dialog(confirmmsg, [{
|
||||
\"label\" : \"<i class='icon-remove'></i> ".getMLText("rm_folder")."\",
|
||||
\"class\" : \"btn-danger\",
|
||||
\"callback\": function() {
|
||||
$.get('../op/op.Ajax.php',
|
||||
{ command: 'deletefolder', id: id, formtoken: formtoken },
|
||||
function(data) {
|
||||
if(data.success) {
|
||||
$('#table-row-folder-'+id).hide('slow');
|
||||
noty({
|
||||
text: msg,
|
||||
type: 'success',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 1500,
|
||||
});
|
||||
} else {
|
||||
noty({
|
||||
text: data.message,
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
timeout: 3500,
|
||||
});
|
||||
}
|
||||
},
|
||||
'json'
|
||||
);
|
||||
}
|
||||
}, {
|
||||
\"label\" : \"".getMLText("cancel")."\",
|
||||
\"class\" : \"btn-cancel\",
|
||||
\"callback\": function() {
|
||||
}
|
||||
}]);
|
||||
});
|
||||
});
|
||||
";
|
||||
} /* }}} */
|
||||
|
||||
function printLockButton($document, $msglock, $msgunlock, $return=false) { /* {{{ */
|
||||
$docid = $document->getID();
|
||||
if($document->isLocked()) {
|
||||
|
@ -2262,11 +2418,10 @@ mayscript>
|
|||
*
|
||||
* @param object $document document
|
||||
*/
|
||||
protected function printTimeline($timelineurl, $height=300, $start='', $end='', $skip=array()) { /* {{{ */
|
||||
protected function printTimelineJs($timelineurl, $height=300, $start='', $end='', $skip=array()) { /* {{{ */
|
||||
if(!$timelineurl)
|
||||
return;
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
var timeline;
|
||||
var data;
|
||||
|
||||
|
@ -2315,10 +2470,20 @@ mayscript>
|
|||
}
|
||||
);
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
</script>
|
||||
protected function printTimelineHtml($height) { /* {{{ */
|
||||
?>
|
||||
<div id="timeline" style="height: <?= $height ?>px;"></div>
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
protected function printTimeline($timelineurl, $height=300, $start='', $end='', $skip=array()) { /* {{{ */
|
||||
echo "<script type=\"text/javascript\">\n";
|
||||
$this->printTimelineJs($timelineurl, $height, $start, $end, $skip);
|
||||
echo "</script>";
|
||||
$this->printTimelineHtml($height);
|
||||
} /* }}} */
|
||||
}
|
||||
?>
|
||||
|
|
|
@ -30,68 +30,14 @@ require_once("class.Bootstrap.php");
|
|||
* @version Release: @package_version@
|
||||
*/
|
||||
class SeedDMS_View_Charts extends SeedDMS_Bootstrap_Style {
|
||||
var $dms;
|
||||
var $folder_count;
|
||||
var $document_count;
|
||||
var $file_count;
|
||||
var $storage_size;
|
||||
|
||||
function show() { /* {{{ */
|
||||
$this->dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$rootfolder = $this->params['rootfolder'];
|
||||
function js() { /* {{{ */
|
||||
$data = $this->params['data'];
|
||||
$type = $this->params['type'];
|
||||
|
||||
$this->htmlAddHeader(
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.min.js"></script>'."\n".
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.pie.min.js"></script>'."\n".
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.categories.min.js"></script>'."\n".
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.time.min.js"></script>'."\n");
|
||||
|
||||
$this->htmlStartPage(getMLText("folders_and_documents_statistic"));
|
||||
$this->globalNavigation();
|
||||
$this->contentStart();
|
||||
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
|
||||
header('Content-Type: application/json');
|
||||
|
||||
?>
|
||||
|
||||
<?php
|
||||
echo "<div class=\"row-fluid\">\n";
|
||||
|
||||
echo "<div class=\"span3\">\n";
|
||||
$this->contentHeading(getMLText("chart_selection"));
|
||||
echo "<div class=\"well\">\n";
|
||||
foreach(array('docsperuser', 'sizeperuser', 'docspermimetype', 'docspercategory', 'docsperstatus', 'docspermonth', 'docsaccumulated') as $atype) {
|
||||
echo "<div><a href=\"?type=".$atype."\">".getMLText('chart_'.$atype.'_title')."</a></div>\n";
|
||||
}
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
if(in_array($type, array('docspermonth', 'docsaccumulated'))) {
|
||||
echo "<div class=\"span9\">\n";
|
||||
} else {
|
||||
echo "<div class=\"span6\">\n";
|
||||
}
|
||||
$this->contentHeading(getMLText('chart_'.$type.'_title'));
|
||||
echo "<div class=\"well\">\n";
|
||||
?>
|
||||
<div id="chart" style="height: 400px;" class="chart"></div>
|
||||
<?php
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
if(!in_array($type, array('docspermonth', 'docsaccumulated'))) {
|
||||
echo "<div class=\"span3\">\n";
|
||||
$this->contentHeading(getMLText('legend'));
|
||||
echo "<div class=\"well\" id=\"legend\">\n";
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
}
|
||||
|
||||
echo "</div>\n";
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
$("<div id='tooltip'></div>").css({
|
||||
position: "absolute",
|
||||
display: "none",
|
||||
|
@ -235,9 +181,62 @@ $(document).ready( function() {
|
|||
});
|
||||
<?php
|
||||
}
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$this->dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$rootfolder = $this->params['rootfolder'];
|
||||
$data = $this->params['data'];
|
||||
$type = $this->params['type'];
|
||||
|
||||
$this->htmlAddHeader(
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.min.js"></script>'."\n".
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.pie.min.js"></script>'."\n".
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.categories.min.js"></script>'."\n".
|
||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.time.min.js"></script>'."\n");
|
||||
|
||||
$this->htmlStartPage(getMLText("folders_and_documents_statistic"));
|
||||
$this->globalNavigation();
|
||||
$this->contentStart();
|
||||
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
|
||||
|
||||
?>
|
||||
</script>
|
||||
|
||||
<?php
|
||||
echo "<div class=\"row-fluid\">\n";
|
||||
|
||||
echo "<div class=\"span3\">\n";
|
||||
$this->contentHeading(getMLText("chart_selection"));
|
||||
echo "<div class=\"well\">\n";
|
||||
foreach(array('docsperuser', 'sizeperuser', 'docspermimetype', 'docspercategory', 'docsperstatus', 'docspermonth', 'docsaccumulated') as $atype) {
|
||||
echo "<div><a href=\"?type=".$atype."\">".getMLText('chart_'.$atype.'_title')."</a></div>\n";
|
||||
}
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
if(in_array($type, array('docspermonth', 'docsaccumulated'))) {
|
||||
echo "<div class=\"span9\">\n";
|
||||
} else {
|
||||
echo "<div class=\"span6\">\n";
|
||||
}
|
||||
$this->contentHeading(getMLText('chart_'.$type.'_title'));
|
||||
echo "<div class=\"well\">\n";
|
||||
?>
|
||||
<div id="chart" style="height: 400px;" class="chart"></div>
|
||||
<?php
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
if(!in_array($type, array('docspermonth', 'docsaccumulated'))) {
|
||||
echo "<div class=\"span3\">\n";
|
||||
$this->contentHeading(getMLText('legend'));
|
||||
echo "<div class=\"well\" id=\"legend\">\n";
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
}
|
||||
|
||||
echo "</div>\n";
|
||||
|
||||
$this->contentContainerEnd();
|
||||
$this->htmlEndPage();
|
||||
|
|
|
@ -40,23 +40,9 @@ class SeedDMS_View_DocumentAccess extends SeedDMS_Bootstrap_Style {
|
|||
print "</select>\n";
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$document = $this->params['document'];
|
||||
$folder = $this->params['folder'];
|
||||
$allUsers = $this->params['allusers'];
|
||||
$allGroups = $this->params['allgroups'];
|
||||
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
?>
|
||||
|
||||
<script language="JavaScript">
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
|
@ -78,9 +64,29 @@ function checkForm()
|
|||
else
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#form1', function(ev){
|
||||
if(checkForm()) return;
|
||||
event.preventDefault();
|
||||
});
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$document = $this->params['document'];
|
||||
$folder = $this->params['folder'];
|
||||
$allUsers = $this->params['allusers'];
|
||||
$allGroups = $this->params['allgroups'];
|
||||
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
$this->contentHeading(getMLText("edit_document_access"));
|
||||
$this->contentContainerStart();
|
||||
|
@ -233,7 +239,7 @@ function checkForm()
|
|||
print "</table><br>";
|
||||
}
|
||||
?>
|
||||
<form action="../op/op.DocumentAccess.php" name="form1" onsubmit="return checkForm();">
|
||||
<form action="../op/op.DocumentAccess.php" name="form1" id="form1">
|
||||
<?php echo createHiddenFieldWithKey('documentaccess'); ?>
|
||||
<input type="Hidden" name="documentid" value="<?php print $document->getId()?>">
|
||||
<input type="Hidden" name="action" value="addaccess">
|
||||
|
|
|
@ -31,6 +31,15 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_DocumentChooser extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function js() { /* {{{ */
|
||||
$folder = $this->params['folder'];
|
||||
$form = $this->params['form'];
|
||||
$partialtree = $this->params['partialtree'];
|
||||
|
||||
header('Content-Type: application/json');
|
||||
$this->printNewTreeNavigationJs($folder->getID(), M_READ, 1, $form, 0, '', $partialtree);
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -38,11 +47,13 @@ class SeedDMS_View_DocumentChooser extends SeedDMS_Bootstrap_Style {
|
|||
$form = $this->params['form'];
|
||||
$partialtree = $this->params['partialtree'];
|
||||
|
||||
$this->htmlStartPage(getMLText("choose_target_document"));
|
||||
$this->contentContainerStart();
|
||||
$this->printNewTreeNavigation($folder->getID(), M_READ, 1, $form, 0, '', $partialtree);
|
||||
$this->contentContainerEnd();
|
||||
echo "</body>\n</html>\n";
|
||||
// $this->htmlStartPage(getMLText("choose_target_document"));
|
||||
// $this->contentContainerStart();
|
||||
// $this->printNewTreeNavigationHtml($folder->getID(), M_READ, 1, $form);
|
||||
$this->printNewTreeNavigationHtml($folder->getID(), M_READ, 1, $form, 0, '', $partialtree);
|
||||
echo '<script src="../out/out.DocumentChooser.php?action=js&'.$_SERVER['QUERY_STRING'].'"></script>'."\n";
|
||||
// $this->contentContainerEnd();
|
||||
// $this->htmlEndPage(true);
|
||||
} /* }}} */
|
||||
}
|
||||
?>
|
||||
|
|
|
@ -31,22 +31,9 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_DocumentNotify extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$document = $this->params['document'];
|
||||
$sortusersinlist = $this->params['sortusersinlist'];
|
||||
|
||||
$notifyList = $document->getNotifyList();
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
|
@ -67,9 +54,30 @@ function checkForm()
|
|||
else
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#form1', function(ev){
|
||||
if(checkForm()) return;
|
||||
event.preventDefault();
|
||||
});
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$document = $this->params['document'];
|
||||
$sortusersinlist = $this->params['sortusersinlist'];
|
||||
|
||||
$notifyList = $document->getNotifyList();
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
$this->contentHeading(getMLText("edit_existing_notify"));
|
||||
$this->contentContainerStart();
|
||||
|
||||
|
@ -107,7 +115,7 @@ function checkForm()
|
|||
?>
|
||||
<br>
|
||||
|
||||
<form action="../op/op.DocumentNotify.php" name="form1" onsubmit="return checkForm();">
|
||||
<form action="../op/op.DocumentNotify.php" name="form1" id="form1">
|
||||
<input type="hidden" name="documentid" value="<?php print $document->getID()?>">
|
||||
<input type="hidden" name="action" value="addnotify">
|
||||
<table class="table-condensed">
|
||||
|
|
|
@ -31,6 +31,15 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_DropFolderChooser extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function js() { /* {{{ */
|
||||
?>
|
||||
$('#fileselect').click(function(ev) {
|
||||
attr_filename = $(ev.currentTarget).attr('filename');
|
||||
fileSelected(attr_filename);
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -75,12 +84,13 @@ var targetName = document.<?php echo $form?>.dropfolderfile<?php print $form ?>;
|
|||
if($previewer->hasRawPreview($dir.'/'.$entry, 'dropfolder/')) {
|
||||
echo "<img class=\"mimeicon\" width=\"".$previewwidth."\"src=\"../op/op.DropFolderPreview.php?filename=".$entry."&width=".$previewwidth."\" title=\"".htmlspecialchars($mimetype)."\">";
|
||||
}
|
||||
echo "</td><td><span style=\"cursor: pointer;\" onClick=\"fileSelected('".$entry."');\">".$entry."</span></td><td align=\"right\">".SeedDMS_Core_File::format_filesize(filesize($dir.'/'.$entry))."</td><td>".date('Y-m-d H:i:s', filectime($dir.'/'.$entry))."</td></tr>\n";
|
||||
echo "</td><td><span style=\"cursor: pointer;\" id=\"fileselect\" filename=\"".$entry."\" _onClick=\"fileSelected('".$entry."');\">".$entry."</span></td><td align=\"right\">".SeedDMS_Core_File::format_filesize(filesize($dir.'/'.$entry))."</td><td>".date('Y-m-d H:i:s', filectime($dir.'/'.$entry))."</td></tr>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
echo "</tbody>\n";
|
||||
echo "</table>\n";
|
||||
echo '<script src="../out/out.DropFolderChooser.php?action=js&'.$_SERVER['QUERY_STRING'].'"></script>'."\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -31,31 +31,19 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_EditDocument extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$document = $this->params['document'];
|
||||
$attrdefs = $this->params['attrdefs'];
|
||||
function js() { /* {{{ */
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
$orderby = $this->params['orderby'];
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
$this->printKeywordChooserJs();
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
if (document.form1.name.value == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
if ($("#name").val() == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
<?php
|
||||
if ($strictformcheck) {
|
||||
?>
|
||||
if (document.form1.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
if (document.form1.keywords.value == "") msg.push("<?php printMLText("js_no_keywords");?>");
|
||||
if ($("#comment").val() == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
if ($("#keywords").val() == "") msg.push("<?php printMLText("js_no_keywords");?>");
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
@ -74,9 +62,30 @@ function checkForm()
|
|||
else
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#form1', function(ev){
|
||||
if(checkForm()) return;
|
||||
event.preventDefault();
|
||||
});
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$document = $this->params['document'];
|
||||
$attrdefs = $this->params['attrdefs'];
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
$orderby = $this->params['orderby'];
|
||||
|
||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||
$this->globalNavigation($folder);
|
||||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
|
||||
$this->contentHeading(getMLText("edit_document_props"));
|
||||
$this->contentContainerStart();
|
||||
|
||||
|
@ -85,22 +94,22 @@ function checkForm()
|
|||
else
|
||||
$expdate = '';
|
||||
?>
|
||||
<form action="../op/op.EditDocument.php" name="form1" onsubmit="return checkForm();" method="post">
|
||||
<form action="../op/op.EditDocument.php" name="form1" id="form1" method="post">
|
||||
<input type="hidden" name="documentid" value="<?php echo $document->getID() ?>">
|
||||
<table cellpadding="3">
|
||||
<tr>
|
||||
<td class="inputDescription"><?php printMLText("name");?>:</td>
|
||||
<td><input type="text" name="name" value="<?php print htmlspecialchars($document->getName());?>" size="60"></td>
|
||||
<td><input type="text" name="name" id="name" value="<?php print htmlspecialchars($document->getName());?>" size="60"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" class="inputDescription"><?php printMLText("comment");?>:</td>
|
||||
<td><textarea name="comment" rows="4" cols="80"><?php print htmlspecialchars($document->getComment());?></textarea></td>
|
||||
<td><textarea name="comment" id="comment" rows="4" cols="80"><?php print htmlspecialchars($document->getComment());?></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" class="inputDescription"><?php printMLText("keywords");?>:</td>
|
||||
<td class="standardText">
|
||||
<?php
|
||||
$this->printKeywordChooser('form1', $document->getKeywords());
|
||||
$this->printKeywordChooserHtml('form1', $document->getKeywords());
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
@ -31,6 +31,15 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_FolderChooser extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function js() { /* {{{ */
|
||||
$rootfolderid = $this->params['rootfolderid'];
|
||||
$form = $this->params['form'];
|
||||
$mode = $this->params['mode'];
|
||||
|
||||
header('Content-Type: application/json');
|
||||
$this->printNewTreeNavigationJs($rootfolderid, $mode, 0, $form);
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -39,11 +48,16 @@ class SeedDMS_View_FolderChooser extends SeedDMS_Bootstrap_Style {
|
|||
$form = $this->params['form'];
|
||||
$rootfolderid = $this->params['rootfolderid'];
|
||||
|
||||
$this->htmlStartPage(getMLText("choose_target_folder"));
|
||||
$this->contentContainerStart();
|
||||
$this->printNewTreeNavigation($rootfolderid, $mode, 0, $form);
|
||||
$this->contentContainerEnd();
|
||||
echo "</body>\n</html>\n";
|
||||
// $this->htmlStartPage(getMLText("choose_target_folder"));
|
||||
// $this->contentContainerStart();
|
||||
if(1) {
|
||||
$this->printNewTreeNavigationHtml($rootfolderid, $mode, 0, $form);
|
||||
echo '<script src="../out/out.FolderChooser.php?action=js&'.$_SERVER['QUERY_STRING'].'"></script>'."\n";
|
||||
} else {
|
||||
$this->printNewTreeNavigation($rootfolderid, $mode, 0, $form);
|
||||
}
|
||||
// $this->contentContainerEnd();
|
||||
// $this->htmlEndPage(true);
|
||||
} /* }}} */
|
||||
}
|
||||
?>
|
||||
|
|
|
@ -31,36 +31,24 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_GroupMgr extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
function js() { /* {{{ */
|
||||
$selgroup = $this->params['selgroup'];
|
||||
$allUsers = $this->params['allusers'];
|
||||
$allGroups = $this->params['allgroups'];
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
|
||||
$this->htmlStartPage(getMLText("admin_tools"));
|
||||
$this->globalNavigation();
|
||||
$this->contentStart();
|
||||
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
|
||||
|
||||
header("Content-type: text/javascript");
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
|
||||
function checkForm1(num) {
|
||||
function checkForm1() {
|
||||
msg = new Array();
|
||||
eval("var formObj = document.form" + num + "_1;");
|
||||
|
||||
if (formObj.name.value == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
if($("#name").val() == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
<?php
|
||||
if ($strictformcheck) {
|
||||
?>
|
||||
if (formObj.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
if($("#comment").val() == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
if (msg != "")
|
||||
{
|
||||
if (msg != "") {
|
||||
noty({
|
||||
text: msg.join('<br />'),
|
||||
type: 'error',
|
||||
|
@ -70,117 +58,133 @@ function checkForm1(num) {
|
|||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
}
|
||||
else
|
||||
} else
|
||||
return true;
|
||||
}
|
||||
|
||||
function checkForm2(num) {
|
||||
function checkForm2() {
|
||||
msg = "";
|
||||
eval("var formObj = document.form" + num + "_2;");
|
||||
|
||||
if (formObj.userid.options[formObj.userid.selectedIndex].value == -1) msg += "<?php printMLText("js_select_user");?>\n";
|
||||
if($("#userid").val() == -1) msg += "<?php printMLText("js_select_user");?>\n";
|
||||
|
||||
if (msg != "")
|
||||
{
|
||||
noty({
|
||||
text: msg,
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
if (msg != "") {
|
||||
noty({
|
||||
text: msg,
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
} else
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
obj = -1;
|
||||
function showUser(selectObj) {
|
||||
if (obj != -1)
|
||||
obj.style.display = "none";
|
||||
|
||||
id = selectObj.options[selectObj.selectedIndex].value;
|
||||
if (id == -1)
|
||||
return;
|
||||
|
||||
obj = document.getElementById("keywords" + id);
|
||||
obj.style.display = "";
|
||||
}
|
||||
</script>
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#form_1', function(ev){
|
||||
if(checkForm1())
|
||||
return;
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
$('body').on('submit', '#form_2', function(ev){
|
||||
if(checkForm2())
|
||||
return;
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
$( "#selector" ).change(function() {
|
||||
$('div.ajax').trigger('update', {groupid: $(this).val()});
|
||||
});
|
||||
});
|
||||
<?php
|
||||
$this->contentHeading(getMLText("group_management"));
|
||||
} /* }}} */
|
||||
|
||||
function info() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$selgroup = $this->params['selgroup'];
|
||||
$cachedir = $this->params['cachedir'];
|
||||
$previewwidth = $this->params['previewWidthList'];
|
||||
|
||||
if($selgroup) {
|
||||
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth);
|
||||
$this->contentHeading(getMLText("group_info"));
|
||||
echo "<table class=\"table table-condensed\">\n";
|
||||
$reviewstatus = $selgroup->getReviewStatus();
|
||||
$i = 0;
|
||||
foreach($reviewstatus as $rv) {
|
||||
if($rv['status'] == 0) {
|
||||
$i++;
|
||||
/*
|
||||
$document = $dms->getDocument($rv['documentID']);
|
||||
$latestContent = $document->getLatestContent();
|
||||
$previewer->createPreview($latestContent);
|
||||
echo "<tr>";
|
||||
print "<td><a href=\"../op/op.Download.php?documentid=".$res["documentID"]."&version=".$res["version"]."\">";
|
||||
if($previewer->hasPreview($latestContent)) {
|
||||
print "<img class=\"mimeicon\" width=\"".$previewwidth."\"src=\"../op/op.Preview.php?documentid=".$document->getID()."&version=".$latestContent->getVersion()."&width=".$previewwidth."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">";
|
||||
} else {
|
||||
print "<img class=\"mimeicon\" src=\"".$this->getMimeIcon($latestContent->getFileType())."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">";
|
||||
}
|
||||
print "</a></td>";
|
||||
print "<td><a href=\"out.ViewDocument.php?documentid=".$document->getID()."¤ttab=revapp\">".htmlspecialchars($document->getName())."</a></td>";
|
||||
echo "</tr>";
|
||||
*/
|
||||
}
|
||||
}
|
||||
echo "<tr><td>".getMLText('pending_reviews')."</td><td>".$i."</td></tr>";
|
||||
$approvalstatus = $selgroup->getApprovalStatus();
|
||||
$i = 0;
|
||||
foreach($approvalstatus as $rv) {
|
||||
if($rv['status'] == 0) {
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
echo "<tr><td>".getMLText('pending_approvals')."</td><td>".$i."</td></tr>";
|
||||
echo "</table>";
|
||||
}
|
||||
} /* }}} */
|
||||
|
||||
function showGroupForm($group) { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$allUsers = $this->params['allusers'];
|
||||
$groups = $this->params['allgroups'];
|
||||
?>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span4">
|
||||
<div class="well">
|
||||
<?php echo getMLText("selection")?>:
|
||||
<select onchange="showUser(this)" id="selector" class="span9">
|
||||
<option value="-1"><?php echo getMLText("choose_group")?>
|
||||
<option value="0"><?php echo getMLText("add_group")?>
|
||||
<form action="../op/op.GroupMgr.php" name="form_1" id="form_1" method="post">
|
||||
<?php
|
||||
if($group) {
|
||||
echo createHiddenFieldWithKey('editgroup');
|
||||
?>
|
||||
<input type="hidden" name="groupid" value="<?php print $group->getID();?>">
|
||||
<input type="hidden" name="action" value="editgroup">
|
||||
<?php
|
||||
} else {
|
||||
echo createHiddenFieldWithKey('addgroup');
|
||||
?>
|
||||
<input type="hidden" name="action" value="addgroup">
|
||||
<?php
|
||||
$selected=0;
|
||||
$count=2;
|
||||
foreach ($allGroups as $group) {
|
||||
if ($selgroup && $group->getID()==$selgroup->getID()) $selected=$count;
|
||||
print "<option value=\"".$group->getID()."\">" . htmlspecialchars($group->getName());
|
||||
$count++;
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="span8">
|
||||
<div class="well">
|
||||
<table class="table-condensed">
|
||||
<tr>
|
||||
<td id="keywords0" style="display : none;">
|
||||
|
||||
<form action="../op/op.GroupMgr.php" name="form0_1" method="post" onsubmit="return checkForm1('0');">
|
||||
<?php echo createHiddenFieldWithKey('addgroup'); ?>
|
||||
<input type="Hidden" name="action" value="addgroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td><?php printMLText("name");?>:</td>
|
||||
<td><input type="text" name="name"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("comment");?>:</td>
|
||||
<td><textarea name="comment" rows="4" cols="50"></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><input type="submit" class="btn" value="<?php printMLText("add_group");?>"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
</td>
|
||||
|
||||
<?php
|
||||
foreach ($allGroups as $group) {
|
||||
print "<td id=\"keywords".$group->getID()."\" style=\"display : none;\">";
|
||||
<table class="table-condensed">
|
||||
<?php
|
||||
if($group) {
|
||||
?>
|
||||
<form action="../op/op.GroupMgr.php" name="form<?php print $group->getID();?>_1" method="post" onsubmit="return checkForm1('<?php print $group->getID();?>');">
|
||||
<?php echo createHiddenFieldWithKey('editgroup'); ?>
|
||||
<input type="Hidden" name="groupid" value="<?php print $group->getID();?>">
|
||||
<input type="Hidden" name="action" value="editgroup">
|
||||
<table>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><a href="../out/out.RemoveGroup.php?groupid=<?php print $group->getID();?>" class="btn"><i class="icon-remove"></i> <?php printMLText("rm_group");?></a></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td><?php printMLText("name");?>:</td>
|
||||
<td><input type="text" name="name" value="<?php print htmlspecialchars($group->getName());?>"></td>
|
||||
<td><input type="text" name="name" id="name" value="<?php print $group ? htmlspecialchars($group->getName()) : '';?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("comment");?>:</td>
|
||||
<td><textarea name="comment" rows="4" cols="50"><?php print htmlspecialchars($group->getComment());?></textarea></td>
|
||||
<td><textarea name="comment" id="comment" rows="4" cols="50"><?php print $group ? htmlspecialchars($group->getComment()) : '';?></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
|
@ -189,6 +193,7 @@ function showUser(selectObj) {
|
|||
</table>
|
||||
</form>
|
||||
<?php
|
||||
if($group) {
|
||||
$this->contentSubHeading(getMLText("group_members"));
|
||||
?>
|
||||
<table class="table-condensed">
|
||||
|
@ -218,14 +223,14 @@ function showUser(selectObj) {
|
|||
$this->contentSubHeading(getMLText("add_member"));
|
||||
?>
|
||||
|
||||
<form class="form-inline" action="../op/op.GroupMgr.php" method="POST" name="form<?php print $group->getID();?>_2" onsubmit="return checkForm2('<?php print $group->getID();?>');">
|
||||
<form class="form-inline" action="../op/op.GroupMgr.php" method="POST" name="form_2" id="form_2" _onsubmit="return checkForm2('<?php print $group->getID();?>');">
|
||||
<?php echo createHiddenFieldWithKey('addmember'); ?>
|
||||
<input type="Hidden" name="action" value="addmember">
|
||||
<input type="Hidden" name="groupid" value="<?php print $group->getID();?>">
|
||||
<table class="table-condensed">
|
||||
<tr>
|
||||
<td>
|
||||
<select name="userid">
|
||||
<select name="userid" id="userid">
|
||||
<option value="-1"><?php printMLText("select_one");?>
|
||||
<?php
|
||||
foreach ($allUsers as $currUser)
|
||||
|
@ -243,23 +248,56 @@ function showUser(selectObj) {
|
|||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</td>
|
||||
<?php } ?>
|
||||
<?php
|
||||
}
|
||||
} /* }}} */
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
function form() { /* {{{ */
|
||||
$selgroup = $this->params['selgroup'];
|
||||
|
||||
$this->showGroupForm($selgroup);
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$selgroup = $this->params['selgroup'];
|
||||
$allUsers = $this->params['allusers'];
|
||||
$allGroups = $this->params['allgroups'];
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
|
||||
$this->htmlStartPage(getMLText("admin_tools"));
|
||||
$this->globalNavigation();
|
||||
$this->contentStart();
|
||||
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
|
||||
|
||||
$this->contentHeading(getMLText("group_management"));
|
||||
?>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span4">
|
||||
<div class="well">
|
||||
<?php echo getMLText("selection")?>:
|
||||
<select class="chzn-select" id="selector" class="span9">
|
||||
<option value="-1"><?php echo getMLText("choose_group")?>
|
||||
<option value="0"><?php echo getMLText("add_group")?>
|
||||
<?php
|
||||
foreach ($allGroups as $group) {
|
||||
print "<option value=\"".$group->getID()."\" ".($selgroup && $group->getID()==$selgroup->getID() ? 'selected' : '').">" . htmlspecialchars($group->getName());
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="ajax" data-view="GroupMgr" data-action="info" <?php echo ($selgroup ? "data-query=\"groupid=".$selgroup->getID()."\"" : "") ?>></div>
|
||||
</div>
|
||||
|
||||
<div class="span8">
|
||||
<div class="well">
|
||||
<div class="ajax" data-view="GroupMgr" data-action="form" <?php echo ($selgroup ? "data-query=\"groupid=".$selgroup->getID()."\"" : "") ?>></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script language="JavaScript">
|
||||
|
||||
sel = document.getElementById("selector");
|
||||
sel.selectedIndex=<?php print $selected ?>;
|
||||
showUser(sel);
|
||||
|
||||
</script>
|
||||
|
||||
<?php
|
||||
$this->contentContainerEnd();
|
||||
$this->htmlEndPage();
|
||||
|
|
|
@ -31,15 +31,10 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_KeywordChooser extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$categories = $this->params['categories'];
|
||||
function js() { /* {{{ */
|
||||
$form = $this->params['form'];
|
||||
|
||||
// $this->htmlStartPage(getMLText("use_default_keywords"));
|
||||
header('Content-Type: application/json');
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
var targetObj = document.<?php echo $form ?>.keywords;
|
||||
var myTA;
|
||||
|
||||
|
@ -89,7 +84,34 @@ function showKeywords(which) {
|
|||
obj[which] = document.getElementById("keywords" + id);
|
||||
obj[which].style.display = "";
|
||||
}
|
||||
</script>
|
||||
|
||||
$('#categories0').change(function(ev) {
|
||||
showKeywords(0);
|
||||
});
|
||||
|
||||
$('#categories1').change(function(ev) {
|
||||
showKeywords(1);
|
||||
});
|
||||
|
||||
$('.insertkeyword').click(function(ev) {
|
||||
attr_keyword = $(ev.currentTarget).attr('keyword');
|
||||
insertKeywords(attr_keyword);
|
||||
});
|
||||
|
||||
myTA = document.getElementById("keywordta");
|
||||
myTA.value = targetObj.value;
|
||||
myTA.focus();
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$categories = $this->params['categories'];
|
||||
$form = $this->params['form'];
|
||||
|
||||
// $this->htmlStartPage(getMLText("use_default_keywords"));
|
||||
?>
|
||||
|
||||
<div>
|
||||
<?php
|
||||
|
@ -106,7 +128,7 @@ function showKeywords(which) {
|
|||
<tr>
|
||||
<td class="inputDescription"><?php echo getMLText("global_default_keywords")?>:</td>
|
||||
<td>
|
||||
<select onchange="showKeywords(0)" id="categories0">
|
||||
<select _onchange="showKeywords(0)" id="categories0">
|
||||
<option value="-1"><?php echo getMLText("choose_category")?>
|
||||
<?php
|
||||
foreach ($categories as $category) {
|
||||
|
@ -136,7 +158,7 @@ function showKeywords(which) {
|
|||
else {
|
||||
print "<ul>";
|
||||
foreach ($lists as $list) {
|
||||
print "<li><a href='javascript:insertKeywords(\"".htmlspecialchars($list["keywords"])."\");'>".htmlspecialchars($list["keywords"])."</a></li>";
|
||||
print "<li><a class=\"insertkeyword\" keyword=\"".htmlspecialchars($list["keywords"])."\">".htmlspecialchars($list["keywords"])."</a></li>";
|
||||
}
|
||||
print "</ul>";
|
||||
}
|
||||
|
@ -147,7 +169,7 @@ function showKeywords(which) {
|
|||
<tr>
|
||||
<td class="inputDescription"><?php echo getMLText("personal_default_keywords")?>:</td>
|
||||
<td>
|
||||
<select onchange="showKeywords(1)" id="categories1">
|
||||
<select _onchange="showKeywords(1)" id="categories1">
|
||||
<option value="-1"><?php echo getMLText("choose_category")?>
|
||||
<?php
|
||||
foreach ($categories as $category) {
|
||||
|
@ -188,13 +210,7 @@ function showKeywords(which) {
|
|||
|
||||
<?php
|
||||
$this->contentContainerEnd();
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
myTA = document.getElementById("keywordta");
|
||||
myTA.value = targetObj.value;
|
||||
myTA.focus();
|
||||
</script>
|
||||
<?php
|
||||
echo '<script src="../out/out.KeywordChooser.php?action=js&'.$_SERVER['QUERY_STRING'].'"></script>'."\n";
|
||||
// $this->htmlEndPage();
|
||||
// echo "</body>\n</html>\n";
|
||||
} /* }}} */
|
||||
|
|
|
@ -67,7 +67,10 @@ class SeedDMS_View_LogManagement extends SeedDMS_Bootstrap_Style {
|
|||
|
||||
if ($print_header) printMLText("empty_notify_list");
|
||||
else print "<tr><td><i class=\"icon-arrow-up\"></i></td><td colspan=\"2\"><button type=\"submit\" class=\"btn\"><i class=\"icon-remove\"></i> ".getMLText('remove_marked_files')."</button></td></tr></table></form>\n";
|
||||
echo "<script>\n";
|
||||
} /* }}} */
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
?>
|
||||
$(document).ready( function() {
|
||||
$('i.icon-arrow-up').on('click', function(e) {
|
||||
|
@ -78,7 +81,6 @@ $(document).ready( function() {
|
|||
|
||||
});
|
||||
<?php
|
||||
echo "</script>\n";
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
|
|
|
@ -31,6 +31,12 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_MoveDocument extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
|
||||
$this->printFolderChooserJs("form1");
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -50,7 +56,7 @@ class SeedDMS_View_MoveDocument extends SeedDMS_Bootstrap_Style {
|
|||
<table>
|
||||
<tr>
|
||||
<td><?php printMLText("choose_target_folder");?>:</td>
|
||||
<td><?php $this->printFolderChooser("form1", M_READWRITE, -1, $target);?></td>
|
||||
<td><?php $this->printFolderChooserHtml("form1", M_READWRITE, -1, $target);?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"><input type="submit" class="btn" value="<?php printMLText("move");?>"></td>
|
||||
|
|
|
@ -47,6 +47,14 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
|
|||
return $str;
|
||||
} /* }}} */
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
|
||||
$this->printFolderChooserJs("form1");
|
||||
$this->printDeleteFolderButtonJs();
|
||||
$this->printDeleteDocumentButtonJs();
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -83,6 +91,8 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
|
|||
$previewwidth = $this->params['previewWidthList'];
|
||||
$previewconverters = $this->params['previewconverters'];
|
||||
|
||||
$this->htmlAddHeader('<script type="text/javascript" src="../styles/'.$this->theme.'/bootbox/bootbox.min.js"></script>'."\n", 'js');
|
||||
|
||||
$this->htmlStartPage(getMLText("search_results"));
|
||||
$this->globalNavigation();
|
||||
$this->contentStart();
|
||||
|
@ -104,7 +114,7 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
|
|||
</ul>
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane <?php echo ($fullsearch == false) ? 'active' : ''; ?>" id="database">
|
||||
<form action="../op/op.Search.php" name="form1" onsubmit="return checkForm();">
|
||||
<form action="../out/out.Search.php" name="form1">
|
||||
<?php
|
||||
// Database search Form {{{
|
||||
$this->contentContainerStart();
|
||||
|
@ -156,7 +166,7 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
|
|||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("under_folder")?>:</td>
|
||||
<td><?php $this->printFolderChooser("form1", M_READ, -1, $startfolder);?></td>
|
||||
<td><?php $this->printFolderChooserHtml("form1", M_READ, -1, $startfolder);?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("creation_date");?>:</td>
|
||||
|
@ -390,7 +400,7 @@ $(document).ready( function() {
|
|||
echo "<div class=\"tab-pane ".(($fullsearch == true) ? 'active' : '')."\" id=\"fulltext\">\n";
|
||||
$this->contentContainerStart();
|
||||
?>
|
||||
<form action="../op/op.Search.php" name="form2" onsubmit="return checkForm();" style="min-height: 330px;">
|
||||
<form action="../out/out.Search.php" name="form2" style="min-height: 330px;">
|
||||
<input type="hidden" name="fullsearch" value="1" />
|
||||
<table class="table-condensed">
|
||||
<tr>
|
||||
|
@ -466,7 +476,7 @@ $(document).ready( function() {
|
|||
}
|
||||
*/
|
||||
print "<div class=\"alert\">".getMLText("search_report", array("doccount" => $totaldocs, "foldercount" => $totalfolders, 'searchtime'=>$searchTime))."</div>";
|
||||
$this->pageList($pageNumber, $totalpages, "../op/op.Search.php", $urlparams);
|
||||
$this->pageList($pageNumber, $totalpages, "../out/out.Search.php", $urlparams);
|
||||
// $this->contentContainerStart();
|
||||
|
||||
print "<table class=\"table\">";
|
||||
|
@ -642,7 +652,7 @@ $(document).ready( function() {
|
|||
}
|
||||
print "</tbody></table>\n";
|
||||
// $this->contentContainerEnd();
|
||||
$this->pageList($pageNumber, $totalpages, "../op/op.Search.php", $_GET);
|
||||
$this->pageList($pageNumber, $totalpages, "../out/out.Search.php", $_GET);
|
||||
} else {
|
||||
$numResults = $totaldocs + $totalfolders;
|
||||
if ($numResults == 0) {
|
||||
|
|
|
@ -175,20 +175,6 @@ class SeedDMS_View_Statistic extends SeedDMS_Bootstrap_Style {
|
|||
}
|
||||
</style>
|
||||
|
||||
<script language="JavaScript">
|
||||
|
||||
function showDocument(id) {
|
||||
url = "out.DetailedStatistic.php?documentid=" + id;
|
||||
alert(url);
|
||||
}
|
||||
|
||||
function showFolder(id) {
|
||||
url = "out.DetailedStatistic.php?folderid=" + id;
|
||||
alert(url);
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<?php
|
||||
|
||||
$this->contentHeading(getMLText("folders_and_documents_statistic"));
|
||||
|
|
|
@ -30,11 +30,6 @@ require_once("class.Bootstrap.php");
|
|||
* @version Release: @package_version@
|
||||
*/
|
||||
class SeedDMS_View_Timeline extends SeedDMS_Bootstrap_Style {
|
||||
var $dms;
|
||||
var $folder_count;
|
||||
var $document_count;
|
||||
var $file_count;
|
||||
var $storage_size;
|
||||
|
||||
function iteminfo() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
|
@ -130,6 +125,30 @@ class SeedDMS_View_Timeline extends SeedDMS_Bootstrap_Style {
|
|||
echo json_encode($jsondata);
|
||||
} /* }}} */
|
||||
|
||||
function js() { /* {{{ */
|
||||
header('Content-Type: application/json');
|
||||
?>
|
||||
$(document).ready(function () {
|
||||
$('#update').click(function(ev){
|
||||
ev.preventDefault();
|
||||
$.getJSON(
|
||||
'out.Timeline.php?action=data&' + $('#form1').serialize(),
|
||||
function(data) {
|
||||
$.each( data, function( key, val ) {
|
||||
val.start = new Date(val.start);
|
||||
});
|
||||
timeline.setData(data);
|
||||
timeline.redraw();
|
||||
// timeline.setVisibleChartRange(0,0);
|
||||
}
|
||||
);
|
||||
});
|
||||
});
|
||||
<?php
|
||||
$timelineurl = 'out.Timeline.php?action=data&fromdate='.date('Y-m-d', $from).'&todate='.date('Y-m-d', $to).'&skip='.urldecode(http_build_query(array('skip'=>$skip)));
|
||||
$this->printTimelineJs($timelineurl, 550, ''/*date('Y-m-d', $from)*/, ''/*date('Y-m-d', $to+1)*/, $skip);
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -160,11 +179,11 @@ class SeedDMS_View_Timeline extends SeedDMS_Bootstrap_Style {
|
|||
?>
|
||||
|
||||
<?php
|
||||
echo "<div class=\"row-fluid\">\n";
|
||||
echo "<div class=\"row-fluid\">\n";
|
||||
|
||||
echo "<div class=\"span3\">\n";
|
||||
$this->contentHeading(getMLText("timeline"));
|
||||
echo "<div class=\"well\">\n";
|
||||
echo "<div class=\"span3\">\n";
|
||||
$this->contentHeading(getMLText("timeline"));
|
||||
echo "<div class=\"well\">\n";
|
||||
?>
|
||||
<form action="../out/out.Timeline.php" class="form form-inline" name="form1" id="form1">
|
||||
<div class="control-group">
|
||||
|
@ -200,39 +219,18 @@ echo "<div class=\"well\">\n";
|
|||
</div>
|
||||
</form>
|
||||
<?php
|
||||
$timelineurl = 'out.Timeline.php?action=data&fromdate='.date('Y-m-d', $from).'&todate='.date('Y-m-d', $to).'&skip='.urldecode(http_build_query(array('skip'=>$skip)));
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$('#update').click(function(ev){
|
||||
ev.preventDefault();
|
||||
$.getJSON(
|
||||
'out.Timeline.php?action=data&' + $('#form1').serialize(),
|
||||
function(data) {
|
||||
$.each( data, function( key, val ) {
|
||||
val.start = new Date(val.start);
|
||||
});
|
||||
timeline.setData(data);
|
||||
timeline.redraw();
|
||||
// timeline.setVisibleChartRange(0,0);
|
||||
}
|
||||
);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<?php
|
||||
echo "</div>\n";
|
||||
echo "<div class=\"ajax\" data-view=\"Timeline\" data-action=\"iteminfo\" ></div>";
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
echo "<div class=\"ajax\" data-view=\"Timeline\" data-action=\"iteminfo\" ></div>";
|
||||
echo "</div>\n";
|
||||
|
||||
echo "<div class=\"span9\">\n";
|
||||
$this->contentHeading(getMLText("timeline"));
|
||||
$this->printTimeline($timelineurl, 550, ''/*date('Y-m-d', $from)*/, ''/*date('Y-m-d', $to+1)*/, $skip);
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
echo "<div class=\"span9\">\n";
|
||||
$this->contentHeading(getMLText("timeline"));
|
||||
$this->printTimelineHtml(550);
|
||||
echo "</div>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
$this->contentContainerEnd();
|
||||
$this->htmlEndPage();
|
||||
$this->contentContainerEnd();
|
||||
$this->htmlEndPage();
|
||||
} /* }}} */
|
||||
}
|
||||
?>
|
||||
|
|
|
@ -50,6 +50,51 @@ $(document).ready( function() {
|
|||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function js() { /* {{{ */
|
||||
$strictformcheck = $this->params['strictformcheck'];
|
||||
$dropfolderdir = $this->params['dropfolderdir'];
|
||||
$this->printDropFolderChooserJs("form1");
|
||||
?>
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
<?php if($dropfolderdir) { ?>
|
||||
if ($("#userfile").val() == "" && $("#dropfolderfileform1").val() == "") msg.push("<?php printMLText("js_no_file");?>");
|
||||
<?php } else { ?>
|
||||
if ($("#userfile").val() == "") msg.push("<?php printMLText("js_no_file");?>");
|
||||
<?php } ?>
|
||||
<?php
|
||||
if ($strictformcheck) {
|
||||
?>
|
||||
if ($("#comment").val() == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
if (msg != "")
|
||||
{
|
||||
noty({
|
||||
text: msg.join('<br />'),
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#form1', function(ev){
|
||||
if(checkForm()) return;
|
||||
event.preventDefault();
|
||||
});
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -70,42 +115,7 @@ $(document).ready( function() {
|
|||
$this->contentStart();
|
||||
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
|
||||
$this->contentHeading(getMLText("update_document"));
|
||||
?>
|
||||
|
||||
<script language="JavaScript">
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
<?php if($dropfolderdir) { ?>
|
||||
if (document.form1.userfile.value == "" && document.form1.dropfolderfileform1.value == "") msg.push("<?php printMLText("js_no_file");?>");
|
||||
<?php } else { ?>
|
||||
if (document.form1.userfile.value == "") msg.push("<?php printMLText("js_no_file");?>");
|
||||
<?php } ?>
|
||||
<?php
|
||||
if ($strictformcheck) {
|
||||
?>
|
||||
if (document.form1.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
if (msg != "")
|
||||
{
|
||||
noty({
|
||||
text: msg.join('<br />'),
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php
|
||||
if ($document->isLocked()) {
|
||||
|
||||
$lockingUser = $document->getLockingUser();
|
||||
|
@ -154,7 +164,7 @@ function checkForm()
|
|||
$this->contentContainerStart();
|
||||
?>
|
||||
|
||||
<form action="../op/op.UpdateDocument.php" enctype="multipart/form-data" method="post" name="form1" onsubmit="return checkForm();">
|
||||
<form action="../op/op.UpdateDocument.php" enctype="multipart/form-data" method="post" name="form1" id="form1">
|
||||
<input type="hidden" name="documentid" value="<?php print $document->getID(); ?>">
|
||||
<table class="table-condensed">
|
||||
|
||||
|
@ -169,7 +179,7 @@ function checkForm()
|
|||
<?php if($dropfolderdir) { ?>
|
||||
<tr>
|
||||
<td><?php printMLText("dropfolder_file");?>:</td>
|
||||
<td><?php $this->printDropFolderChooser("form1");?></td>
|
||||
<td><?php $this->printDropFolderChooserHtml("form1");?></td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
<tr>
|
||||
|
|
|
@ -31,6 +31,52 @@ require_once("class.Bootstrap.php");
|
|||
*/
|
||||
class SeedDMS_View_UsrMgr extends SeedDMS_Bootstrap_Style {
|
||||
|
||||
function js() { /* {{{ */
|
||||
$seluser = $this->params['seluser'];
|
||||
?>
|
||||
function checkForm()
|
||||
{
|
||||
msg = new Array();
|
||||
|
||||
if($("#login").val() == "") msg.push("<?php printMLText("js_no_login");?>");
|
||||
if(($("#userid").val() == "0") && ($("#pwd").val() == "")) msg.push("<?php printMLText("js_no_pwd");?>");
|
||||
if(($("#pwd").val() != $("#pwdconf").val())&&($("#pwd").val() != "")&&($("#pwd").val() != "")) msg.push("<?php printMLText("js_pwd_not_conf");?>");
|
||||
if($("#name").val() == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
if($("#email").val() == "") msg.push("<?php printMLText("js_no_email");?>");
|
||||
<?php
|
||||
if ($strictformcheck) {
|
||||
?>
|
||||
if($("#comment").val() == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
if (msg != "") {
|
||||
noty({
|
||||
text: msg.join('<br />'),
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
$(document).ready( function() {
|
||||
$('body').on('submit', '#form', function(ev){
|
||||
if(checkForm()) return;
|
||||
event.preventDefault();
|
||||
});
|
||||
$( "#selector" ).change(function() {
|
||||
$('div.ajax').trigger('update', {userid: $(this).val()});
|
||||
});
|
||||
});
|
||||
<?php
|
||||
} /* }}} */
|
||||
|
||||
function info() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$seluser = $this->params['seluser'];
|
||||
|
@ -78,17 +124,18 @@ class SeedDMS_View_UsrMgr extends SeedDMS_Bootstrap_Style {
|
|||
$workflowmode = $this->params['workflowmode'];
|
||||
$quota = $this->params['quota'];
|
||||
?>
|
||||
<form action="../op/op.UsrMgr.php" method="post" enctype="multipart/form-data" name="form<?php print $currUser ? $currUser->getID() : '0';?>" onsubmit="return checkForm('<?php print $currUser ? $currUser->getID() : '0';?>');">
|
||||
<form action="../op/op.UsrMgr.php" method="post" enctype="multipart/form-data" name="form" id="form">
|
||||
<?php
|
||||
if($currUser) {
|
||||
echo createHiddenFieldWithKey('edituser');
|
||||
?>
|
||||
<input type="hidden" name="userid" value="<?php print $currUser->getID();?>">
|
||||
<input type="hidden" name="userid" id="userid" value="<?php print $currUser->getID();?>">
|
||||
<input type="hidden" name="action" value="edituser">
|
||||
<?php
|
||||
} else {
|
||||
echo createHiddenFieldWithKey('adduser');
|
||||
?>
|
||||
<input type="hidden" id="userid" value="0">
|
||||
<input type="hidden" name="action" value="adduser">
|
||||
<?php
|
||||
}
|
||||
|
@ -99,18 +146,18 @@ class SeedDMS_View_UsrMgr extends SeedDMS_Bootstrap_Style {
|
|||
?>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><a class="standardText btn" href="../out/out.RemoveUser.php?userid=<?php print $currUser->getID();?>"><i class="icon-remove"></i> <?php printMLText("rm_user");?></a></td>
|
||||
<td><a class="btn" href="../out/out.RemoveUser.php?userid=<?php print $currUser->getID();?>"><i class="icon-remove"></i> <?php printMLText("rm_user");?></a></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td><?php printMLText("user_login");?>:</td>
|
||||
<td><input type="text" name="login" value="<?php print $currUser ? htmlspecialchars($currUser->getLogin()) : "";?>"></td>
|
||||
<td><input type="text" name="login" id="login" value="<?php print $currUser ? htmlspecialchars($currUser->getLogin()) : "";?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("password");?>:</td>
|
||||
<td><input type="password" class="pwd" rel="strengthbar<?php echo $currUser ? $currUser->getID() : "0"; ?>" name="pwd"></td>
|
||||
<td><input type="password" class="pwd" rel="strengthbar<?php echo $currUser ? $currUser->getID() : "0"; ?>" name="pwd" id="pwd"></td>
|
||||
</tr>
|
||||
<?php
|
||||
if($passwordstrength > 0) {
|
||||
|
@ -126,7 +173,7 @@ class SeedDMS_View_UsrMgr extends SeedDMS_Bootstrap_Style {
|
|||
?>
|
||||
<tr>
|
||||
<td><?php printMLText("confirm_pwd");?>:</td>
|
||||
<td><input type="Password" name="pwdconf"></td>
|
||||
<td><input type="Password" name="pwdconf" id="pwdconf"></td>
|
||||
</tr>
|
||||
<?php
|
||||
if($passwordexpiration > 0) {
|
||||
|
@ -140,15 +187,15 @@ class SeedDMS_View_UsrMgr extends SeedDMS_Bootstrap_Style {
|
|||
?>
|
||||
<tr>
|
||||
<td><?php printMLText("user_name");?>:</td>
|
||||
<td><input type="text" name="name" value="<?php print $currUser ? htmlspecialchars($currUser->getFullName()) : "";?>"></td>
|
||||
<td><input type="text" name="name" id="name" value="<?php print $currUser ? htmlspecialchars($currUser->getFullName()) : "";?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("email");?>:</td>
|
||||
<td><input type="text" name="email" value="<?php print $currUser ? htmlspecialchars($currUser->getEmail()) : "";?>"></td>
|
||||
<td><input type="text" name="email" id="email" value="<?php print $currUser ? htmlspecialchars($currUser->getEmail()) : "";?>"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("comment");?>:</td>
|
||||
<td><textarea name="comment" rows="4" cols="50"><?php print $currUser ? htmlspecialchars($currUser->getComment()) : "";?></textarea></td>
|
||||
<td><textarea name="comment" id="comment" rows="4" cols="50"><?php print $currUser ? htmlspecialchars($currUser->getComment()) : "";?></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><?php printMLText("role");?>:</td>
|
||||
|
@ -404,59 +451,18 @@ class SeedDMS_View_UsrMgr extends SeedDMS_Bootstrap_Style {
|
|||
$this->contentStart();
|
||||
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
|
||||
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
|
||||
function checkForm(num)
|
||||
{
|
||||
msg = new Array();
|
||||
eval("var formObj = document.form" + num + ";");
|
||||
|
||||
if (formObj.login.value == "") msg.push("<?php printMLText("js_no_login");?>");
|
||||
if ((num == '0') && (formObj.pwd.value == "")) msg.push("<?php printMLText("js_no_pwd");?>");
|
||||
if ((formObj.pwd.value != formObj.pwdconf.value)&&(formObj.pwd.value != "" )&&(formObj.pwd.value != "" )) msg.push("<?php printMLText("js_pwd_not_conf");?>");
|
||||
if (formObj.name.value == "") msg.push("<?php printMLText("js_no_name");?>");
|
||||
if (formObj.email.value == "") msg.push("<?php printMLText("js_no_email");?>");
|
||||
//if (formObj.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
|
||||
if (msg != "")
|
||||
{
|
||||
noty({
|
||||
text: msg.join('<br />'),
|
||||
type: 'error',
|
||||
dismissQueue: true,
|
||||
layout: 'topRight',
|
||||
theme: 'defaultTheme',
|
||||
_timeout: 1500,
|
||||
});
|
||||
return false;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
function showUser(selectObj) {
|
||||
id = selectObj.options[selectObj.selectedIndex].value;
|
||||
$('div.ajax').trigger('update', {userid: id});
|
||||
}
|
||||
</script>
|
||||
<?php
|
||||
$this->contentHeading(getMLText("user_management"));
|
||||
?>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span4">
|
||||
<div class="well">
|
||||
<?php echo getMLText("selection")?>:
|
||||
<select class="chzn-select" onchange="showUser(this)" id="selector" class="span9">
|
||||
<select class="chzn-select" id="selector" class="span9">
|
||||
<option value="-1"><?php echo getMLText("choose_user")?>
|
||||
<option value="0"><?php echo getMLText("add_user")?>
|
||||
<?php
|
||||
$selected=0;
|
||||
$count=2;
|
||||
foreach ($users as $currUser) {
|
||||
if ($seluser && $currUser->getID()==$seluser->getID()) $selected=$count;
|
||||
print "<option value=\"".$currUser->getID()."\">" . htmlspecialchars($currUser->getLogin() . " - ". $currUser->getFullName());
|
||||
$count++;
|
||||
print "<option value=\"".$currUser->getID()."\" ".($seluser && $currUser->getID()==$seluser->getID() ? 'selected' : '').">" . htmlspecialchars($currUser->getLogin() . " - ". $currUser->getFullName());
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
|
@ -470,15 +476,6 @@ function showUser(selectObj) {
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script language="JavaScript">
|
||||
|
||||
sel = document.getElementById("selector");
|
||||
sel.selectedIndex=<?php print $selected ?>;
|
||||
showUser(sel);
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
<?php
|
||||
$this->htmlEndPage();
|
||||
} /* }}} */
|
||||
|
|
|
@ -148,6 +148,14 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
|
|||
echo json_encode($jsondata);
|
||||
} /* }}} */
|
||||
|
||||
function js() { /* {{{ */
|
||||
$document = $this->params['document'];
|
||||
|
||||
header('Content-Type: application/json');
|
||||
$this->printTimelineJs('out.ViewDocument.php?action=timelinedata&documentid='.$document->getID(), 300, '', date('Y-m-d'));
|
||||
$this->printDocumentChooserJs("form1");
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
parent::show();
|
||||
$dms = $this->params['dms'];
|
||||
|
@ -1380,7 +1388,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
|
|||
<table class="table-condensed">
|
||||
<tr>
|
||||
<td><?php printMLText("add_document_link");?>:</td>
|
||||
<td><?php $this->printDocumentChooser("form1");?></td>
|
||||
<td><?php $this->printDocumentChooserHtml("form1");?></td>
|
||||
</tr>
|
||||
<?php
|
||||
if ($document->getAccessMode($user) >= M_READWRITE) {
|
||||
|
@ -1468,7 +1476,8 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
|
|||
}
|
||||
$item['msg'] = $msg;
|
||||
}
|
||||
$this->printTimeline('out.ViewDocument.php?action=timelinedata&documentid='.$document->getID(), 300, '', date('Y-m-d'));
|
||||
// $this->printTimeline('out.ViewDocument.php?action=timelinedata&documentid='.$document->getID(), 300, '', date('Y-m-d'));
|
||||
$this->printTimelineHtml(300);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
@ -71,6 +71,33 @@ class SeedDMS_View_ViewFolder extends SeedDMS_Bootstrap_Style {
|
|||
}
|
||||
} /* }}} */
|
||||
|
||||
function js() { /* {{{ */
|
||||
$user = $this->params['user'];
|
||||
$folder = $this->params['folder'];
|
||||
$orderby = $this->params['orderby'];
|
||||
$expandFolderTree = $this->params['expandFolderTree'];
|
||||
$enableDropUpload = $this->params['enableDropUpload'];
|
||||
|
||||
header('Content-Type: application/json');
|
||||
?>
|
||||
function folderSelected(id, name) {
|
||||
window.location = '../out/out.ViewFolder.php?folderid=' + id;
|
||||
}
|
||||
<?php
|
||||
$this->printNewTreeNavigationJs($folder->getID(), M_READ, 0, '', $expandFolderTree == 2, $orderby);
|
||||
|
||||
if (0 && $enableDropUpload && $folder->getAccessMode($user) >= M_READWRITE) {
|
||||
echo "SeedDMSUpload.setUrl('../op/op.Ajax.php');";
|
||||
echo "SeedDMSUpload.setAbortBtnLabel('".getMLText("cancel")."');";
|
||||
echo "SeedDMSUpload.setEditBtnLabel('".getMLText("edit_document_props")."');";
|
||||
echo "SeedDMSUpload.setMaxFileSize(".SeedDMS_Core_File::parse_filesize(ini_get("upload_max_filesize")).");";
|
||||
echo "SeedDMSUpload.setMaxFileSizeMsg('".getMLText("uploading_maxsize")."');";
|
||||
}
|
||||
|
||||
$this->printDeleteFolderButtonJs();
|
||||
$this->printDeleteDocumentButtonJs();
|
||||
} /* }}} */
|
||||
|
||||
function show() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
|
@ -90,8 +117,9 @@ class SeedDMS_View_ViewFolder extends SeedDMS_Bootstrap_Style {
|
|||
|
||||
$folderid = $folder->getId();
|
||||
|
||||
echo $this->callHook('startPage');
|
||||
$this->htmlAddHeader('<script type="text/javascript" src="../styles/'.$this->theme.'/bootbox/bootbox.min.js"></script>'."\n", 'js');
|
||||
|
||||
echo $this->callHook('startPage');
|
||||
$this->htmlStartPage(getMLText("folder_title", array("foldername" => htmlspecialchars($folder->getName()))));
|
||||
|
||||
$this->globalNavigation($folder);
|
||||
|
@ -124,18 +152,11 @@ class SeedDMS_View_ViewFolder extends SeedDMS_Bootstrap_Style {
|
|||
if ($showtree==1){
|
||||
$this->contentHeading("<a href=\"../out/out.ViewFolder.php?folderid=". $folderid."&showtree=0\"><i class=\"icon-minus-sign\"></i></a>", true);
|
||||
$this->contentContainerStart();
|
||||
?>
|
||||
<script language="JavaScript">
|
||||
function folderSelected(id, name) {
|
||||
window.location = '../out/out.ViewFolder.php?folderid=' + id;
|
||||
}
|
||||
</script>
|
||||
<?php
|
||||
/*
|
||||
* access expandFolderTree with $this->params because it can
|
||||
* be changed by preContent hook.
|
||||
*/
|
||||
$this->printNewTreeNavigation($folderid, M_READ, 0, '', $this->params['expandFolderTree'] == 2, $orderby);
|
||||
$this->printNewTreeNavigationHtml($folderid, M_READ, 0, '', $this->params['expandFolderTree'] == 2, $orderby);
|
||||
$this->contentContainerEnd();
|
||||
} else {
|
||||
$this->contentHeading("<a href=\"../out/out.ViewFolder.php?folderid=". $folderid."&showtree=1\"><i class=\"icon-plus-sign\"></i></a>", true);
|
||||
|
@ -232,11 +253,11 @@ class SeedDMS_View_ViewFolder extends SeedDMS_Bootstrap_Style {
|
|||
echo "</div>";
|
||||
echo "<div class=\"span4\">";
|
||||
$this->contentHeading(getMLText("dropupload"), true);
|
||||
$this->addFooterJS("SeedDMSUpload.setUrl('../op/op.Ajax.php');");
|
||||
$this->addFooterJS("SeedDMSUpload.setAbortBtnLabel('".getMLText("cancel")."');");
|
||||
$this->addFooterJS("SeedDMSUpload.setEditBtnLabel('".getMLText("edit_document_props")."');");
|
||||
$this->addFooterJS("SeedDMSUpload.setMaxFileSize(".SeedDMS_Core_File::parse_filesize(ini_get("upload_max_filesize")).");");
|
||||
$this->addFooterJS("SeedDMSUpload.setMaxFileSizeMsg('".getMLText("uploading_maxsize")."');");
|
||||
// $this->addFooterJS("SeedDMSUpload.setUrl('../op/op.Ajax.php');");
|
||||
// $this->addFooterJS("SeedDMSUpload.setAbortBtnLabel('".getMLText("cancel")."');");
|
||||
// $this->addFooterJS("SeedDMSUpload.setEditBtnLabel('".getMLText("edit_document_props")."');");
|
||||
// $this->addFooterJS("SeedDMSUpload.setMaxFileSize(".SeedDMS_Core_File::parse_filesize(ini_get("upload_max_filesize")).");");
|
||||
// $this->addFooterJS("SeedDMSUpload.setMaxFileSizeMsg('".getMLText("uploading_maxsize")."');");
|
||||
?>
|
||||
<div id="dragandrophandler" class="well alert" data-target="<?php echo $folder->getID(); ?>" data-formtoken="<?php echo createFormKey('adddocument'); ?>"><?php printMLText('drop_files_here'); ?></div>
|
||||
<?php
|
||||
|
|
Loading…
Reference in New Issue
Block a user