Community @ The Turning Gate

Support community for TTG plugins and products.

NOTICE

The Turning Gate's Community has moved to a new home, at https://discourse.theturninggate.net.

This forum is now closed, and exists here as a read-only archive.

  • New user registrations are disabled.
  • Users cannot create new topics.
  • Users cannot reply to existing topics.

You are not logged in.

#2 Re: Backlight 3 Customization » Tips for writing lot of text in Cart "add to cart" modal window » 2020-06-09 06:44:44

Yes, the add to cart for each image.
On iPad  Pro 9,7 inch, OS v 13.3.1

A link to a little video of the problem (was the same before I made the collapsible content):
https://youtu.be/uS2pHO2aeiE

#3 Re: Backlight 3 Customization » Tips for writing lot of text in Cart "add to cart" modal window » 2020-06-09 02:14:22

Yes Matt, on my website and my iPad (I think it’s 11 inch model), last version OS installed, the Cart modal windows dosen’t scroll.
But on my iPhone 7 no problem

#4 Backlight 3 Customization » Tips for writing lot of text in Cart "add to cart" modal window » 2020-06-09 01:54:32

Nico3939
Replies: 7

Hi,
Just to give a simple tip regarding Cart, when you have a fairly large amount of information to write in the product description.

I found this simple solution which consists in creating collapsible content, because on certain browser, like on my iPad, the Cart window was not scrollable.

Here for example, html code to write in the description of your products then the corresponding CSS, no need for javascript.

HTML product description (in 2 languages but you can do what you want):

<div  data-lang="fr" >
	<p>
		<span style="color: #808080; font-family: helvetica; font-size: small;">DESCRPTION FR</span>
	</p>
</div>
<br />
<br />
<section  data-lang="fr" class="accordionlic">
	<input type="checkbox" name="collapse" id="handle1" >
		<h2 class="handle">
			<label for="handle1">Plus d'infos</label>
		</h2>
		<div class="contentlic">
			<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tincidunt arcu ut nunc congue, vitae sagittis quam ultrices. Suspendisse quis ultricies sem. Aenean imperdiet venenatis urna, in convallis dui iaculis ullamcorper. Praesent rhoncus aliquet augue. Suspendisse eu orci ac tortor aliquam accumsan eu ut neque. Duis lacinia tortor eget sem posuere, quis volutpat sapien posuere. Etiam erat augue, consequat nec lorem id, tempor tempor urna. Etiam non vulputate arcu. Fusce molestie accumsan dictum.</p>
		</div>
	</section>
	<div  data-lang="en" >
		<p>
			<span style="color: #808080; font-family: helvetica; font-size: small;">DESCRIPTION EN</span>
		</p>
	</div>
	<br />
	<br />
	<section  data-lang="en" class="accordionlic">
		<input type="checkbox" name="collapse" id="handle2" >
			<h2 class="handle">
				<label for="handle2">More informations</label>
			</h2>
			<div class="contentlic">
				<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tincidunt arcu ut nunc congue, vitae sagittis quam ultrices. Suspendisse quis ultricies sem. Aenean imperdiet venenatis urna, in convallis dui iaculis ullamcorper. Praesent rhoncus aliquet augue. Suspendisse eu orci ac tortor aliquam accumsan eu ut neque. Duis lacinia tortor eget sem posuere, quis volutpat sapien posuere. Etiam erat augue, consequat nec lorem id, tempor tempor urna. Etiam non vulputate arcu. Fusce molestie accumsan dictum.</p>
			</div>
		</section>

All you have to do is to replace "DESCRPTION FR" and "DESCRPTION EN" and the Lorem text.
Don't forget named id with different number for each different product:

id="handle1" and label for="handle1"
id="handle2" and label for="handle2"
id="handle3" and label for="handle3"
....etc...


An the corresponding css:

		/* Toggle product description >>
=================================================== */
/*
 CSS for the main interaction
*/
.accordionlic > input[type="checkbox"] {
  position: absolute;
  left: -100vw;
}

.accordionlic .contentlic {
  overflow-y: hidden;
  height: 0;
  transition: height 0.3s ease;
}

.accordionlic > input[type="checkbox"]:checked ~ .contentlic {
  height: auto;
  overflow: visible;
}

.accordionlic label {
  display: block;
}

/*
 Styling
*/

.accordionlic {
  margin-bottom: 1em;
}

.accordionlic > input[type="checkbox"]:checked ~ .contentlic {
  padding: 5px;
  border: 1px solid #e8e8e8;
  border-top: 0;
}

.accordionlic .handle {
  margin: 0;
  font-size: 1.125em;
  line-height: 1.2em;
}

.accordionlic label {
  color: #333;
  cursor: pointer;
  font-weight: normal;
  padding: 5px;
  background: #e8e8e8;
}

.accordionlic label:hover,
.accordionlic label:focus {
  background: #d8d8d8;
}

.accordionlic .handle label:before {
  font : normal normal 14px/1 Font Awesome\ 5 Pro;

  content: "\f054";
  display: inline-block;
  margin-right: 10px;
  font-size: .58em;
  line-height: 1.556em;
  vertical-align: middle;
}

.accordionlic > input[type="checkbox"]:checked ~ .handle label:before {
  content: "\f078";
}

That's all!

You can view it on my live website:
https://phototheque.nicolaslogerot.com/

#6 Re: Backlight 3 Support » Cart package question » 2020-06-08 22:12:02

Thanks Rod,

in fact, it seems to me, but I did not try because I do not have a test site and I do not want to upset my site online, that digital packages only work if the option "Enable Offline Digital Purchases" is activated .

Only here, I offer download files for immediate download in several definitions, so that the process is automatic. I don't want to have to send digital files one by one every time.

On the other hand it is apparently impossible to combine these 2 options "packages" and "immediate digital download in several resolutions"

#7 Re: Backlight 3 Support » Cart package question » 2020-06-08 18:24:33

Yes Rod, but for digital download, it seem to be impossible

#8 Backlight 3 Support » Cart error » 2020-06-03 18:36:31

Nico3939
Replies: 1

Hello,

I think I found a small bug in Cart
When, for example, you have added a digital file to the basket and you inadvertently later want to add the same file to the basket, a warning message appears telling you:

Something Went Wrong

This digital purchase has already been added to the cart and can not be added more than once.

So far, no problem, it's completely normal. By cons the thing is that when this message appears, even if we choose another option, such as a photo print, so a physical product, nothing happens. The user must close the Cart window and re-click on the image to add the product to the cart.

#9 Backlight 3 Support » Cart package question » 2020-06-03 16:18:39

Nico3939
Replies: 6

Hello,

Is it possible to offer digital download packs with Cart knowing that I offer 3 different file resolutions (Web, Print, Print HD) for immediate download.
When I add a pack, I only see the physical products (prints) but not the files.

Thanks

#10 Re: General » Web tools validation » 2020-05-27 17:36:17

And a trick in Google Chrome browser, to simulate the appearance of sites on different displays (iPad, mobile ...), very useful:

Capture-d-cran-2020-05-27-10-09-06.jpg
Capture-d-cran-2020-05-27-10-09-41.jpg
Capture-d-cran-2020-05-27-10-09-48.jpg

#11 General » Web tools validation » 2020-05-26 19:58:41

Nico3939
Replies: 4

Hi all,

This is not a post on Backlight itself but rather verification tools that I use and which verify that the site is up to standards in terms of web standards.

If the post disturbs, I will delete it, again my apologies, but these tools allowed me to avoid and resolve a lot of errors.

HTML, CSS, Javascript editors ...:

https://html-online.com/editor/

https://codepen.io


Markdown editor:

https://stackedit.io/app#


HTML validator:

https://validator.w3.org/nu/


HTML 5 Validator:
https://html5.validator.nu


Markup Validation Service

https://validator.w3.org


HTML  editor and validator (I use this one most):

https://jsonformatter.org/html-validator


CSS validator:

https://jigsaw.w3.org/css-validator/


Brocken link checker:

https://www.brokenlinkcheck.com/broken-links.php#status
https://validator.w3.org/checklink


Browser testing (safari, firefox, chrome ....) tryout for 5 min but more than enough

https://app.crossbrowsertesting.com/trial_started


Form of all kinds, simple, with lots of options and free (except mail and payment function) but super practical (see my page for the calculation of the sides of the prints: https://phototheque.nicolaslogerot.com/tarifs):

https://app.calconic.com/signup

Diagram
https://app.diagrams.net


UPDATE:

Character counter, useful for Meta Description:
https://www.charactercountonline.com


Htaccess generator:

For SEO-friendly Redirects:
https://www.danielmorell.com/tools/htac … -generator

And another:
https://www.htaccessredirect.net/

Error Page Generator
https://www.generateit.net/error-pages/



And you, put your suggestions and tips under this post!

#12 Re: Backlight 3 Customization » Modal image stay on top » 2020-05-22 19:36:04

Thanks for all, you’re right, I have to look at these solutions

Thank you very much

#13 Backlight 3 Customization » Modal image stay on top » 2020-05-21 16:56:19

Nico3939
Replies: 4

Hi,

I am installing a modal window for an image but my problem is when we scroll the page, the modal window remains at the top of the page.
I can not find the CSS trick that would make the window appear in full screen instead is place regardless of the position of the scrolling of the page.

Here is an example on my page, scroll down and click on the image:

https://phototheque.nicolaslogerot.com/test

To see the modal window, you can click on the arrow "Scroll to top" at the bottom right

And here is the html code:

<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum sodales arcu vitae laoreet luctus. Fusce ullamcorper id nibh eget hendrerit. Phasellus est metus, posuere eu ipsum at, suscipit dapibus massa. Nunc aliquam consectetur velit a porta. Etiam convallis venenatis lorem id porttitor. Etiam et efficitur eros. Sed diam arcu, auctor vel felis nec, pulvinar bibendum eros. Curabitur consequat dui magna, eu vehicula lectus efficitur sit amet. Nullam ut fermentum nulla. Aliquam quis scelerisque ligula, in placerat orci. Pellentesque non elit in sem iaculis euismod eget id odio. Sed consequat massa a pharetra tincidunt.... blablabla.....</p>
<div data-lang="fr">
<img class="myImg" src="https://phototheque.nicolaslogerot.com/backlight/designer/page/image/36" alt="Dimensions des tirages" style="width:100%;max-width:300px">
</div>
<div data-lang="en">
<img class="myImg" src="https://phototheque.nicolaslogerot.com/backlight/designer/page/image/38" alt="Print dimensions" style="width:100%;max-width:300px">
</div>
<!-- The Modal -->
<div id="myModal" class="modal">
  <span class="close">&times;</span>
  <img class="modal-content" id="img01">
  <div id="caption"></div>
</div>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script>
 
<script type="text/javascript">
$(document).ready(function() {
  var modal = $('#myModal')
  var span = $(".close")  
  var modalImg = $("#img01")
  var captionText = $("#caption")
 
  var img = $('.myImg')
 
 img.click(function(){
      modal.css('display', 'block')
      modalImg.attr('src', this.src)
      captionText.html(this.alt)
      document.body.style.overflow = "hidden"; // ADD THIS LINE
    document.body.style.height = "100%"; // ADD THIS LINE
  });
 
  span.click(function() {
    modal.css('display', 'none')
    document.body.style.overflow = "auto"; // ADD THIS LINE
    document.body.style.height = "auto"; // ADD THIS LINE
	});
});
</script>

and the CSS:

.myImg {
  border-radius: 5px;
  cursor: pointer;
  transition: 0.3s;
}

.myImg:hover {opacity: 0.7;}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(255,255,255,0.9); /* Black w/ opacity */
}

/* Modal Content (image) */
.modal-content {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 700px;
}

/* Caption of Modal Image */
#caption {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 700px;
  text-align: center;
  color: #000000;
  padding: 10px 0;
  height: 150px;
}

/* Add Animation */
.modal-content, #caption {  
  -webkit-animation-name: zoom;
  -webkit-animation-duration: 0.6s;
  animation-name: zoom;
  animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
  from {-webkit-transform:scale(0)} 
  to {-webkit-transform:scale(1)}
}

@keyframes zoom {
  from {transform:scale(0)} 
  to {transform:scale(1)}
}

/* The Close Button */
.close {
  position: absolute;
  top: 15px;
  right: 35px;
  color: #000000;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
}

.close:hover,
.close:focus {
  color: #00d4d8;
  text-decoration: none;
  cursor: pointer;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px){
  .modal-content {
    width: 100%;
  }
}

Thank you

#14 Re: Backlight 3 Customization » multi language support » 2020-05-16 08:55:19

And you can reduce button size on little display like mobil, iPad etc....

html .fa-globe:before {
   font-family: Arial, 'Helvetica Neue', Helvetica, Roboto, 'Droid Sans', sans-serif;
   font-weight: 700;
   font-size: 0.875em;
}
html[lang="fr"] .fa-globe:before {
font-family : Font Awesome\ 5 Pro, Lato, Helvetica, Arial, sans-serif;
   content: "\f57d" " FR"; 
   font-weight: 700;
   font-size: 0.875em;
}
html[lang="en"] .fa-globe:before {
   font-family : Font Awesome\ 5 Pro, Lato, Helvetica, Arial, sans-serif;
   content: "\f57d" " EN";
   font-weight: 700;
   font-size: 0.875em;
}
#language-selector.tb.mouseable.button {
	min-width: 50px;	
}
#language-selector ul {
   width: 75px;
}
@media screen and ( max-width: 992px ) {
	html[lang="fr"] .fa-globe:before {
font-family : Font Awesome\ 5 Pro, Lato, Helvetica, Arial, sans-serif;
   content: "FR"; 
   font-weight: 700;
   font-size: 0.875em;
}
html[lang="en"] .fa-globe:before {
   font-family : Font Awesome\ 5 Pro, Lato, Helvetica, Arial, sans-serif;
   content:  "EN";
   font-weight: 700;
   font-size: 0.875em;
}
#language-selector.tb.mouseable.button {
	min-width: 36px;	
}
#language-selector ul {
   width: 75px;
}
}

#15 Re: Backlight 3 Customization » multi language support » 2020-05-16 01:28:18

And you can combine fonteawesome icon and text, and extent width of the icon:

html[lang="fr"] .fa-globe:before {
font-family : Font Awesome\ 5 Pro, Lato, Helvetica, Arial, sans-serif;
   content: "\f57d" " FR"; 
   font-weight: 700;
   font-size: 0.875em;
}
html[lang="en"] .fa-globe:before {
   font-family : Font Awesome\ 5 Pro, Lato, Helvetica, Arial, sans-serif;
   content: "\f57d" " EN";
   font-weight: 700;
   font-size: 0.875em;
}
#language-selector.tb.mouseable.button {
	min-width: 50px;	
}

#16 Re: Backlight Showcase » Updated to Backlight v3 » 2020-05-14 10:38:53

Thank you Matthew, thank you for the advice, this is rectified, an error on my part!

Thank you Daniel, thank you for all your support and for the delicate coding of php!


Matthew, A suggestion, it would be interesting that you put a demo page of the Backlight client sites on the page of http://theturninggate.net, a sort of "Showcase" gallery for future clients ....

#17 Backlight Showcase » Updated to Backlight v3 » 2020-05-14 01:36:53

Nico3939
Replies: 3

Hi,

I use Backlight from v1 and after an incredible v2, I’ve just updated to v3
  Always impressed with the new features!
Still a few details to personalize, but it's rolling, thank you to the authors of Backlight for this great job, and the moderators Daniel Leu and Rod Barbee for for support and troubleshooting...

https://phototheque.nicolaslogerot.com

Nico

#18 Re: Backlight 3 Customization » Getting Started with new JSON API » 2020-05-14 00:39:44

But if I disable album or I change with another index page without album, nothing append too

#19 Re: Backlight 3 Customization » Getting Started with new JSON API » 2020-05-13 22:04:37

When I put default .htaccess file in my Backlight installation, it put the default page (index page: yes), with the album rendering all image on the same page, and it take very loooonnggg time to load

#20 Re: Backlight 3 Customization » Getting Started with new JSON API » 2020-05-12 15:59:44

Daniel you put me on the right way!

Now, I have this message:

The document has moved here.

I think the error comes because I put redirection on my web site in htaccess:

RewriteCond %{HTTPS} off [OR]
	RewriteCond %{HTTP_HOST} ^www\. [NC]
	RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
	RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
	
	RewriteCond %{HTTP_HOST} ^phototheque.nicolaslogerot.com$ [NC]
	RewriteCond %{REQUEST_URI} ^/$
	RewriteRule ^(.*)$ /galleries/stock/ [L]

and in index.php in my website.com/galleries/index.php

header('Location:  ../');

Without all of this redirection, I have now this message:

Array
(
    [status] => error
    ['code'] => 403
    [message] => 22: The requested URL returned error: 403 
)

In fact the first redirection, is an invisible redirection for user:

"https://phototheque.nicolaslogerot.com/galleries/stock" to "https://phototheque.nicolaslogerot.com/"

and the second redirection is to prevent google users and robots from referencing the page:

"https://phototheque.nicolaslogerot.com/galleries/"

Otherwise it returns to an empty page.



My backlight installation from lightroom contains only one gallery named: "Stock" which is my home page.

To avoid having the home page with a long address like
"https://phototheque.nicolaslogerot.com/galleries/stock"

I made an invisible redirect in order to obtain a simplified address like:
"https://phototheque.nicolaslogerot.com/"

Here, I hope to be quite clear, the explanations are not simple and I am French and my English is limited.

Thank you very much Daniel!

#21 Re: Backlight 3 Customization » Getting Started with new JSON API » 2020-05-12 13:55:00

Hi Daniel, thank you very much for your help!


I completely deleted my custom php code to leave only the one you send me, so here is my full PHP file and the error returned:

<?php
/*
 *  TTG Core Elements "PHPlugins" User Hooks v1.2 - initialization mainline
 *
 *  developed by john bishop images (http://johnbishopimages.com)
 *  for Matthew Campagna of The Turning Gate (http://theturninggate.net)
 *
 */

function user_load($style, $path) {
  $g_tsvrl = explode(' ', $style); // Extract gallery type
  define ('G_STYLE', strtoupper($g_tsvrl[1])); // and set global for later
  $g_path = str_ireplace('\\','/',$path); // change \ to /
  $chunks = explode('/',$g_path); // and put into array
  define ('G_PATH', strtoupper($chunks[count($chunks)-2])); // gallery folder name is second to last
  //define ( 'TTG_SITE', ''); // set new site root for navigation, resources, etc.
}

if (defined('BACKLIGHT_HOOK')) {
	require_once(realpath(BACKLIGHT_HOOK).'/modules/module-designer/application/helpers/APHPlugins.php');
}

class PHPlugins extends APHPlugins
{
// Returns the JSON API response as an array. If an error was detected
// an error response is returned
//	
// Error response:
// (
//     ['status'] => 'error'
//     ['code'] => error number
//     ['message'] => error description
// )
function dlp_get_wp_rest_response($url){
	
	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_RETURNTRANSFER => 1,
		CURLOPT_URL => $url,
		CURLOPT_USERAGENT => 'User Agent X',
		CURLOPT_FAILONERROR => true
	));
	$posts = curl_exec($curl);

	// Was an error detected?
	if(curl_errno($curl)>0){	 
		$posts = Array();
		$posts['status'] = 'error';
		$posts['code'] = curl_getinfo($curl, CURLINFO_RESPONSE_CODE);
		$posts['message'] = curl_errno($curl).': '.curl_error($curl);
	} else {
		$posts = json_decode($posts, true);
	}

	curl_close($curl);
	return $posts;
}

function footer_bottom() {
	$posts = $this->dlp_get_wp_rest_response("https://www.phototheque.nicolaslogerot.com/backlight/api/get_album/343971");
	
	// check for errors 
	if (array_key_exists('status', $posts)){
		// error detected:
		echo '<pre>';
		print_r($posts);
		echo '</pre>';
	} else {
		echo "Array length: " . count($posts['album']['photos']);
	}
}
}   
?>

Something went wrong
array_key_exists() expects parameter 2 to be array, null given in perso-home.php on line 63


Line 63 is:

	if (array_key_exists('status', $posts))

#22 Re: Backlight 3 Support » double slash » 2020-05-11 21:28:03

You're welcome, it doesn't affect the way my links work, just I thought it was weird

#23 Re: Backlight 3 Customization » Message "success" customisable? » 2020-05-11 19:27:38

Sorry, you can modify the CSS by ftp in Backlight/custom/css/your-custom-css:

#message.success {
    background-color: #0091EA;
}
#message {
    border: 0 solid rgba(255,255,255,0.15);
    border-width: 0 0 0 8px;
    border-radius: 3px;
    border-top-left-radius: 0;
    box-shadow: 1px 1px 3px rgba(0,0,0,0.15);
    margin: 1.5rem 0;
    max-width: 768px;
    padding: 0.75rem 12px;
}

#24 Re: Backlight 3 Customization » Message "success" customisable? » 2020-05-11 19:23:10

Hi,

you can modify it in:

Backlight>Languages>your language>Manage Language

in "Contact Forms" -> Success Message

Nico

#25 Backlight 3 Support » double slash » 2020-05-11 19:04:53

Nico3939
Replies: 2

Hi,

I do not know if this is important in terms of functionality, although I do not have any image link concerns and if this is only due to my installation or if it is specific to a Backlight error, but when I upload an image in the Backlight> Designer> Images module, the link obtained has a double slash // just after the domain name.

Here is for example what it gives:


https://mywebsite.com//backlight/designer/page/image/13

Notice the double slashes between "https://mywebsite.com" and "backlight/designer/page/image/13"

Board footer

Powered by FluxBB