CWT_FEEDIT um weitere Felder erweitern

  • n00k n00k
    Sternenflotten-Admiral
    0 x
    179 Beiträge
    0 Hilfreiche Beiträge
    14. 10. 2005, 10:00

    Hallo Forum,

    Ich habe cwt_community und cwt_feedit, die im Frontend eine Benutzerübersicht darstellen. Man kann auf einen Benutzer in der Liste klicken und sich dessen Profil anschauen. Man kann auch sein eigenes Profil bearbeiten. Wo wir auch schon beim Thema wären.
    Die Profilfelder der Profilansicht habe ich bearbeiten können in der cwt_community, nur muss ich ja auch diese Felder zum bearbeiten freigeben, und da stoße ich auf das Problem.
    Ich finde das Template nicht wo ich die Marker hinzufügen muss, oder ich habe irgendwas anderes übersehen.
    Jedenfalls hab ich auf der Seite der Extension eine Art Anleitung gefunden, aber ich hab 1. keine Ahnung von PHP und 2. versteh ich manche Zusammenhänge noch nicht so gut.
    Nun denn, das Ding muss bis heute Mittag laufen und ich stehe nun vor der Anleitung (die ich unten nochmal gepostet habe) und verstehe nur Bahnhof.

    1.2.1 Integration of the extension

    To use the frontend edit extension, you have to integrate in your extension in a view steps:

    1.

    Include the script in your extension:

    include_once(PATH_typo3conf."ext/cwt_feedit/pi1/class.tx_cwtfeedit_pi1.php");
    2.

    Now define which fields you want to edit, which helptext should be displayed and which error message should be displayed, in case of constraints that are not fulfilled.

    $items = array();
    $items["attribute_name_in_db"]["label"] = "The label";
    $items["attribute_name_in_db"]["helptext"] = "The helptext";
    $items["attribute_name_in_db"]["error_msg"] = "The error msg";

    This example applies for the 'fe_users' attribute 'name':

    $items["name"]["label"] = "Name:";
    $items["name"]["helptext"] = "e.g. 'Sebastian'";
    $items["name"]["error_msg"] = "Please enter your name.";

    Furthermore you can define specific evaluation functions for a field. Possible values are:
    1.

    twice:
    The field will be displayed twice. This is especially usefull for password fields. Please refer to the "Examples" section for a working example.
    2.

    atLeast:
    This checks if the user typed in at least X characters. The syntax for "atLeast" ia as follows: "atLeast[X]".
    3.

    atMost:
    This checks for a maximum of allowed characters. The syntax is as follows: "atMost[X]".
    4.

    email:
    The field will be checked for a correct email address.

    $items["attribute_name_in_db"]["eval"] = "firstEval,secondEval,..";

    Additionally you can define the type of the field. Possible values are:

    1.
    1.

    preview
    This means, that the fields value is displayed, but cannot be edited by the user.
    2.

    password
    This means, that the field is handled like a password field. So all characters are shown as asteriks ("*") in the edit and in the preview mode.

    $items["attribute_name_in_db"]["type"] = "password";

    1.

    Now create the form object:

    $table --> The table the attributes belong to.
    $items --> The item you have just defined.
    $record_uid --> The uid of the database record that should be edited.
    $cruser_id --> The uid of the user, this record belongs to.
    $back_id --> The id, the user will be sent back to, when he is finished.
    $back_values --> The values, that are appended to the back url. e.g. Array("param" => "value")
    $this --> You MUST put in '$this' here!!!!
    $extending_ext --> In case you want to edit fields from extensions, that extend your target table. e.g. Array("my_ext_key")

    $form = new tx_cwtfeedit_pi1($table, $items, $record_uid, $cruser_id, $back_id, $back_values, $this, $extending_ext);
    2.

    Finally you get the html like this:

    $content.= "<table>";
    $content.= $form->getFormHeader();
    $content.= $form->getElement("attribute_name_in_db");
    $content.= $form->getElement("another_attribute_name_in_db");
    $content.= $form->getFormFooter();
    $content.= "</table>";
    3.

    THAT's it! Nothing more to do.

    Könnte mir jemand helfen und mich durch die Dunkelheit führen, das meine Felder auch im "user profile edit view" laufen? Vielen Dank schonmal an alle die sich melden!

    Gruß Felix


  • 1
  • n00k n00k
    Sternenflotten-Admiral
    0 x
    179 Beiträge
    0 Hilfreiche Beiträge
    14. 10. 2005, 11:07

    Ok, habs hinbekommen. Danke an die Helfenden.

    Felix

  • claudia2 claudia2
    Jedi-Meister
    0 x
    296 Beiträge
    0 Hilfreiche Beiträge
    27. 03. 2007, 20:57

    hallo Felix,

    wie hast du es denn hinbekommen? ich stehe gerade vor dem gleichen Problem... ein Tipp wäre klasse!

    schöne grüße
    claudia

  • 1