Navigation

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    UNSOLVED Liste von Personen, die mir als IDs vorliegen, selektieren

    Fragen
    4
    14
    122
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • JJB
      JJB last edited by

      Ich habe zu einer Liste von CT-Personen die IDs und die möchte ich nun gerne alle markieren, um sie beispielsweise in eine Gruppe zu packen. Da muss es doch eine Möglichkeit geben, das passend oben in die Suche einzugeben. Mag nicht über 100 Leute manuell durchklicken. Wenn es nur eine ID ist, beispielsweise die 63, kann man ja einfach "#63" in die Suche eingeben. Aber bei mehreren habe ich kein Schema gefunden "#63,#89" funktioniert zum Beispiel nicht.

      Andy 1 Reply Last reply Reply Quote 0
      • Andy
        Andy admin @JJB last edited by

        @jjb 🤔 ... fällt mir keine Lösung ein. Nur Häkchen setzen und dann "nur markierte" auswählen.

        JJB 1 Reply Last reply Reply Quote 0
        • JJB
          JJB @Andy last edited by

          @andy Das ist ja schade. Dann wäre das auf jeden Fall ein Feature, welches ich mir wünsche. Wir haben aus alten Zeiten noch einen E-Mail-Verteiler, den wollen wir jetzt zu einer CT-Gruppe machen wollen. Gibt es dafür vielleicht ein sinnvolles Verfahren?

          Aus dem E-Mail-Verteiler kann ich problemlos mittels eines kleinen Skriptes und des CT-Personen-Exports die Liste der IDs der CT-Personen generieren. Aber ab hier wissen wir wohl beide nicht mehr weiter.

          Andy 1 Reply Last reply Reply Quote 0
          • Andy
            Andy admin @JJB last edited by

            @jjb mit Zugriff auf die DB wäre es easy. 🙂

            JJB B 2 Replies Last reply Reply Quote 0
            • JJB
              JJB @Andy last edited by

              @andy Naja, ich bräuchte ja nicht nur Lese- sondern sogar Schreibzugriff und den geben die CT-Entwickler aus gutem Grund nicht weiter. Da kann man sehr viel kaputt machen und wie easy das wirklich wäre, weiß ich gar nicht. Wer weiß, wie viele DB-Einträge geändert werden müssen, um jemanden in eine Gruppe aufzunehmen (man denke an Logeinträge, E-Mails, die zu verschicken sind und so weiter)...
              Aber einfach eine Möglichkeit oben beim Suchfeld in einer von den Entwicklern vorgegebenen Formatierung eine Liste von IDs einzugeben, wäre super!

              Andy 1 Reply Last reply Reply Quote 0
              • Andy
                Andy admin @JJB last edited by Andy

                @jjb sagte in Liste von Personen, die mir als IDs vorliegen, selektieren:

                und wie easy das wirklich wäre, weiß ich gar nicht

                In meinem Verständnis werden in einer einzigen Tabelle die Relationen zwischen Personen-ID und Gruppen-ID hergestellt, fertig. Wäre für den von dir angedachten Fall eine Kleinigkeit mit phpMyAdmin.

                Aber verstehe mich bitte nicht falsch: Ich wünsche mir die Zeit des Selfhostings nicht zurück! (Wobei der DB-Zugriff durchaus nett war.)
                Nicht umsonst sind wir schon nach einem Jahr zum Hosting bei CT gewechselt.

                1 Reply Last reply Reply Quote 0
                • B
                  bwl21 @Andy last edited by bwl21

                  @andy wenn jemand das kann, dann kann er auch ein kleines API-Script schreiben, das das macht.

                  etwa so. Das kann man mit https://github.com/bwl21/113_ctcli laufen lassen

                      <?php
                  
                  
                      //die ("Add Persons to group ist nicht erlaubt");
                  
                  
                      $group = 1075;
                      $persons = [
                          1, 
                      ];
                  
                      foreach ($persons as $personId) {
                          echo "\ncrateing $personId";
                          $report1 = [
                              'url' => "$ctdomain/api/groups/$group/members/$personId",
                              'method' => "PUT",
                              'body' => []
                          ];
                  
                          $report[$personId] = CT_APITOOLS\CTV2_sendRequest($report1);
                  
                      }
                  
                  Andy JJB 2 Replies Last reply Reply Quote 0
                  • Andy
                    Andy admin @bwl21 last edited by Andy

                    @bwl21 öhm... nööö... spreche aber nur für mich. Aber ich muss auch nicht alles können 😂

                    1 Reply Last reply Reply Quote 0
                    • JJB
                      JJB @bwl21 last edited by

                      @bwl21 Ja, darauf wird es wohl hinaus laufen, dass ich mich mal mit der API beschäftige, was ich bislang noch nicht getan habe. Wo ist die dokumentiert?

                      T B 2 Replies Last reply Reply Quote 0
                      • T
                        thommyb @JJB last edited by thommyb

                        @jjb Unter https://<gemeinde>.church.tools/api findest du die Beschreibung der API. Dort kannst du sogar direkt und ohne Umwege die Aufrufe parametrisieren und ausprobieren. Diesen Teil finde ich super praktisch; das hat mir viel Zeit gespart.
                        Leider gibt es (noch) kein Tutorial, aber wenn man sich ein wenig mit HTTP und REST Services auskennt, findet man sich sehr schnell zurecht.

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          bwl21 @JJB last edited by bwl21

                          This post is deleted!
                          1 Reply Last reply Reply Quote 0
                          • B
                            bwl21 @thommyb last edited by

                            @thommyb sagte in Liste von Personen, die mir als IDs vorliegen, selektieren:

                            @jjb Unter https://<gemeinde>.church.tools/api findest du die Beschreibung der API. Dort kannst du sogar direkt und ohne Umwege, die Aufrufe parametrisieren und ausprobieren. Diesen Teil finde ich super praktisch; das hat mir viel Zeit gespart.
                            Leider gibt es (noch) kein Tutorial, aber wenn man sich ein wenig mit HTTP und REST Services auskennt, findet man sich sehr schnell zurecht.

                            @jjb Es gibt noch die V1-Api. Die muss man am besten im Browser Entwiklertools / Netzwerk beobachten.

                            1 Reply Last reply Reply Quote 0
                            • JJB
                              JJB last edited by JJB

                              Ich habe jetzt eine Lösung für das ursprüngliche Problem gefunden: Einfach ein kleines Bookmarklet schreiben. Die Checkbox mit einer gegeben id kann man über

                              document.getElementById("check"+id).checked=true;
                              

                              aktivieren. Also muss man nur mit einer for-Schleife durch die Liste der ids gehen und hat das Ergebnis. Eine Sache, die noch zu beachten ist, dass man sich nur maximal 200 Personen pro Seite anzeigen lassen kann. Also muss man es immer in 200er-Häppchen machen. Aber immer noch wesentlich angenehmer als alle Leute manuell durchzuklicken.

                              JJB 1 Reply Last reply Reply Quote 0
                              • JJB
                                JJB @JJB last edited by JJB

                                @jjb Kleine Ergänzung: Man muss den Code

                                $("#check"+id).trigger('click');
                                

                                statt obiger Zeile verwenden. Grund dafür: Obige Zeile aktiviert zwar die Checkboxes, CT reagiert darauf aber gar nicht. Erst mit dem Mausklick auf eine Checkbox wird von CT aus das eigentliche Event gefeuert (der Status der Checkbox ist für die CT-Software uninteressant und ist nur für den User als optisches Feedback gedacht). Das hier verwendete jQuery muss nicht erst eingebunden werden, weil CT selbst jQuery bereits einbindet.

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post