type-sharetwitter-text-before']); } else { $twitter_share_text_before = ""; } if(!empty($layer['settings']['link-type-sharetwitter-text-after'])){ $twitter_share_text_after = str_replace(array("%title%","%excerpt%"), array($title,$excerpt), $layer['settings']['link-type-sharetwitter-text-after']); } else { $twitter_share_text_after = ""; } $twitter_share_text = $twitter_share_text_before.$twitter_share_url.$twitter_share_text_after; $text = ''.$text.''; break; case 'likepost': if(!empty($this->post['ID'])) $text = ''.$text.''; //javascript-link else $text = ''; break; } if($link_to !== 'none') $do_display = true; //set back to true if a link is set on layer $text = trim($text); //check for special styling coming from post option and set css to the queue if(isset($layer['id'])) $this->set_meta_element_changes($layer['id'], $unique_class); $post_class = (!isset($post['ID'])) ? '' : ' eg-post-'.$post['ID']; if($base->text_has_certain_tag($text, 'a') && !$do_ignore_styles){ //check if a tag exists, if yes, class will be set to a tags and not the wrapping div, also the div will receive the position and other stylings // && @$layer['settings']['source'] !== 'text' if($is_woo_cats && strpos($text, 'class="') !== false || $is_woo_button || $is_filter_cat && strpos($text, 'class="') !== false){ //add to the classes instead of creating own class attribute if it is woocommerce cats AND a class can be found $text = str_replace('class="', 'class="'.$unique_class.$post_class.$lb_class.' ', $text); }elseif($is_html_source && strpos($text, 'class="') !== false){ $text = str_replace('', '', $text); //moved to more global css generation process @version: 2.0 //$this->add_css_wrap[$unique_class]['a']['display'] = $do_display; //do_display defines if we should write display: block; //$this->add_css_wrap[$unique_class]['a']['full'] = $do_full; //do full styles (for categories and tags separator) $unique_class .= '-a'; } if($do_ignore_styles) $unique_class = 'eg-'.esc_attr($this->handle).'-nostyle-element-'.$layer['id']; //replace all the normal shortcodes if(function_exists('qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate $text = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text); }elseif(function_exists('ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate plus $text = ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text); }elseif(function_exists('qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate X $text = qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage($text); } $text = do_shortcode($text); if($special_item == 'true' && $special_item_type == 'line-break'){ //line break element echo ' '."\n"; }elseif(trim($text) !== ''){ //}elseif(!empty($text)){ $use_tag = $base->getVar($layer['settings'], 'tag-type', 'div'); echo ' <'.$use_tag.' class="esg-'.$class.$post_class.$video_play.$ajax_class.' '.$hideunderClass.$unique_class.$transition.'"'.$ajax_attr.$transition_split.$delay.$hideunderHTML; echo ($demo == 'custom') ? $demo_element_type : ''; echo $data_transition_transition . '>'; echo $text; echo ''."\n"; } } /** * Retrieve the value of post elements */ public function get_post_value($handle, $separator, $function, $meta, $catmax = '-1', $taxonomy = ""){ $base = new Essential_Grid_Base(); $text = ''; /* 2.1.5 category max option */ $adjustMax = false; if( in_array( $handle, array( 'cat_list','tag_list','taxonomy') ) ) { if(!empty($catmax) && $catmax !== '-1' && is_numeric($catmax) && intval($catmax) > 0) { $catmax = intval($catmax); $adjustMax = true; } } switch($handle){ //Post elements case 'post_id': $text = $base->getVar($this->post, 'ID', ''); break; case 'post_url': $post_id = $base->getVar($this->post, 'ID', ''); $text = get_permalink($post_id); break; case 'title': $text = $base->getVar($this->post, 'post_title', ''); break; case 'caption': case 'excerpt': $text = trim($base->getVar($this->post, 'post_excerpt')); if(empty($text)){ //strip essential grid shortcode here $text = do_shortcode($base->strip_essential_shortcode($base->getVar($this->post, 'post_content'))); $text = preg_replace("/]*>(.*?)<\\/style>/s", "", $text); $text = preg_replace("/]*>(.*?)<\\/script>/s", "", $text); } $text = strip_tags($text); //,"

" break; case 'meta': $m = new Essential_Grid_Meta(); $text = $m->get_meta_value_by_handle($base->getVar($this->post, 'ID', ''),$meta); break; case 'likespost': $post_id = $base->getVar($this->post, 'ID', ''); if(!empty($post_id)){ $count = get_post_meta($post_id, "eg_votes_count", 0); if(!$count) $count[0] = 0; if(is_array($count)){ $text = ''.$count[0].''; } } else{ $text = ''; } break; case 'alias': $text = $base->getVar($this->post, 'post_name'); break; case 'content': $text = apply_filters('the_content', $base->getVar($this->post, 'post_content')); break; case 'link': $text = get_permalink($base->getVar($this->post, 'ID', '')); break; case 'date': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = $base->convert_post_date($postDate); break; case 'date_day': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('dd',strtotime($postDate)); break; case 'date_month': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('m',strtotime($postDate)); break; case 'date_month_abbr': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('M',strtotime($postDate)); break; case 'date_year': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('Y',strtotime($postDate)); break; case 'date_year_abbr': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('y',strtotime($postDate)); break; case 'date_modified': $dateModified = $base->getVar($this->post, "post_modified"); $text = $base->convert_post_date($dateModified); break; case 'author_name': $authorID = $base->getVar($this->post, 'post_author'); $text = get_the_author_meta('display_name', $authorID); break; case 'author_posts': $authorID = $base->getVar($this->post, 'post_author'); $text = get_author_posts_url($authorID ); break; case 'author_profile': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_the_author_meta('url', $authorID); break; case 'author_avatar_32': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 32); break; case 'author_avatar_64': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 64); break; case 'author_avatar_96': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 96); break; case 'author_avatar_512': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 512); break; case 'num_comments': $text = $base->getVar($this->post, 'comment_count'); break; case 'cat_list': $use_taxonomies = false; $postCatsIDs = $base->getVar($this->post, 'post_category'); if(empty($postCatsIDs) && isset($this->post['post_type'])){ $postCatsIDs = array(); $obj = get_object_taxonomies($this->post['post_type']); if(!empty($obj) && is_array($obj)){ foreach($obj as $tax){ if($tax == 'post_tag') continue; $use_taxonomies[] = $tax; $new_terms = get_the_terms($base->getVar($this->post, 'ID', ''), $tax); if(is_array($new_terms) && !empty($new_terms)){ foreach($new_terms as $term){ $postCatsIDs[$term->term_id] = $term->term_id; } } } } } /* 2.1.5 category max option */ if($adjustMax && is_array($postCatsIDs)) $postCatsIDs = array_slice($postCatsIDs, 0, $catmax, true); $text = $base->get_categories_html_list($postCatsIDs, $function, $separator, $use_taxonomies); break; case 'tag_list': if(!$adjustMax) { $text = $base->get_tags_html_list($base->getVar($this->post, 'ID', ''), $separator, $function); } else { $text = $base->get_tags_html_list($base->getVar($this->post, 'ID', ''), $separator, $function, $catmax); } break; case 'taxonomy': if(!$adjustMax) { $text = $base->get_tax_html_list($base->getVar($this->post, 'ID', ''), $taxonomy, $separator, $function); } else { $text = $base->get_tax_html_list($base->getVar($this->post, 'ID', ''), $taxonomy, $separator, $function, $catmax); } break; /* case 'iframe': print '

HELLO!

'; die(); break; */ default: $text = apply_filters('essgrid_post_meta_content', $text, $handle, $base->getVar($this->post, 'ID', ''), $this->post); break; } return $text; } /** * Retrieve the value of post elements */ public function get_custom_element_value($handle, $separator, $meta = ''){ $base = new Essential_Grid_Base(); $m = new Essential_Grid_Meta(); $text = ''; $text = $base->getVar($this->layer_values, $handle, ''); if($text == '' && $meta != '') $text = $base->getVar($this->layer_values, $meta, ''); if(intval($text) > 0){ //we may be an image from the metas $custom_meta = $m->get_all_meta(false); if(!empty($custom_meta)){ foreach($custom_meta as $cmeta){ if($cmeta['handle'] == $handle){ if($cmeta['type'] == 'image'){ $img = wp_get_attachment_image_src($text, $this->media_sources_type); if($img !== false){ $text = $img[0]; //replace with URL } } break; } } } } return $text; } /** * Retrieve the value of event elements */ public function get_event_manager_value($handle){ $base = new Essential_Grid_Base(); $text = ''; switch($handle){ //check for event manager case 'event_start_date': break; case 'event_end_date': break; case 'event_start_time': break; case 'event_end_time': break; case 'event_event_id': break; case 'event_location_name': break; case 'event_location_slug': break; case 'event_location_address': break; case 'event_location_town': break; case 'event_location_state': break; case 'event_location_postcode': break; case 'event_location_region': break; case 'event_location_country': break; } return $text; } /** * Retrieve the value of woocommerce elements */ public function get_woocommerce_value($meta, $separator, $catmax = false){ $text = ''; if(isset($this->post['ID'])){ if(Essential_Grid_Woocommerce::is_woo_exists()){ $base = new Essential_Grid_Base(); $m = new Essential_Grid_Meta(); /* 2.1.5 category max option */ $adjustMax = false; if($meta === 'wc_categories') { if(!empty($catmax) && $catmax !== '-1' && is_numeric($catmax) && intval($catmax) > 0) { $catmax = intval($catmax); $adjustMax = true; } } if($adjustMax) { $text = Essential_Grid_Woocommerce::get_value_by_meta($this->post['ID'], $meta, $separator, $catmax); } else { $text = Essential_Grid_Woocommerce::get_value_by_meta($this->post['ID'], $meta, $separator); } } } return $text; } } I was told off for not showing enough skin - Dear Alyne

This guest post was written by Sara Mahendran. Thanks Sara for sharing your story! Check out more of her take on things by heading over to her blog, sarastake.com.

As crazy as it sounds, it’s true. I was told off for not showing enough skin.

The customary practice for Indian women in their 20s and above (when attending weddings) is to wear a traditional outfit that shows off the belly. At traditional events, you’ll find women of all ages and sizes wearing traditional outfits that bare their midriffs.

But here’s the thing. There was a wedding coming up and I didn’t want to bare my belly. And when I decided to cover up, the women in my family strongly disapproved:

“If us old ladies can show our bellies how come you can’t?”
“If you just showed your stomach you would look so beautiful and sexy.”
“If you can show your legs up till here, why can’t you show a little bit of your belly, eh?”

Their reactions threw me off and got me upset. Because I knew that my family would flip if I wore a crop top with pants, but if I wore it as part of a traditional outfit, it’s awesome. So why couldn’t I just cover my stomach?

The one on the left is NOT okay, but the one on the right is.

And let me just put another layer on this — if you know Indian culture, you’ll know that dishonour is a big thing.

So by going against the customary practices — by simply trying to dress modestly, I was ‘bringing dishonour’ to my family.

I was really upset with the culture, and confused with why things had to be this way.

It caused a bit of friction with my family at first. But after some time, some talking, and trying to keep an open mind, I was able to see that my family really just was trying to look out for me in their own way.

And as someone who didn’t want to show my stomach, it came across as strange to my family who just wanted nothing more than me to look good. It’s kinda like how they might also suggest getting my nails done or getting a new hairstyle. Imagine if I got upset at the idea of a new pedicure!

But looking at the bigger picture here, what I’m trying to say is that different people have different conceptions of what is nice and what is not.

And because cultures and contexts are so conflicting all the time, people are going to praise you and shame you over virtually the same thing.

So my solution is simply to accept that everyone has their own right to their opinions. As long as we’re not breaking a law or seriously offending people (by dressing extremely inappropriately), it should be okay to wear what you want.

Well, that’s my take at least. What do you think? Drop a comment below to share your thoughts, and check out my video on this too!

Leave a Reply

Your email address will not be published. Required fields are marked *

*
*