Jump to content
VJ

Easy Populate & Products Attributes

Recommended Posts

i can use the brows button and import from my computer but what im trying to do is use easy populte to import the catelogue and then let osc import the images from a remote server. i Imported a blank file from my host/store to make sure i got the correct database structure.

 

when i checked, the Image URL was being placed correctly in the image URL part of the form. just under the Brows button there is a box that says next to it"image url" so i assumed that you can put a url for a server anywhere and import the image... however, it didnt work so i put 1 to my own site to see if that would work just to check but that didnt work??? it seems a bit strange that they would have a box for image url if it doesnt work so??? i dunno its got to be me doing something wrong??? but any help is alway apriciated so if you can help and stop me pullin what's left of my hair out lol

 

you need to read that a little more carefully, that says "product url". that field is for a link to a manufacturer's product page on the manufacturer's website.

 

So, you need to either place the images on the server and use EP to import the correct location relative to the /images/ folder on your server. Or, use the browse button on the product edit page and select the image from your computer for upload. Those are the only choices you have unless you have a contribution installed to offer the functionality you describe, in which case you need to look up that contribution's support thread and post there.

Share this post


Link to post
Share on other sites

hi again

 

sorry i ,eant product URL derr lol.

 

ah so, i caanot enter the product URLs that the suplier gave me into the product URL box as to get osc to import off of the suplier's server??? I tought that if i can put it in a browser and get the image i could put it in the product URL part in osc and have osc retrieve the image.

 

when i imported with EP, i did so from my temp dir after FTPing in to the temp, then i checked and the URLs were being placed in the product URL box but I now know that osc will not drawer the image from the suplier's server as a browswe will if i add the same URL in the address bar.

 

Oh well, you live and you learn.

 

If you know of any contributions or find 1 before I do will you please post the link, equally, if i find 1 i will be sure to post the link for yourself and otheres that may want to perform the same task as i. so,,, now to down ;oad all the images, and then upload into my image (image folder soon to get packed and messy) and then get EP to import fromthat folder.

 

thanks again sir surfalot

 

kind regards

 

 

 

paul

Share this post


Link to post
Share on other sites

hi again

 

sorry i ,eant product URL derr lol.

 

ah so, i caanot enter the product URLs that the suplier gave me into the product URL box as to get osc to import off of the suplier's server??? I tought that if i can put it in a browser and get the image i could put it in the product URL part in osc and have osc retrieve the image.

 

when i imported with EP, i did so from my temp dir after FTPing in to the temp, then i checked and the URLs were being placed in the product URL box but I now know that osc will not drawer the image from the suplier's server as a browswe will if i add the same URL in the address bar.

 

Oh well, you live and you learn.

 

If you know of any contributions or find 1 before I do will you please post the link, equally, if i find 1 i will be sure to post the link for yourself and otheres that may want to perform the same task as i. so,,, now to down ;oad all the images, and then upload into my image (image folder soon to get packed and messy) and then get EP to import fromthat folder.

 

thanks again sir surfalot

 

kind regards

 

 

 

paul

if you do find one, let me know. Serveral folks have been looking for something like this (over the years).

Share this post


Link to post
Share on other sites

EP won't export the products from the root. osCommerce also won't display products (I believe) when they are placed there. The products need to be in at least one category. My guess is you don't have the column headers correct for the categories. Look again at the Import File Format and Description of Column Headers section of the EP documentation. Then look at the "how to ask for help" topic of the support section in those docs for all the information I need to help you further.

 

Thanks very much, I hadn't realised that products shouldn't be uploaded into the root - all makes sense now. Thanks.

Share this post


Link to post
Share on other sites

Is there any way of removing the "v_products_model" field? I don't really want to have a number displayed after the product name. Also, is it possible to do the same thing for the quantity? E.g, can I hide the amount quantities of products I have in stock?

 

Lastly, do I have to process all images with AI after uploading new products? I uploaded a test product and the image was big...then I processed it and it was fine.

 

Thanks!

Share this post


Link to post
Share on other sites

Is there any way of removing the "v_products_model" field? I don't really want to have a number displayed after the product name. Also, is it possible to do the same thing for the quantity? E.g, can I hide the amount quantities of products I have in stock?

 

Lastly, do I have to process all images with AI after uploading new products? I uploaded a test product and the image was big...then I processed it and it was fine.

 

Thanks!

the v_products_model is required. it is how the product and the data is matched. You should remove the code that displays the model number on your products page.

You don't have to upload a quantity, the column can be left out entirely. You may have to edit your product page code to stop that from displaying (different forum)

currently you must process the images after uploading. There are two utilities on that page. Use the one that looks for unprocessed images.

Share this post


Link to post
Share on other sites

the v_products_model is required. it is how the product and the data is matched. You should remove the code that displays the model number on your products page.

You don't have to upload a quantity, the column can be left out entirely. You may have to edit your product page code to stop that from displaying (different forum)

currently you must process the images after uploading. There are two utilities on that page. Use the one that looks for unprocessed images.

Okay, thank you! So, I just have to make changes really to the product page. Thanks!

Share this post


Link to post
Share on other sites

Hi:

I just installed Actual Attribute Price V1.0 and found it to be quite nice.

I have one attribute that need to be actual price and another one needs to be add on price.

And it works awsome on both.

Example:

http://www.pacsonic.com/product_info.php?products_id=127&language=en

 

Everything looked cool until I started using Easy Populate

I noticed that the csv file downloaded thru Easy Populate does not have columns that allows edit to prefix of the attribute value

And if I edit all attributes in csv and upload in Easy Populate, since there's no columns to edit prefix i guess osc consider these attribute values all default to be "+"

And therefor after the upgraded upload all the product details page ended up looking like this:

http://www.pacsonic.com/product_info.php?products_id=69&language=en

 

That is no good, since I have 2000+ products that all contain these attribute, it would be painful to remove the prefix in the admin area manually for every single product.

Please help me, I really need these two to work together.

without Actual Attribute Price my customers won't be able to get discounts by amount.

and without Easy Populate it will take forever to add all my products in the store.

Please help.

Edited by mid9tblue

Share this post


Link to post
Share on other sites

Hi:

I just installed Actual Attribute Price V1.0 and found it to be quite nice.

I have one attribute that need to be actual price and another one needs to be add on price.

And it works awsome on both.

Example:

http://www.pacsonic....127&language=en

 

Everything looked cool until I started using Easy Populate

I noticed that the csv file downloaded thru Easy Populate does not have columns that allows edit to prefix of the attribute value

And if I edit all attributes in csv and upload in Easy Populate, since there's no columns to edit prefix i guess osc consider these attribute values all default to be "+"

And therefor after the upgraded upload all the product details page ended up looking like this:

http://www.pacsonic....=69&language=en

 

That is no good, since I have 2000+ products that all contain these attribute, it would be painful to remove the prefix in the admin area manually for every single product.

Please help me, I really need these two to work together.

without Actual Attribute Price my customers won't be able to get discounts by amount.

and without Easy Populate it will take forever to add all my products in the store.

Please help.

did you search before posting? :)

 

put "Attribute Price" (including the quotes) in the search box (lower-left of page). 4th item on the search results. lines numbers changed, rest is still valid. Search and replace.

Share this post


Link to post
Share on other sites

I found this but having trouble understanding it, line numbers are way off.

I'll spend my tomorrow going through these, thanks for pointing me to this post.

 

Actual Attribute for Easy populate

If you are using easy populate this will allow you to add the actual attributes

I don't knowif everyone is using the same easy populat so I am going to add the whole sections I edited you will see //hadir where I edited

this is form line 336-397

  // If you have other modules that need to be available, put them here

 // VJ product attribs begin
//start hadir @phpmom.com show attrib only
   $products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$row['v_products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
   $products_attributes = tep_db_fetch_array($products_attributes_query);
   if ($products_attributes['total'] > 0) { //end show attrib only
 if (isset($filelayout['v_attribute_options_id_1'])){
	 $languages = tep_get_languages();

	 $attribute_options_count = 1;
     foreach ($attribute_options_array as $attribute_options) {
   $row['v_attribute_options_id_' . $attribute_options_count]  = $attribute_options['products_options_id'];

   for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
  	 $lid = $languages[$i]['id'];

  	 $attribute_options_languages_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$attribute_options['products_options_id'] . "' and language_id = '" . (int)$lid . "'";

  	 $attribute_options_languages_values = tep_db_query($attribute_options_languages_query);

  	 $attribute_options_languages = tep_db_fetch_array($attribute_options_languages_values);

  	 $row['v_attribute_options_name_' . $attribute_options_count . '_' . $lid] = $attribute_options_languages['products_options_name'];
   }

   $attribute_values_query = "select products_options_values_id from " . TABLE_PRODUCTS_OPTIONS_VALUES_TO_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$attribute_options['products_options_id'] . "' order by products_options_values_id";

   $attribute_values_values = tep_db_query($attribute_values_query);

   $attribute_values_count = 1;
   while ($attribute_values = tep_db_fetch_array($attribute_values_values)) {
  	 $row['v_attribute_values_id_' . $attribute_options_count . '_' . $attribute_values_count]  = $attribute_values['products_options_values_id'];

  	 $attribute_values_price_query = "select options_values_price, price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " where products_id = '" . (int)$row['v_products_id'] . "' and options_id = '" . (int)$attribute_options['products_options_id'] . "' and options_values_id = '" . (int)$attribute_values['products_options_values_id'] . "'";

  	 $attribute_values_price_values = tep_db_query($attribute_values_price_query);

  	 $attribute_values_price = tep_db_fetch_array($attribute_values_price_values);

//hadir AAP   	 $row['v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count]  = $attribute_values_price['price_prefix'] . $attribute_values_price['options_values_price'];

  	 $row['v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count]  = $attribute_values_price['options_values_price']; //hadir actual attribute
  	 $row['v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count.'_prefix']  = $attribute_values_price['price_prefix']; //hadir actual attribute

  	 for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
     $lid = $languages[$i]['id'];

     $attribute_values_languages_query = "select products_options_values_name from " . TABLE_PRODUCTS_OPTIONS_VALUES . " where products_options_values_id = '" . (int)$attribute_values['products_options_values_id'] . "' and language_id = '" . (int)$lid . "'";

     $attribute_values_languages_values = tep_db_query($attribute_values_languages_query);

     $attribute_values_languages = tep_db_fetch_array($attribute_values_languages_values);

     $row['v_attribute_values_name_' . $attribute_options_count . '_' . $attribute_values_count . '_' . $lid] = $attribute_values_languages['products_options_values_name'];
  	 }

  	 $attribute_values_count++;
   }

   $attribute_options_count++;
	 }
 } }//hadir phpmom.com
 // VJ product attribs end

 

line 1325 -1344

 	 $attribute_values_count = 1;
	 while ($attribute_values = tep_db_fetch_array($attribute_values_values)) {
   $key3 = 'v_attribute_values_id_' . $attribute_options_count . '_' . $attribute_values_count;
   $header_array[$key3] = $iii++;

   $key4 = 'v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count.'_prefix'; //hadir AAP
   $header_array[$key4] = $iii++;

   $key5 = 'v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count; //Hadir AAP
   $header_array[$key5] = $iii++; //Hadir AAP

   for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
  	 $l_id = $languages[$i]['id'];

  	 $key6 = 'v_attribute_values_name_' . $attribute_options_count . '_' . $attribute_values_count . '_' . $l_id; //Hadir AAP
  	 $header_array[$key6] = $iii++; //Hadir AAP
   }

   $attribute_values_count++;
	 }

 

line 2202-2218

   	 // options_values price update begin
     $v_attribute_values_price_var = 'v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count;
     $v_attribute_values_prefix_var = 'v_attribute_values_price_' . $attribute_options_count . '_' . $attribute_values_count.'_prefix';//hadir//actual attrib

  	 if (isset($$v_attribute_values_price_var) && ($$v_attribute_values_price_var != '')) {
     $attribute_prices_query = "select options_values_price, price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " where products_id = '" . (int)$v_products_id . "' and options_id ='" . (int)$$v_attribute_options_id_var . "' and options_values_id = '" . (int)$$v_attribute_values_id_var . "'";

     $attribute_prices_values = tep_db_query($attribute_prices_query);
//hadir AAP      $attribute_values_price_prefix = ($$v_attribute_values_price_var < 0) ? '-' : '+';

//start hadir.net actual attrib price
if (($$v_attribute_values_prefix_var == '-') || ($$v_attribute_values_prefix_var == '+')||(!$$v_attribute_values_prefix_var)){
$attribute_values_price_prefix = $$v_attribute_values_prefix_var;}
else $attribute_values_price_prefix = '+';

//end hadir.net actual attrib

     // options_values_prices table update begin
     // insert into options_values_prices table if no price exists

Share this post


Link to post
Share on other sites

I found this but having trouble understanding it, line numbers are way off.

I'll spend my tomorrow going through these, thanks for pointing me to this post.

 

 

 

post #5984 is the one you should be looking at

Share this post


Link to post
Share on other sites

post #5984 is the one you should be looking at

 

Thx, I made the changes according to #5984, but it didn't solve my problems tho.

my previous issue was all prefix were set to "+"

my issue now is that all prefix were set to " "

I only have one attribute that needs to be actual price.

The other two attribute still need the "+"

Is there any way to have them both???

 

I figured in order to download and mass edit prefix in easy populate,

there should be columns like v_attribute_value_prefix, that would make a lot of sense.

 

Thank you.

Edited by mid9tblue

Share this post


Link to post
Share on other sites

I am using osCommerce Online Merchant v2.2 RC2a and Easy Populate 2.76h-MS2

 

I have tried to update my inventory via Easy Populate (Upload and Import EP File, Update Only) but none of the images are displaying correctly, all the image urls are truncated, for example

 

http://i563.photobucket.com/albums/ss76/double_-_happiness/AAA/A

instead of

http://i563.photobucket.com/albums/ss76/double_-_happiness/AAA/AntoninDvorakBerlinPhilharmonicOrch.jpg (hover your mouse cursor over to se the full path)

 

It seems to be very close to fetching the image from photobucket, it's just the truncated url that's causing the problem, isn't it? I don't really want to have to host my images on my own server, it's just going to create a lot of extra work and use more storage space and bandwidth than I want... thx

Share this post


Link to post
Share on other sites

Hi,

 

I add a field named products_vendor_model to the database under Product Table.

 

I also Modified easypopulate.php

$custom_fields[TABLE_PRODUCTS] = array( 'products_vendor_model' => 'Supplier_model' );

 

Now I succeed to download by EP only CUSTOM download option with my new field.

 

I would like to represend v_products_vendor_model to be the second column, right after the first column of v_product_model.

 

Any advise how should i do that? do I need to enter that new field after any product_model I find in Easypopulate file??

 

Thanks,

Nathali


Best Regards,

Nathali

Share this post


Link to post
Share on other sites

Hi,

 

I add a field named products_vendor_model to the database under Product Table.

 

I also Modified easypopulate.php

$custom_fields[TABLE_PRODUCTS] = array( 'products_vendor_model' => 'Supplier_model' );

 

Now I succeed to download by EP only CUSTOM download option with my new field.

 

I would like to represend v_products_vendor_model to be the second column, right after the first column of v_product_model.

 

Any advise how should i do that? do I need to enter that new field after any product_model I find in Easypopulate file??

 

Thanks,

Nathali

 

you can upload the columns in any order. Unfortunately there isn't any easy way to reorder the columns when downloading. But once you open it in a spreadsheet software you can easily move the column by dragging or cut/paste.

 

this change to easypopulate.php may help for the custom download. The full download would be similar.

 

 	$filelayout['v_products_model'] = $iii++;

	if (!empty($_GET['epcust_status'])) { $filelayout['v_status'] = $iii++; }

	foreach ($languages as $key => $lang){
	if (!empty($_GET['epcust_name'])) { $filelayout['v_products_name_'.$lang['id']] = $iii++; }
	if (!empty($_GET['epcust_description'])) { $filelayout['v_products_description_'.$lang['id']] = $iii++; }
	if (!empty($_GET['epcust_url'])) { $filelayout['v_products_url_'.$lang['id']] = $iii++; }
	foreach ($custom_fields[TABLE_PRODUCTS_DESCRIPTION] as $key => $name) { 
	if (!empty($_GET['epcust_' . $key])) { $filelayout['v_' . $key . '_'.$lang['id']] = $iii++; }
	}
	}

	if (!empty($_GET['epcust_image']) || !empty($_GET['epcust_add_images'])) {
	$filelayout['v_products_image'] = $iii++;

	if (!empty($ep_additional_layout_product)) {
	eval($ep_additional_layout_product);
	}
	}

	foreach ($custom_fields[TABLE_PRODUCTS] as $key => $name) { 
	if (!empty($_GET['epcust_' . $key])) {
	$filelayout['v_' . $key] = $iii++;
	$ep_additional_layout_product_select .= 'p.' . $key . ' as v_' . $key . ',';
	}
	}

 

change to

 	$filelayout['v_products_model'] = $iii++;

	foreach ($custom_fields[TABLE_PRODUCTS] as $key => $name) { 
	if (!empty($_GET['epcust_' . $key])) {
	$filelayout['v_' . $key] = $iii++;
	$ep_additional_layout_product_select .= 'p.' . $key . ' as v_' . $key . ',';
	}
	}

	if (!empty($_GET['epcust_status'])) { $filelayout['v_status'] = $iii++; }

	foreach ($languages as $key => $lang){
	if (!empty($_GET['epcust_name'])) { $filelayout['v_products_name_'.$lang['id']] = $iii++; }
	if (!empty($_GET['epcust_description'])) { $filelayout['v_products_description_'.$lang['id']] = $iii++; }
	if (!empty($_GET['epcust_url'])) { $filelayout['v_products_url_'.$lang['id']] = $iii++; }
	foreach ($custom_fields[TABLE_PRODUCTS_DESCRIPTION] as $key => $name) { 
	if (!empty($_GET['epcust_' . $key])) { $filelayout['v_' . $key . '_'.$lang['id']] = $iii++; }
	}
	}

	if (!empty($_GET['epcust_image']) || !empty($_GET['epcust_add_images'])) {
	$filelayout['v_products_image'] = $iii++;

	if (!empty($ep_additional_layout_product)) {
	eval($ep_additional_layout_product);
	}
	}

Share this post


Link to post
Share on other sites

I am using osCommerce Online Merchant v2.2 RC2a and Easy Populate 2.76h-MS2

 

I have tried to update my inventory via Easy Populate (Upload and Import EP File, Update Only) but none of the images are displaying correctly, all the image urls are truncated, for example

 

http://i563.photobuc...happiness/AAA/A

instead of

http://i563.photobuc...armonicOrch.jpg (hover your mouse cursor over to se the full path)

 

It seems to be very close to fetching the image from photobucket, it's just the truncated url that's causing the problem, isn't it? I don't really want to have to host my images on my own server, it's just going to create a lot of extra work and use more storage space and bandwidth than I want... thx

 

easypopulate does not fetch images from other sources. you have to upload the images to your server and reference those images locations in the EP file. Please do read a few of the most recent pages of the topic before posting. (along with the EP documentation)

Share this post


Link to post
Share on other sites

you can upload the columns in any order. Unfortunately there isn't any easy way to reorder the columns when downloading. But once you open it in a spreadsheet software you can easily move the column by dragging or cut/paste.

 

this change to easypopulate.php may help for the custom download. The full download would be similar.

 

Thank you very much Todd !!

 

I understand what you mean.

 

Now my life will be much easier and inserting products prices will not be a nightmare anymore. :D

 

Thanks again, Todd also for your previous advise ;)

 

Have a nice weekend,

Nathali


Best Regards,

Nathali

Share this post


Link to post
Share on other sites

Surfalot,

 

I'm having the same problem here. EP_v2_76i_MS2 working nicely w/ Additional Images v2.2.0 but not with qtpro4.6.1

 

It exports the v_attribute_values_stock field but all empty.

 

My settings:

 

// change this to false, if do not want to download product attributes
define ('EP_PRODUCTS_WITH_ATTRIBUTES', true);  // default is true

// change this to true, if you use QTYpro and want to set attributes stock with EP.
define ('EP_PRODUCTS_ATTRIBUTES_STOCK', true); // default is false

 

Please rescue me :)

 

 

 

 

Hi!

 

I've downloaded the latest version EP 2.76i and noticed there is a configuration setting for use of QTPro (attributes stock). I've added some stock values for an item in admin and then exported the file. However, stock values are not exported even though EP_PRODUCTS_ATTRIBUTES_STOCK is set to true. The columns in the CSV file are there, but they are empty.

 

Share this post


Link to post
Share on other sites

easypopulate does not fetch images from other sources. you have to upload the images to your server and reference those images locations in the EP file. Please do read a few of the most recent pages of the topic before posting. (along with the EP documentation)

 

Hi

 

this is what i have tried to... i use EP to import the image URLs but os then would not import the image from that URL... so i set up a new host account to serve my images and that wouldn't work, then i tried to create a new dir in my site catelogue and then entering the pate to that dir/image.jpg but still no joy.

 

i dont knw what i'm doing wrong??? it may be that i'm not editing the get_product_image.php file correctly, i'm not entering the path/s in the correct format??? i say this because when i log onto my host account the path is something like http://www.mystore.hosturl.com/userid/home/public_html... some 1 pleaaaaaaasseeeee help i am at my whits end with just the though of populating my site with 15+ thousand images etc

 

thanx in nticipation

 

 

paul

Share this post


Link to post
Share on other sites

Hi

 

this is what i have tried to... i use EP to import the image URLs but os then would not import the image from that URL... so i set up a new host account to serve my images and that wouldn't work, then i tried to create a new dir in my site catelogue and then entering the pate to that dir/image.jpg but still no joy.

 

i dont knw what i'm doing wrong??? it may be that i'm not editing the get_product_image.php file correctly, i'm not entering the path/s in the correct format??? i say this because when i log onto my host account the path is something like http://www.mystore.h.../public_html... some 1 pleaaaaaaasseeeee help i am at my whits end with just the though of populating my site with 15+ thousand images etc

 

thanx in nticipation

 

 

paul

Dear Whits-end,

 

you may want to look at the "how to ask for help" sub-section in the Support section of the docs. When you have complied with those suggestions, someone may be able to help you further with your problem.

 

-me.

Share this post


Link to post
Share on other sites

Surfalot,

 

I'm having the same problem here. EP_v2_76i_MS2 working nicely w/ Additional Images v2.2.0 but not with qtpro4.6.1

 

It exports the v_attribute_values_stock field but all empty.

 

My settings:

 

// change this to false, if do not want to download product attributes
define ('EP_PRODUCTS_WITH_ATTRIBUTES', true); // default is true

// change this to true, if you use QTYpro and want to set attributes stock with EP.
define ('EP_PRODUCTS_ATTRIBUTES_STOCK', true); // default is false

 

Please rescue me :)

 

 

 

 

 

 

when you have missing columns in the attributes, most often the cause is you have some bad data in your database. It's also possible QT-pro has changed making EP incompatible.

Share this post


Link to post
Share on other sites

Hello,

 

I would like to know if this is a normal behavior of EP ?

 

By using CUSTOM download:

when I mark: price, quantity OR

price, quantity, vendor (a new field I created)

And I believe also at any combination I choose..

 

I get multiplied of "product_model" in the excel column. I assume because, I use the same "product model" for various Categories and sub Categories, and thats fine for me..

 

BUT, when I use "quick links" and download by model,price,quantity I get ONE single "product model" and no multiplied "product model"... !

 

Is it normal behavior of EP and I should't worry about, or I have a problem somewhere that I should fix?

 

I use Easy Populate 2.76h-MS2

 

Thanks a lot for your kind attention..

 

Best Regards,

Nathli


Best Regards,

Nathali

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×