2011-06-03 6 views
0

Notre page Web principale est Drupal et nous aimerions utiliser Osticket comme système de suivi des problèmes, mais il y a un problème avec Osticket: tout le monde peut créer de nouveaux tickets.Intégrer OsTicket dans Drupal 7

Nous pouvons protéger cela par .htaccess, mais nous ne voulons pas le faire; nous aimerions faire cela protéger par Drupal: seuls les utilisateurs authentifiés devraient accéder à la page Osticket.

Existe-t-il un moyen d'y parvenir?

+0

S'il existe une solution, elle doit être facile à trouver sur Drupal.org, Google ou drupalmodules.com. Avez-vous cherché? Qu'avez-vous trouvé ou quelles informations manquaient? – marcvangend

+0

La question trop grande. Quel genre d'intégration voulez-vous? Authentifier l'utilisateur Drupal contre la base des utilisateurs d'OsTicket? Authentifier l'utilisateur OsTicket contre la base d'utilisateurs de Drupal? Afficher les informations de OsTicket sur les pages de Drupal? –

+0

@marcvangend Je l'ai fait monsieur, mais je n'ai rien trouvé et c'est pourquoi demander ici. Si j'ai demandé une question stupide, je suis vraiment désolé @ mongolito404 j'ai édité ma question. désolé de le faire grand. –

Répondre

0

trouvé une solution ici: http://osticket.com/forum/discussion/9910/integrate-with-drupal-7

Voici la partie pertinente:

Préambule

Il se trouve que je faisais un peu hors de nouveau à nouveau travail avec l'intégration de cette en Drupal.

Si vous souhaitez simplement vous assurer que l'utilisateur est connecté, vous avez raison, vous avez besoin de bootstrap.inc et vous avez raison de vous retrouver avec des pages vierges inutiles.

Solution

Je n'ai pas encore apprendre à bien documenter, alors essayez cela et laissez-moi savoir si je raté quelque chose et je vais avoir un autre regard, mais ce qui suit devrait trier la question:

noms de fonction en double

osTicket utilise db_query() et (je pense) db_close() renommer les fonctions à quelque chose comme db_ost_query() et vous serez bien. (Notez que je place le 'ost' au milieu pour aider à trouver/remplacer le futur) Je ne peux pas me souvenir si toutes les occurrences de la fonction ont besoin d'être renommées pour que cela fonctionne, mais c'est probablement une bonne idée de le faire.

Emplacement du bootstrap

Le bootstrap a toutes sortes de problèmes si elle est appelée à l'extérieur du répertoire Drupal racine, j'ai renoncé à trouver une réponse à cela et juste gardé un fichier à la racine que osTicket comprendrait .

têtes, en-têtes partout

Bootstrap semble que l'envoi d'en-têtes supplémentaires afin que vous voudriez inclure votre fichier dans un emplacement approprié (par exemple l'un des fichiers .inc). Je pense que cela a tout résolu.

Responsabilité

Bien sûr, rappelez-vous ce qui va ramollir sur toutes les mises à jour et tous les mods que vous ajoutez vous auriez à en tenir compte. Si je me suis bien rappelé cela va démarrer le bootstrap et vous pouvez lancer is_user_logged_in() et afficher ou rediriger la page.

D'autres préoccupations

J'ai eu en fait un objectif plus à l'esprit dans mon ingérence et donc je ne me souviens pas si tout était parfaitement confortable après cet ajout.Je me souviens avoir d'autres problèmes avec les en-têtes envoyés et lors de l'amorçage complet de l'utilisation de la session système interférant avec les sessions ostickets - I pense que cela s'est produit plus tard et ne devrait pas être un problème pour vous.

Une solution alternative

Lorsque googler, beaucoup de gens ont suggéré de créer simplement un module et l'avoir iframe le contenu à l'intérieur, cela pourrait être une solution assez bon pour ce que vous voulez et nécessiterait beaucoup moins déconner avec le code ostickets.