Post by mehwishmalik » Mon Jun 18, 2018 4:14 am

Can anyone tell me how I would go about adding an 'email' field for when customers are adding their product review and also I want to save that email in the admin section? Ideally, I would like the field to be positioned under the 'Name' field. I have a good understanding of PHP and familiar with the OpenCart framework. Any kind of help will be appreciated.

New member

Posts

Joined
Fri Feb 16, 2018 7:37 pm

Post by IP_CAM » Mon Jun 18, 2018 4:35 am

Well, did you check on what's available in Reviews?
Ernie
---
Field E-mail to Form Review and Admin Search Filter OC v.2.0.1.1 - 2.3.0.2:
https://www.opencart.com/index.php?rout ... n_id=23586
---
Anti Spam Reviews OC v.1.5.4 - 2.3.0.2:
https://www.opencart.com/index.php?rout ... n_id=12651
---
found here:
https://www.opencart.com/index.php?rout ... rch=review

My Github OC Site: https://github.com/IP-CAM
5'200 + FREE OC Extensions, on the World's largest private Github OC Repository Archive Site.


User avatar
Legendary Member

Posts

Joined
Tue Mar 04, 2014 1:37 am
Location - Switzerland

Post by mehwishmalik » Mon Jun 18, 2018 6:26 pm

Hey thank u @IP_CAM for your reply good extensions but I want to do this with coding don't have enough budget kindly guide me how can I do this manually?

New member

Posts

Joined
Fri Feb 16, 2018 7:37 pm

Post by synapseindia » Mon Jun 18, 2018 7:56 pm

You can follow the opencart standard - Review controller, Model and View to make this happen.
Also, Whenever you create any question on community forum kindly mention OC version so that active people on this forum can help you better.

Thanks.

User avatar
Active Member

Posts

Joined
Thu Apr 05, 2018 2:27 pm

Post by mehwishmalik » Mon Jun 18, 2018 10:46 pm

Hey thanx @synapseindia, my OC version is 2.2 if u guide me all the coding with the complete path it will be appreciated thanx in advance :)

New member

Posts

Joined
Fri Feb 16, 2018 7:37 pm

Post by IP_CAM » Tue Jun 19, 2018 8:27 am

don't have enough budget kindly guide me
Well, you're using a paid Journal Theme, as you mentioned in an earlier Topic, and
I'm not eager to look into paid extensions, regardless of, how they were aquired. 8)
Sorry and good Luck! ;)
Ernie

My Github OC Site: https://github.com/IP-CAM
5'200 + FREE OC Extensions, on the World's largest private Github OC Repository Archive Site.


User avatar
Legendary Member

Posts

Joined
Tue Mar 04, 2014 1:37 am
Location - Switzerland

Post by synapseindia » Wed Jun 20, 2018 2:17 pm

Hi ,

You need to edit the following files to make it happen -
1) catalog\view\theme\default\template\product\review.tpl
2) catalog\controller\product\product.php
3) catalog\model\catalog\product.php

Also, you need to create a new column in mysql review table.

Thanks.

Hope you can code yourself based on other fields.

User avatar
Active Member

Posts

Joined
Thu Apr 05, 2018 2:27 pm

Post by mehwishmalik » Wed Jun 20, 2018 2:47 pm

Hey thanx can u guide me with coding? and what about language folder?

New member

Posts

Joined
Fri Feb 16, 2018 7:37 pm

Post by kestas » Fri Jun 22, 2018 5:16 pm

synapseindia wrote:
Wed Jun 20, 2018 2:17 pm
Hi ,

You need to edit the following files to make it happen -
1) catalog\view\theme\default\template\product\review.tpl
2) catalog\controller\product\product.php
3) catalog\model\catalog\product.php

Also, you need to create a new column in mysql review table.

Thanks.

Hope you can code yourself based on other fields.
Hi,

not only this files you should edit... :)
I have this extension, but not yet placed on Marketplace, if interesting for something you can PM me.

Cheers

Custom OpenCart modules and solutions. You can write PM with additional questions... Extensions you can find here


Active Member

Posts

Joined
Tue Oct 12, 2010 2:23 am

Post by straightlight » Fri Jun 22, 2018 11:36 pm

I have a good understanding of PHP and familiar with the OpenCart framework.
mehwishmalik wrote:
Wed Jun 20, 2018 2:47 pm
Hey thanx can u guide me with coding? and what about language folder?
Followed can be coded with OCMod / VQMod based on your preferences.

In admin/controller/catalog/review.php file,

find:

Code: Select all

'rating'     => $result['rating'],
add right below:

Code: Select all

'email'    => html_entity_decode($result['email'], ENT_QUOTES, 'UTF-8'),
Then, find:

Code: Select all

$data['sort_rating'] = $this->url->link('catalog/review', 'user_token=' . $this->session->data['user_token'] . '&sort=r.rating' . $url);
add below:

Code: Select all

$data['sort_email'] = $this->url->link('catalog/review', 'user_token=' . $this->session->data['user_token'] . '&sort=r.email' . $url);
Then, find all instances of:

Code: Select all

if (isset($this->request->get['filter_author'])) {
				$url .= '&filter_author=' . urlencode(html_entity_decode($this->request->get['filter_author'], ENT_QUOTES, 'UTF-8'));
			}
			
add below all:

Code: Select all

$data['entry_email'] = $this->language->get('entry_email');

$data['column_email']  = $this->language->get('column_email');

if (isset($this->request->get['filter_email'])) {
				$url .= '&filter_email=' . urlencode(html_entity_decode($this->request->get['filter_email'], ENT_QUOTES, 'UTF-8'));
			}
Then, find:

Code: Select all

if (isset($this->request->get['filter_author'])) {
			$filter_author = $this->request->get['filter_author'];
		} else {
			$filter_author = '';
		}
add below:

Code: Select all

if (isset($this->request->get['filter_email'])) {
			$filter_email = $this->request->get['filter_email'];
		} else {
			$filter_email = '';
		}
Then, find:

Code: Select all

'filter_author'     => $filter_author,
add right below:

Code: Select all

'filter_email' => $filter_email,
Then, find:

Code: Select all

$data['filter_author'] = $filter_author;
add right below:

Code: Select all

$data['filter_email'] = $filter_email;
Then, find:

Code: Select all

if (isset($this->error['rating'])) {
			$data['error_rating'] = $this->error['rating'];
		} else {
			$data['error_rating'] = '';
		}
add below:

Code: Select all

if (isset($this->error['email'])) {
			$data['error_email'] = $this->error['email'];
		} else {
			$data['error_email'] = '';
		}
Then, find:

Code: Select all

if (isset($this->request->post['rating'])) {
			$data['rating'] = $this->request->post['rating'];
		} elseif (!empty($review_info)) {
			$data['rating'] = $review_info['rating'];
		} else {
			$data['rating'] = '';
		}
add below:

Code: Select all

if (isset($this->request->post['email'])) {
			$data['email'] = $this->request->post['email'];
		} elseif (!empty($review_info)) {
			$data['email'] = $review_info['email'];
		} else {
			$data['email'] = '';
		}
Then, find:

Code: Select all

if ((utf8_strlen($this->request->post['author']) < 3) || (utf8_strlen($this->request->post['author']) > 64)) {
			$this->error['author'] = $this->language->get('error_author');
		}
add below:

Code: Select all

if ((!isset($this->request->post['email'])) || (isset($this->request->post['email']) && !filter_var($this->request->post['email'], FILTER_VALIDATE_EMAIL))) {
			$this->error['email'] = $this->language->get('error_email');
		}
In admin/language/your_language/catalog/review.php file,

add at the bottom:

Code: Select all

$_['column_email'] = 'Email';

$_['entry_email'] = 'Email';

$_['error_email'] = 'E-Mail Address does not appear to be valid!';
In admin/model/catalog/review.php file,

find all instances of:

Code: Select all

rating = '" . (int)$data['rating'] . "',
replace all with:

Code: Select all

rating = '" . (int)$data['rating'] . "', `email` = '" . $this->db->escape($data['email'']) . "',
Then, find:

Code: Select all

r.rating,
replace with:

Code: Select all

r.rating, `r`.`email`,
Then, find:

Code: Select all

'r.rating',
add right below:

Code: Select all

'r.email',
In admin/view/template/catalog/review_form.tpl file,

find:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-author"><?php echo $entry_author; ?></label>
            <div class="col-sm-10">
              <input type="text" name="author" value="<?php echo $author; ?>" placeholder="<?php echo $entry_author; ?>" id="input-author" class="form-control"/>
              <?php if ($error_author) { ?>
                <div class="invalid-tooltip"><?php echo $error_author; ?></div>
              <?php } ?></div>
          </div>
add below:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-email"><?php echo $entry_email; ?></label>
            <div class="col-sm-10">
              <input type="text" name="email" value="<?php echo $email; ?>" placeholder="<?php echo $entry_email; ?>" id="input-email" class="form-control"/>
              <?php if ($error_email) { ?>
                <div class="invalid-tooltip"><?php echo $error_email; ?></div>
             <?php } ?></div>
          </div>
Then, find:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-author"><?php echo $entry_author; ?></label>
            <div class="col-sm-10">
              <input type="text" name="author" value="<?php echo $author; ?>" placeholder="<?php echo $entry_author; ?>" id="input-author" class="form-control"/>
              <?php if ($error_author) { ?>
                <div class="invalid-tooltip"><?php echo $error_author; ?></div>
             <?php } ?></div>
          </div>
add below:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-email"><?php echo $entry_email; ?></label>
            <div class="col-sm-10">
              <input type="text" name="email" value="<?php echo $email; ?>" placeholder="<?php echo $entry_email; ?>" id="input-email" class="form-control"/>
              <?php if ($error_email) { ?>
                <div class="invalid-tooltip"><?php echo $error_email; ?></div>
              <?php } ?></div>
          </div>
Then, find:

Code: Select all

<td class="text-left"><?php if ($sort == 'r.author') { ?> <a href="<?php echo $sort_author; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_author; ?></a> <?php } else { ?> <a href="<?php echo $sort_author; ?>"><?php echo $column_author; ?></a> <?php } ?></td>
add below:

Code: Select all

<td class="text-left"><?php if ($sort == 'r.email') { ?> <a href="<?php echo $sort_email; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_email; ?></a> <?php } else { ?> <a href="<?php echo $sort_email; ?>"><?php echo $column_email; ?></a> <?php } ?></td>
Then, find:

Code: Select all

<td class="text-left"><?php echo $review['author']; ?></td>
add below:

Code: Select all

<td class="text-left"><?php echo $review['email']; ?></td>
Then, find:

Code: Select all

<td class="text-center" colspan="X">
Where X would be the current value that you see. Increment it to the next one.

Then, find:

Code: Select all

var filter_author = $('input[name=\'filter_author\']').val();

	if (filter_author) {
		url += '&filter_author=' + encodeURIComponent(filter_author);
	}
add below:

Code: Select all

var filter_email = $('input[name=\'filter_email\']').val();

	if (filter_email) {
		url += '&filter_email=' + encodeURIComponent(filter_email);
	}
In catalog/controller/product/product.php file,

find:

Code: Select all

$data['reviews'] = array();
add below:

Code: Select all

$data['entry_email'] = $this->language->get('entry_email');
Then, find:

Code: Select all

'author'     => $result['author'],
add below:

Code: Select all

'email' => html_entity_decode($result['email'], ENT_QUOTES, 'UTF-8'),
Then, find:

Code: Select all

if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 25)) {
				$json['error'] = $this->language->get('error_name');
			}
add below:

Code: Select all

if ((!isset($this->request->post['email'])) || (isset($this->request->post['email']) && !filter_var($this->request->post['email'], FILTER_VALIDATE_EMAIL))) {
				$json['error'] = $this->language->get('error_email');
			}
In catalog/language/your_language/product/product.php file,

add at the bottom:

Code: Select all

$_['entry_email'] = 'Email';

$_['error_email'] = 'E-Mail Address does not appear to be valid!';
In catalog/model/catalog/review.php file,

find:

Code: Select all

rating = '" . (int)$data['rating'] . "',
replace with:

Code: Select all

rating = '" . (int)$data['rating'] . "', `email` = '" . $this->db->escape($data['email']) . "',
Then, find:

Code: Select all

$message .= sprintf($this->language->get('text_reviewer'), html_entity_decode($data['name'], ENT_QUOTES, 'UTF-8')) . "\n";
add below:

Code: Select all

$message .= sprintf($this->language->get('text_email'), html_entity_decode($data['email'], ENT_QUOTES, 'UTF-8')) . "\n";
Then, find:

Code: Select all

r.rating,
replace with:

Code: Select all

r.rating, `r`.`email`,
In catalog/language/your_language/mail/review.php file,

add at the bottom:

Code: Select all

$_['text_email'] = 'Email: %s';
In catalog/view/theme/<your_theme>/template/product/product.tpl file,

find something similar to (based on the default theme):

Code: Select all

<div class="col-sm-12">
                    <label class="col-form-label" for="input-name"><?php echo $entry_name; ?></label>
                    <input type="text" name="name" value="<?php echo $customer_name; ?>" id="input-name" class="form-control" />
                  </div>
add right below:

Code: Select all

<div class="col-sm-12">
                    <label class="col-form-label" for="input-email"><?php echo $entry_email; ?></label>
                    <input type="text" email="email" value="<?php echo $customer_email; ?>" id="input-email" class="form-control" />
                  </div>
and fit it as most as you can with your custom theme.

Lastly, in your PHPMyAdmin's product table on your OC database, execute the following query:

Code: Select all

ALTER TABLE `oc_review` ADD `email` VARCHAR 96 NOT NULL AFTER `author`;
Note: Replace the: oc_ database table prefix name to the one you're using (if using a different prefix name).

This should resolved the issue.

Dedication and passion goes to those who are able to push and merge a project.

Regards,
Straightlight
Programmer / Opencart Tester


Legendary Member

Posts

Joined
Mon Nov 14, 2011 11:38 pm
Location - Canada, ON

Post by mehwishmalik » Thu Nov 01, 2018 2:48 am

straightlight wrote:
Fri Jun 22, 2018 11:36 pm
I have a good understanding of PHP and familiar with the OpenCart framework.
mehwishmalik wrote:
Wed Jun 20, 2018 2:47 pm
Hey thanx can u guide me with coding? and what about language folder?
Followed can be coded with OCMod / VQMod based on your preferences.

In admin/controller/catalog/review.php file,

find:

Code: Select all

'rating'     => $result['rating'],
add right below:

Code: Select all

'email'    => html_entity_decode($result['email'], ENT_QUOTES, 'UTF-8'),
Then, find:

Code: Select all

$data['sort_rating'] = $this->url->link('catalog/review', 'user_token=' . $this->session->data['user_token'] . '&sort=r.rating' . $url);
add below:

Code: Select all

$data['sort_email'] = $this->url->link('catalog/review', 'user_token=' . $this->session->data['user_token'] . '&sort=r.email' . $url);
Then, find all instances of:

Code: Select all

if (isset($this->request->get['filter_author'])) {
				$url .= '&filter_author=' . urlencode(html_entity_decode($this->request->get['filter_author'], ENT_QUOTES, 'UTF-8'));
			}
			
add below all:

Code: Select all

$data['entry_email'] = $this->language->get('entry_email');

$data['column_email']  = $this->language->get('column_email');

if (isset($this->request->get['filter_email'])) {
				$url .= '&filter_email=' . urlencode(html_entity_decode($this->request->get['filter_email'], ENT_QUOTES, 'UTF-8'));
			}
Then, find:

Code: Select all

if (isset($this->request->get['filter_author'])) {
			$filter_author = $this->request->get['filter_author'];
		} else {
			$filter_author = '';
		}
add below:

Code: Select all

if (isset($this->request->get['filter_email'])) {
			$filter_email = $this->request->get['filter_email'];
		} else {
			$filter_email = '';
		}
Then, find:

Code: Select all

'filter_author'     => $filter_author,
add right below:

Code: Select all

'filter_email' => $filter_email,
Then, find:

Code: Select all

$data['filter_author'] = $filter_author;
add right below:

Code: Select all

$data['filter_email'] = $filter_email;
Then, find:

Code: Select all

if (isset($this->error['rating'])) {
			$data['error_rating'] = $this->error['rating'];
		} else {
			$data['error_rating'] = '';
		}
add below:

Code: Select all

if (isset($this->error['email'])) {
			$data['error_email'] = $this->error['email'];
		} else {
			$data['error_email'] = '';
		}
Then, find:

Code: Select all

if (isset($this->request->post['rating'])) {
			$data['rating'] = $this->request->post['rating'];
		} elseif (!empty($review_info)) {
			$data['rating'] = $review_info['rating'];
		} else {
			$data['rating'] = '';
		}
add below:

Code: Select all

if (isset($this->request->post['email'])) {
			$data['email'] = $this->request->post['email'];
		} elseif (!empty($review_info)) {
			$data['email'] = $review_info['email'];
		} else {
			$data['email'] = '';
		}
Then, find:

Code: Select all

if ((utf8_strlen($this->request->post['author']) < 3) || (utf8_strlen($this->request->post['author']) > 64)) {
			$this->error['author'] = $this->language->get('error_author');
		}
add below:

Code: Select all

if ((!isset($this->request->post['email'])) || (isset($this->request->post['email']) && !filter_var($this->request->post['email'], FILTER_VALIDATE_EMAIL))) {
			$this->error['email'] = $this->language->get('error_email');
		}
In admin/language/your_language/catalog/review.php file,

add at the bottom:

Code: Select all

$_['column_email'] = 'Email';

$_['entry_email'] = 'Email';

$_['error_email'] = 'E-Mail Address does not appear to be valid!';
In admin/model/catalog/review.php file,

find all instances of:

Code: Select all

rating = '" . (int)$data['rating'] . "',
replace all with:

Code: Select all

rating = '" . (int)$data['rating'] . "', `email` = '" . $this->db->escape($data['email'']) . "',
Then, find:

Code: Select all

r.rating,
replace with:

Code: Select all

r.rating, `r`.`email`,
Then, find:

Code: Select all

'r.rating',
add right below:

Code: Select all

'r.email',
In admin/view/template/catalog/review_form.tpl file,

find:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-author"><?php echo $entry_author; ?></label>
            <div class="col-sm-10">
              <input type="text" name="author" value="<?php echo $author; ?>" placeholder="<?php echo $entry_author; ?>" id="input-author" class="form-control"/>
              <?php if ($error_author) { ?>
                <div class="invalid-tooltip"><?php echo $error_author; ?></div>
              <?php } ?></div>
          </div>
add below:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-email"><?php echo $entry_email; ?></label>
            <div class="col-sm-10">
              <input type="text" name="email" value="<?php echo $email; ?>" placeholder="<?php echo $entry_email; ?>" id="input-email" class="form-control"/>
              <?php if ($error_email) { ?>
                <div class="invalid-tooltip"><?php echo $error_email; ?></div>
             <?php } ?></div>
          </div>
Then, find:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-author"><?php echo $entry_author; ?></label>
            <div class="col-sm-10">
              <input type="text" name="author" value="<?php echo $author; ?>" placeholder="<?php echo $entry_author; ?>" id="input-author" class="form-control"/>
              <?php if ($error_author) { ?>
                <div class="invalid-tooltip"><?php echo $error_author; ?></div>
             <?php } ?></div>
          </div>
add below:

Code: Select all

<div class="form-group row required">
            <label class="col-sm-2 col-form-label" for="input-email"><?php echo $entry_email; ?></label>
            <div class="col-sm-10">
              <input type="text" name="email" value="<?php echo $email; ?>" placeholder="<?php echo $entry_email; ?>" id="input-email" class="form-control"/>
              <?php if ($error_email) { ?>
                <div class="invalid-tooltip"><?php echo $error_email; ?></div>
              <?php } ?></div>
          </div>
Then, find:

Code: Select all

<td class="text-left"><?php if ($sort == 'r.author') { ?> <a href="<?php echo $sort_author; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_author; ?></a> <?php } else { ?> <a href="<?php echo $sort_author; ?>"><?php echo $column_author; ?></a> <?php } ?></td>
add below:

Code: Select all

<td class="text-left"><?php if ($sort == 'r.email') { ?> <a href="<?php echo $sort_email; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_email; ?></a> <?php } else { ?> <a href="<?php echo $sort_email; ?>"><?php echo $column_email; ?></a> <?php } ?></td>
Then, find:

Code: Select all

<td class="text-left"><?php echo $review['author']; ?></td>
add below:

Code: Select all

<td class="text-left"><?php echo $review['email']; ?></td>
Then, find:

Code: Select all

<td class="text-center" colspan="X">
Where X would be the current value that you see. Increment it to the next one.

Then, find:

Code: Select all

var filter_author = $('input[name=\'filter_author\']').val();

	if (filter_author) {
		url += '&filter_author=' + encodeURIComponent(filter_author);
	}
add below:

Code: Select all

var filter_email = $('input[name=\'filter_email\']').val();

	if (filter_email) {
		url += '&filter_email=' + encodeURIComponent(filter_email);
	}
In catalog/controller/product/product.php file,

find:

Code: Select all

$data['reviews'] = array();
add below:

Code: Select all

$data['entry_email'] = $this->language->get('entry_email');
Then, find:

Code: Select all

'author'     => $result['author'],
add below:

Code: Select all

'email' => html_entity_decode($result['email'], ENT_QUOTES, 'UTF-8'),
Then, find:

Code: Select all

if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 25)) {
				$json['error'] = $this->language->get('error_name');
			}
add below:

Code: Select all

if ((!isset($this->request->post['email'])) || (isset($this->request->post['email']) && !filter_var($this->request->post['email'], FILTER_VALIDATE_EMAIL))) {
				$json['error'] = $this->language->get('error_email');
			}
In catalog/language/your_language/product/product.php file,

add at the bottom:

Code: Select all

$_['entry_email'] = 'Email';

$_['error_email'] = 'E-Mail Address does not appear to be valid!';
In catalog/model/catalog/review.php file,

find:

Code: Select all

rating = '" . (int)$data['rating'] . "',
replace with:

Code: Select all

rating = '" . (int)$data['rating'] . "', `email` = '" . $this->db->escape($data['email']) . "',
Then, find:

Code: Select all

$message .= sprintf($this->language->get('text_reviewer'), html_entity_decode($data['name'], ENT_QUOTES, 'UTF-8')) . "\n";
add below:

Code: Select all

$message .= sprintf($this->language->get('text_email'), html_entity_decode($data['email'], ENT_QUOTES, 'UTF-8')) . "\n";
Then, find:

Code: Select all

r.rating,
replace with:

Code: Select all

r.rating, `r`.`email`,
In catalog/language/your_language/mail/review.php file,

add at the bottom:

Code: Select all

$_['text_email'] = 'Email: %s';
In catalog/view/theme/<your_theme>/template/product/product.tpl file,

find something similar to (based on the default theme):

Code: Select all

<div class="col-sm-12">
                    <label class="col-form-label" for="input-name"><?php echo $entry_name; ?></label>
                    <input type="text" name="name" value="<?php echo $customer_name; ?>" id="input-name" class="form-control" />
                  </div>
add right below:

Code: Select all

<div class="col-sm-12">
                    <label class="col-form-label" for="input-email"><?php echo $entry_email; ?></label>
                    <input type="text" email="email" value="<?php echo $customer_email; ?>" id="input-email" class="form-control" />
                  </div>
and fit it as most as you can with your custom theme.

Lastly, in your PHPMyAdmin's product table on your OC database, execute the following query:

Code: Select all

ALTER TABLE `oc_review` ADD `email` VARCHAR 96 NOT NULL AFTER `author`;
Note: Replace the: oc_ database table prefix name to the one you're using (if using a different prefix name).



This should resolved the issue.


Hi thax for your reply kindly see attachment (undefined error)

Attachments

undefine.png

undefine.png (55.14 KiB) Viewed 1696 times


New member

Posts

Joined
Fri Feb 16, 2018 7:37 pm
Who is online

Users browsing this forum: No registered users and 46 guests