Secara default form registrasi pada OJS 3 tidak menampilkan item phone. Untuk sekarang ini tutorial yang akan dibuat untuk menambahkan dan mewajibkan user yang daftar akan mewajibkan menginputkan field phone saat registrasi.
Sekarang login kedalam CPanel OJS anda. Saat ini saya menggunakan CuteFTP untuk membuka dan meng-edit Regrastion Form OJS 3.
Langkah Pertama Buka File Maneger pada CPanel Anda atau pada CuteFTP
1. Buka folder public_html/lib/pkp/templates/frontend/components
2. Pilih dan Edit file registrationForm.tpl
3. Pada Baris 56 dibawah <div class=”affiliation”>, dengan script berikut:
<div class="phone"> <label> <span class="label"> {translate key="user.phone"} <span class="required">*</span> <span class="pkp_screen_reader"> {translate key="common.required"} </span> </span> <input type="text" name="phone" id="phone" value="{$phone|escape}" required> </label> </div>4. Simpanlah file registrationForm.tpl
Langkah ke-dua, untuk supaya field phone tadi bisa disimpanm selanjutnya ikuti langkah berikut:
1. Buka folder public_html/lib/pkp/classes/user/form
2. Pilih dan Edit file RegistrationForm.inc.php
3. Langsung menuju ke baris 51, terdapat code berikut
$this->addCheck(new FormValidator($this, 'country', 'required', 'user.profile.form.countryRequired'));Langsung anda tambahkan dibawah script tersebut seperti berikut:
$this->addCheck(new FormValidator($this, 'phone', 'required', 'user.profile.form.phoneRequired'));4. Setelah terbuka, selanjutnya cari baris script seperti dibawah ini:
/** * Assign form data to user-submitted data. */ function readInputData() { parent::readInputData(); $this-&gt;readUserVars(array( 'username', 'password', 'password2', 'firstName', 'middleName', 'lastName', 'affiliation', 'phone', /* field phone yang ditambahkan */ 'email', 'country', 'interests', 'emailConsent', 'privacyConsent', 'readerGroup', 'reviewerGroup', ));
5. Selanjutnya cari script seperti dibawah ini:
/** /** * Register a new user. * @param $request PKPRequest * @return int|null User ID, or false on failure */ function execute($request) { $requireValidation = Config::getVar('email', 'require_validation'); $userDao = DAORegistry::getDAO('UserDAO'); // New user $user = $userDao->newDataObject(); $user->setUsername($this->getData('username')); // Set the base user fields (name, etc.) $user->setFirstName($this->getData('firstName')); $user->setMiddleName($this->getData('middleName')); $user->setLastName($this->getData('lastName')); $user->setInitials($this->getData('initials')); $user->setEmail($this->getData('email')); $user->setCountry($this->getData('country')); $user->setAffiliation($this->getData('affiliation'), null); // Localized $user->setPhone($this->getData('phone')); // scritp yang ditambahkan $user->setDateRegistered(Core::getCurrentDate()); $user->setInlineHelp(1); // default new users to having inline help visible.
5. Simpalah file RegistrationForm.inc.php
6. Selanjutnya buka form Registrasi dan di refresh