Investigation ordered after British-Iraqi raid on intelligence agency in Basra.
"[Those captured] were suspected of serious criminal activity, including kidnap, torture, murder and involvement in roadside bomb attacks on multinational forces and civilians"
An alleged militia leader was captured along with four other suspected fighters, said Major David Gell, a British military spokesman, on Monday.
"They were suspected of serious criminal activity, including kidnap, torture, murder and involvement in roadside bomb attacks on multinational forces and civilians," Gell said.
It was unclear whether the suspects worked at the intelligence agency or had taken refuge there.
More than 200 British troops were involved in the raid, along with an unknown number of Iraqi forces, Gell said.
British and Iraqi forces stormed the building without warning, and "the method of entry... was appropriately robust," a British military statement said.
The prisoners were not intentionally released but escaped after the operation, the statement said.
Sunday's raid came a day after Iraqi commandos arrested a suspected militia leader, from whom they gleaned information that enabled them to carry out the operation, the statement said.


Tammy Ward - Homeschooling WITH PASSION!
Shelley Nash - Do You Have What it Takes to Homeschool your Children?
Steffanie Casperson-Learning outside the box!
Adam Hailstone's youth presentation "Hit School in the Sweet Spot".
Nicholeen Peck: "Roles, Rights, Property & Parenting"
Shanon Brooks VPS Jet Fuel for Home Schooling" class.
Katie Michaelis' youth presentation "The Hero in You".
Mary Biesinger Face your fears...and get on with it!
Sarah Felt - Youth Presentation: Prove It!
Jody Kadel - Foldables, Lapbooks & Journals, Oh My!


I have been involved in healing for some years now and it is the most amazing thing that I have ever witnessed.
With Bare hand surgery the healer enters through the skin to remove tumours, cancers, dead tissue etc... There is blood although you feel no pain and the skin heals instantly with no scar tissue.
I have witnessed over 400 operations and had bare hand surgery performed on myself over 40 times.
Whilst training with 'Jun' I have also had the privilege of entering into a patients stomach with my own hand whilst he channeled energy through me whilst holding my arm.
Since 2004, Patrick has organised all the trips to see Jun for me. His organisation is flawless.


text:
In addition to safety risks, many jobs also present risks of disease, illness and other long-term health problems. Among the most common occupational diseases are various forms of pneumoconiosis, including silicosis and coal worker's pneumoconiosis (black lung disease). Asthma is another respiratory illness that many workers are vulnerable to. Workers may also be vulnerable to skin diseases, including eczema, dermatitis, urticaria, sunburn, and skin cancer.[61][62] Other occupational diseases of concern include carpal tunnel syndrome and lead poisoning.
Yoga gurus from India later introduced yoga to the West,[16] following the success of Swami Vivekananda in the late 19th and early 20th century with his adaptation of yoga tradition, excluding asanas.[16] In the 1980s, a very different form of modern yoga, with an increasing number of asanas and few other practices, became popular as a system of exercise across the Western world.[15] Yoga in Indian traditions, however, is more than physical exercise; it has a meditative and spiritual core.[17] One of the six major orthodox schools of Hinduism is also called Yoga, which has its own epistemology and metaphysics, and is closely related to Hindu Samkhya philosophy.[18]
Ascetic practices, concentration and bodily postures described in the Vedas may have been precursors to yoga.[59][60] According to Geoffrey Samuel, "Our best evidence to date suggests that [yogic] practices developed in the same ascetic circles as the early sramana movements (Buddhists, Jainas and Ajivikas), probably in around the sixth and fifth centuries BCE."[9]
Many trainees like to cycle between the two methods in order to prevent the body from adapting (maintaining a progressive overload), possibly emphasizing whichever method more suits their goals; typically, a bodybuilder will aim at sarcoplasmic hypertrophy most of the time but may change to a myofibrillar hypertrophy kind of training temporarily in order to move past a plateau. However, no real evidence has been provided to show that trainees ever reach this plateau, and rather was more of a hype created from "muscular confusion".[clarification needed][citation needed]
Yoga (/ˈjoʊɡə/;[1] Sanskrit: योग; pronunciation) is a group of physical, mental, and spiritual practices or disciplines which originated in ancient India. Yoga is one of the six orthodox schools of Hindu philosophical traditions.[2] There is a broad variety of yoga schools, practices, and goals[3] in Hinduism, Buddhism, and Jainism.[4][5][6] The term "yoga" in the Western world often denotes a modern form of Hatha yoga, consisting largely of the postures called asanas.
Bhakti yoga is a devotional form of yoga, usually associated with Theistic Hinduism. It is therefore focused on faith, love for and worship of a personal God, such as Shiva, Shakti or Krishna. It is taught in key works like the Bhagavad Gita as one of the forms of yoga, and became a major current of Hindu yoga in the second half of the 1st millenium CE, when it was promoted and celebrated by south Indian poet saints like the Alvars and Nayanars. Forms of Bhakti yoga include the singing of hymns, stories and songs (Kirtan), dancing, prayer, bowing, and performing puja rituals.
Although muscle stimulation occurs in the gym (or home gym) when lifting weights, muscle growth occurs afterward during rest periods. Without adequate rest and sleep (6 to 8 hours), muscles do not have an opportunity to recover and grow.[citation needed] Additionally, many athletes find that a daytime nap further increases their body's ability to recover from training and build muscles. Some bodybuilders add a massage at the end of each workout to their routine as a method of recovering.[51] https://buzzingofferdigitalmarketing.tumblr.com/

redpajama_set_name: RedPajamaCommonCrawl


text:
Piranesi in Paestum. The sound of architecture
byGabriel Zuchtriegel
A history in pictures and sounds, spanning imagination and rigorous iconographic documentation: the centre stage is taken by one of the most brilliant artists who depicted the Greek temples of Paestum, Giambattista Piranesi – an enigmatic and contradictory artist in many ways, defender of the Roman world but capable of romantic visions that go beyond the neoclassical experience, between calligraphic antiquities and "picturesque" bucolic landscapes.
"I sought to fill the gaps in what Piranesi stood for with imagination, using music as an accompaniment to his etchings…words that perhaps were never said or written, which however in my view explain that subterranean shift between Baroque and Romanticism that transpires from the drawings of Paestum." (Gabriel Zuchtriegel)


With the summer season in full swing, deciding where to go on holiday can be massively based on where the weather is good and what we can afford. That might mean forgetting about some places just because they're out of the budget. However, Ibiza shouldn't be one of these places. This beautiful Spanish island may cost a lot if you're clubbing 24/7 but there are some things in Ibiza that don't cost a cent to experience. If you're watching the pennies this month but don't want to give up the Ibiza dream, here are some free things to do in Ibiza.
Literally translated into "Upper Town", Dalt Vila, in Ibiza Town, is one of the oldest parts of the island. Perched on top of the hill in Ibiza Town, Dalt Vila creates an imposing sight but it's the views of the ocean, and the Old Town from the narrow laneways, that really make the lasting impression.
There are two entrances to Dalt Vila – the Portal de Ses Taules or the Portal Nou – both of which are very impressive but go via the latter if you want a steadier climb into this gorgeous part of the town. And, as soon as you walk into Dalt Vila, you won't feel like you're in Ibiza at all as the busy streets turn into quiet cobbled lanes, steep hills and high walls with shops, bars and restaurants carved into the stone. It really is a world of its own and the best part is, it's free! So grab your camera, get our comfortable shoes on and go for a wander around Dalt Vila, a part of Ibiza that is truly special.
Of course, lounging around on the sand all day doesn't cost a penny. But why not combine a day on the beach with one of Ibiza's most famous evenings? Every Sunday at Benirras Beach, people gather and wait for the locals, hippies and peace lovers to start their drumming in time to the sun going down. It's become somewhat a rite of passage for anyone spending any time in Ibiza to come here and the best way to experience this event is to get here early, spend the day on the beach and in the evening, watch the sun go down to the rhythmic beat of the drums. This is the real Ibiza.
Of course, Las Dalias Market place might try and make you part with a few pennies for some pretty jewellery, or a refreshing mojito, but you don't have to spend a thing to enjoy this market near Santa Eulalia. One of the most famous hippy markets in Ibiza you can easily spend an afternoon here, wandering around in the sun, taking in the chilled out atmosphere and admiring the local's handmade arts and crafts.
After the North Pole and the Bermuda Triangle, Es Vedra is said to be the one of the most magnetic places on earth. Navigation systems around this area get confused, homing pigeons lose all sense of direction and people are drawn to Es Vedra like magpies with shiny objects. There's no doubt that this is one of the most spectacular views around the island, especially at sunset, and with that and your empty wallet in mind, this is definitely one of the best free things you can do in Ibiza. Take a hike here or do it the easy way and drive here for the evening and get lost in the beauty of Es Vedra.
If you've been to Ibiza on a budget before, do you have any more tips of what you can do for free on the White Isle?


text:
Daam Center connected to Enaya for transfer of patients
The governor said his organisation was pleased to collaborate with HMC in the improvement of the country's healthcare infrastructure and the provision of care for Qatar's elderly. "The opening of the...
WWRC office issued 456 birth certificates in 2019, says MoPH
The Ministry of Public Health announced on Monday that the office for registering newborns and issuing birth certificates at the Hamad Medical Corporation's (HMC) Women's Wellness and Research Center...
Al Nuaimi: Receiving online medical reports requests soon
Mr. Nasser Saed Al Nuaimi, Hamad Medical Corporation (HMC)'s Deputy Chief of Quality and Director of the HMC Healthcare Quality Institute, has disclosed that receiving requests for issuing HMC...
Burns Unit at Al Wakra Hospital cared for more than 6,400 patients this year
Qatar's only dedicated Burns Unit, located at Hamad Medical Corporation's (HMC) Al Wakra Hospital, has cared for more than 6,400 patients at its outpatient clinics so far this year. As of November...
WCM-Q and HMC help develop Qatar's medical leaders
Alumni of Weill Cornell Medicine – Qatar (WCM-Q) and Hamad Medical Corporation doctors have received certificates after completing an extensive leadership and mentoring course. The 49 doctors were...
Qatar Insurance Group holds blood donation drive
Qatar Insurance Group - the leading insurer in the MENA recently held a blood donation campaign at QIC Headquarters in West Bay. The campaign was organized in collaboration with Hamad Medical...
Mental health: Removing stigma and improving access a priority for MoPH
While many countries around the world do not have a mental health policy, Qatar has had a decade-long commitment to developing mental health services. The Ministry of Public Health (MoPH) along with...
MoPH to hold workshops to execute WHO's new growth plans in schools
The Ministry of Public Health (MoPH), in collaboration with the Ministry of Education and Higher Education, Hamad Medical Corporation (HMC) and the Primary Health Care Corporation (PHCC), is...
WCM-Q and HMC boost physician leadership skills
Doctors trained at Weill Cornell Medicine-Qatar (WCM-Q) and physicians from Hamad Medical Corporation (HMC) completed a rigorous training course designed to enhance their ability to lead, manage and...
HBKU's CSE concludes workshops with HMC's Nursing Informatics Department
Hamad Medical Corporation's (HMC) Nursing Informatics Department provided the basis for a series of workshops developed by the College of Science and Engineering (CSE) at Hamad Bin Khalifa University...
Genomic approaches to cancer treatment discussed at WCM-Q Grand Rounds
The growing role of genomics in cancer treatment was examined at the latest Weill Cornell Medicine-Qatar (WCM-Q) Grand Rounds. Dr. Susanna El Akiki, consultant clinical scientist in the diagnostic...
HMC ready to manage medical cases at IAAF Doha worlds event
With IAAF World Athletics Championships Doha 2019 kicking off on Friday, Hamad Medical Corporation (HMC) has announced that it is well prepared to handle any medical cases and emergencies that may...
Qatar announces new labour reforms for expatriates
Park and Ride facility for metro users from Friday


[JURIST] A Pakistani anti-terrorism court (ATC) refused Wednesday to grant bail to former president Pervez Musharraf [BBC profile; JURIST news archive] over the detention of judges in 2007 when he imposed emergency rule. Musharraf has been detained since April 19 at his Islamabad farmhouse for the detention charges as well as conspiracy to murder former prime minister Benazir Bhutto [BBC obituary; JURIST news archive]. Just two days ago, the ATC granted bail [JURIST report] to Musharraf over the murder of Bhutto. Although the judge rejected Musharraf's most recent bail application, Musharraf can appeal to the high court.
Musharraf has had many legal troubles of late. In April the Peshawar High Court of Pakistan banned [JURIST report] him from running for public office for the rest of his life and extended his house arrest during the ongoing trial regarding the murder of Bhutto. Last week the Pakistani interim government declined [JURIST report] to try Musharraf for treason because they claimed such action would be outside the scope of their duties. In April a Pakistan court extended [JURIST report] Musharraf's bail on charges of illegally detaining judges. In March Human Rights Watch urged [JURIST report] Pakistan to hold Musharraf accountable for alleged human rights abuses upon his return to the country. Last year Pakistani authorities pledged to arrest [JURIST report] Musharraf for his alleged involvement in Bhutto's assassination. In August 2011 a court ordered seizure of his property [JURIST report] and froze his bank account after he failed to respond to multiple subpoenas regarding the assassination investigation.


text:
Ommata silvai är en skalbaggsart som beskrevs av Dmytro Zajciw 1958. Ommata silvai ingår i släktet Ommata och familjen långhorningar. Inga underarter finns listade i Catalogue of Life.

Källor

Långhorningar
silvai

redpajama_set_name: RedPajamaWikipedia


text:
We Have Seen the Liberal Promised Land & Detroit is its Name
DiploMad2.0
"The President, CNN and MSNBC, among others of their ilk, continue plugging away on Zimmerman-Martin promoting their twisted Hollywood-esque vision of an America where black men are gunned down by white men, and seeking to provoke a race war. Meanwhile, the leftist utopia of Detroit has called it quits in its decades-long flight from reality with liberal/socialist Democrats as pilots. It proved, yet again, the wisdom of the late great Maggie Thatcher who said, "The trouble with socialism is that eventually you run out of other people's money."
Detroit most certainly has done that, it has even run out people. The population over past years has gone into a serious nosedive. Those who can flee have. The rest exist in a liberal hell in which overpaid public servants do less and less; public services have all but disappeared; the private sector has largely vanished; and the criminal, the insane, and the drug addled rule the streets and generate 386 murders in 2012 for a staggering homicide rate of nearly 55 per 100,000 residents, much worse than most African countries. By contrast, I would note, ethnically diverse El Paso, in "gun crazy" Texas, and across the border from murder capital Ciudad Juarez, with a population about that of Detroit's had five, yes five--as in the fingers of one hand--murders last year for a homicide rate of about 0.6 --lower than Canada, lower than the UK, lower than nearly every European country.
The morally bankrupt Democratic Party corruptocrats who ran Detroit for the past half century or so finally killed the goose that laid the golden eggs........"
Labels: Blogs, Diplomad 2.0
MadJack Saturday, July 20, 2013 at 8:56:00 AM CDT
Detroit - The Perfect Model City
How Socialism Came to America... and Destroyed Detroit
In 1961, the last Republican mayor of Detroit, Louis C. Miriani, lost his re-election bid. He probably would have lost to anyone who ran against him because he was known to be a crook. He later served 10 years in prison for tax evasion.
The man who defeated him, Jerome Cavanagh, was a Democrat. He ushered in a new kind of politics in Detroit. Cavanagh, who was white, got elected by promising to give Detroit's African American population the civil rights they deserved. But he didn't stop there. Seeing the political advantage to serving this community's interests, he did all he could to bring government benefits and government spending to Detroit's black community.
Cavanagh brought socialism to Detroit.
The rest of the article here.
http://www.rightmichigan.com/story/2011/12/21/191126/29


It does have some good information if you plan to move there, but if you are reading it for entertainment, don't bother. The author focuses on nitty gritty of the law in Greece and lawsuits and real estate transactions, might be useful but is very boring.
The Culture Shock series describes customs and courtesies for primarily a British readership.Usually the books are written by expatriates and/or tour guides, probably the best subject matter experts one could find.Unsurprisingly, Culture Shock Greece aims to give the tourist or potential expat an overview of Greek culture and society to better assimilate.Greek culture being almost 3000 years old, certainly some aspects will change slowly if at all; this makes the "currency" of the book less of issue than, say, a travel guide.Nonetheless, although I did in fact find some of the book useful, there are some serious limitations here.
First, although my copy says "New Expanded Edition" and a copyright date of 2001, without a doubt some of the material is at least ten years old.Euros are called "ecu's", nor mention of the move from drachmae to Euros, which totally changed the pricing of commodities (crucial information for someone who may be doing business, or planning to move to Greece).Athens information is painfully inadequate and basically useless for anything except the touchy-feely impressions of the author.More importantly, zero mention of resources available on the internet.
Second, is the snide tone the author takes with American influences (considering there's almost as many Greeks living in the US and Canada as Greece he shouldn't be surprised.)Frankly, I couldn't care less what the author's views of American language and culture are-even less in a book about GREEK culture.I believe part of this attitude is present as well regarding food and drink.My experiences in Greece/Crete were that wine is considered a special treat, and the beverage of choice for most meals is beer.The author insists that wine is a standard, and beer is "outre".I've encountered wine snobbery before, and this feels like it again.Well, again, maybe ten years ago that was true-not now.The worthwhile parts of the book are the societal insights, and if one takes the infrastructure information with a huge grain of salt-is worth reading.
Brief and yet informative and enjoyable!
It is impressing that the author manages to write 283 pages without giving any relevant information.
7. The Art and Culture of Early Greece, 1100-480 B.C.
This book arrived within the expected time. It was in perfect condition and I am absolutely delighted with it.
Onians brilliantly re-contextualizes, from an organic grounded perspective, the way in which one looks at the so-called Classical worlds of ancient Greece and Rome, which not only lends insight into the impetus and meaning behind the beauty and power of their artistic achievement, but challenges the generalized ways of looking at art in our world.In reading the Amazon/Reed review above, I can only imagine the reviewer expected something geared towards a less mature readership, as this is truly an incisive and thoughtful book that held my interest throughout, and as good books do, it not only gave me something new to look at, but also gave me a new way of looking at things.
According to Onians, "The power of Greekart over Rome, and then of Greek and Roman art over later generations,resided less in the multiplicity or complexity of that art than in itsembodiment of a limited number of traits, traits such as the hardness,mathematical regularity, lifelikeness, uniformity, physical energy andemotional expressiveness of Greek art, or the memorability, monumentality,personality, material and formal richness, flexibility and simplicity ofthat of Rome." What Onians has accomplished is nothing less than a cohesiveand comprehensive analysis of Classical art and of the cultures of ancientGreece and Rome.
Some (very few) books serve as a "magic carpet" whichtransports their reader to ancient experiences which would otherwise beinaccessible. This one of those books. Remarkably, without in any waycompromising his scholarly standards, Onians functions as a congenial aswell as knowledgeable companion. His seems to be an intimate as well asthoroughly familiar with everything and everyone he discusses.
What is the diference between a Greek and a Roman?
The book provides fresh insights into the Classical arts, by approaching the topic from the viewpoint of culture and environment.In fact, the book could be more appropriately titled "How the physical environment ofGreece and Rome created the character and culture of their civilizations,and ultimately their art".
For example, the physical environment ofGreece determined the military strategy of the Greeks. The point is thenmade that their emphasis on their rectangular military formation ( thephalax? )led to the Greek interest in mathematics, and conversely that theascent of Sparta is related to the migration of mathematicians to thisregion. This flows over into architecture, with the form of the templeactually being a representation of this formation.
The book reads well,especially when Onians discusses Roman culture beginning with the dilemathat the Greeks prouded themselves on their minds and their classicalcompleteness as men, and yet the Romans who had none of these qualities conquered them in about 40 years. He then discusses how the Romans, whoalthough trying to emulate Greek culture, were only really culturetourists, and therefore their Greekness was only superficial.
Hisexplanation for the decline of the Roman empire makes fascinating reading,and explains a lot about the success of Christianity. For each ideapresented, Onians provides substantial evidence, and the reasoning followsa consistent logic. The skill of writing is evident form the fact that eachtopic is self-contained without references to other sections of thebook.
The Parthenon. Plato, Socrates, and Aristotle. Homer's epic poems. Gods and goddesses lounging around, indulging in pleasures on Mount Olympus. All of these images bring to mind the traditional icons of Greece, the cradle of Western Civilization. But what do we know of modern Greece? The answer to that question and more can be found in this comprehensive look at contemporary Greek culture. This one-stop reference source is packed with illustrative descriptions of daily life in Greece in the 21st century. Ideal for high school students and even undergraduates interested in studying abroad, this extensive volume examines topics such as religion, social customs, leisure life, festivals, language, literature, performing arts, media, and modern art and architecture, among many other topics. Woven into the text are beautiful and accurate vignettes of Greek life, helping to illustrate how it is people live.A crossroads between Europe, Africa, and the Middle East, Greece is fighting to hold on to the culture of yesterday, while still looking toward modernity. Culture and Customs of Greece is a must-have volume for all high school and public library shelves.
The early twentieth century was marked by massive migration of southern Europeans to the United States. Transatlantic Subjects views this diaspora through the lens of Greek migrant life to reveal the emergence of transnational forms of subjectivity.
According to Ioanna Laliotou, cultural institutions and practices played an important role in the formation of migrant subjectivities. Reconstructing the cultural history of migration, her book points out the relationship between subjectivity formation and cultural practices and performances, such as publishing, reading, acting, storytelling, consuming, imitating, parading, and traveling. Transatlantic Subjects then locates the development of these practices within key sites and institutions of cultural formation, such as migrant and fraternal associations, educational institutions, state agencies and nongovernmental organizations, mental institutions, coffee shops, the church, steamship companies, banks, migration services, and chambers of commerce.
Ultimately, Laliotou explores the complex and situational entanglements of migrancy, cultural nationalism, and the politics of self. Reading against the grain of hegemonic narratives of cultural and migration histories, she reveals how migrancy produced distinctive forms of sociality during the first half of the twentieth century.
Greece is a very interesting country to learn about for several reasons: Religion wise in Greece: Christianity (Greek Orthodox)98%, Islam 1.3%,and others inlcude Protestants, Catholics, and Jews.
Greek Cuisine is very good with the Gyros, Greek Salads, Olives, Souvlakis, Spanakopitas, Lamb, Stuffed Grapeleaves, Kebabs, and Tyropitas.


text:
Irish special forces to withdraw from counter-terrorism operations in Mali | The Irish Times
Irish Defence Forces Photo
The Irish Defense Force's Army Ranger Wing (ARW) will cease operations in Mali this year. It is understood that conventional forces may take their place and that the ARW might deploy to other parts of the Sahel. The ARW has been in Mali as part of the UN stabilization mission, Minusma. Over a dozen ARW had been stationed in the Malian capital Bamako or Gao conducting long range surveillance patrols of Islamic militants who seek to overthrow the Malian government. Minusma is a French led stabilization effort that originated after the Tuareg rebellion in 2012.
Source: https://www.irishtimes.com/news/ireland/irish-news/irish-special-forces-to-withdraw-from-counter-terrorism-operations-in-mali-1.4768552
Historic court-martial of former AFRL commander set to start Monday at WPAFB | Butler County Journal News
Naval Special Warfare Celebrates 60th Anniversary of SEAL Teams | DVIDS


text:
Q: SFTP file from one remote server to other remote server using shell script without expect package I'm trying to automate the transfer of files from one remote server to other remoter server using shell script. I cannot install expect package. Could anyone help me out in doing this?
Thanks.

A: Setup a password less login between remote server so it won't ask for password in shell script and it will avoid passing password in shell script for security reason
Please refer the below link to setup password less ssh
http://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/
Then write a shell script to sftp the files
refer the SFTP command in the below link to do the needful
http://www.tecmint.com/sftp-command-examples/

redpajama_set_name: RedPajamaStackExchange


Voile is a popular lightweight draping solution with translucent and light filtering properties. Voile drapes can be lit up for a transforming effect, and can be added in layers or installed with added fullness. If you are looking for a delicate and classic finish, or require a material to combine with lighting effects, voile draping is a great choice.
Blackout carry a large hire stock of white voile drapes, as well as a variety of other colours including silver, black and red, all in various sizes. We can also provide white voile drapes lined with sheeting or white filled cloth which gives a soft and elegant appearance with an opaque backing. White Voile can be used in combination with our LED Star Cloth for additional magical effect.
Blackout can hire voile drapes together with our Easibuild Pipe Structure which is a very straightforward solution for a freestanding system.
We also manufacture voile drapes in many shades to our client's specification with various finishes available (fullness, ties, loops, eyelets, curtain hooks, weighted at the bottom).
Australian singer and songwriter SIA took the X Factor stage on Saturday. Known for her aesthetic shows and videos, her performance featured a large box with scenes projected on the sides and with a dancer inside.


In depth expert analysis of MAT February 2019 exam!
Management Aptitude Test (MAT 2019) is a national level test conducted by All India Management Association (AIMA) to screen candidates for admission to MBA and allied programs offered by the various B-schools of the country who will participate in the MAT 2019. It is conducted 4 times in a year i.e. in the month of May, September, December and February. Candidates can choose to take either Paper Based Test or Computer Based Test as per their convenience.
The offline and online MAT was conducted on 17th February, 2019. There were 200 questions in 150 min comprising of five different test areas viz. Language Comprehension, Data Analysis and Sufficiency, Mathematical Skills, Intelligence and Critical Reasoning, Indian and Global Environment with 40 questions in each section. The level of difficulty was easy to moderate.
The basic purpose of the exam analysis is to make test takers aware about the types of questions, number of questions, marking scheme, level of difficulty, sectional weightage and duration of the exam.
Further, following table will give you insights about the marks distribution and the level of difficulty of different sections in the test.
The questions were basics and those with adequate practice found them doable. The success in this section mainly depends on the conceptual clarity with calculation skills.
Overall, this section was moderate. A good strategy would be to spend around 35- 40 min for a good net score of 20.
The level of difficulty in this section was moderate to difficult. A net score of 20 or more can be classified as a good score in this section.
Questions in this section required a good knowledge of English usage and Functional Grammar. A fast reading speed and ability to understand well help in getting decent score in verbal section. A score of 22-24 marks can be considered a good in a time limit of 30-35 min.
In this test area the questions were predominantly from business, current affairs, famous personalities etc.
A major point is that the marks scored in this section are not counted in the consolidated score.
Overall, level of difficulty of this section was moderate.
Those who read the newspaper on a regular basis found this area comfortable.
A good time allocation strategy was to spend around 5-10 minutes.


text:
Q: What is the difference between a 'fire door' and a 'burning door'? I have a question about the English word "fire".
Does fire have many meanings like flames or strong emotion, doesn't it?
But, it does not have the meaning same as "fireproof " or "fire-resistant", right?
So why does the word "fire door" mean "fire-resistant door"?
When I read the word "fire door" for the first time, I thought that means "burning door".
The same question can be said to the word "fire department ".
Is that burning department?
No, it's the department for firefighters.
Firefighters is the word which mean the people who fight the fire!!
I can understand that well.
But, fire door…
I have no idea why it means fireproof door.

A: It's a very specific term.
Fire doors are fire-retardant, often heat insulating doors designed to prevent free airflow through the building thus they slow down fire spread. They should to be opened easily by a person with reduced ability to see or manipulate and are normally closed by design by means of springs or weights.

By its nature, the term is describing a door, obviously, somehow related to a case of fire. Fire has got plural meaning, including an event where the building is on fire.
By origin, the term is an analog of firewall (otherwise known as brandmauer), but fire door can be used as a door in routine life unlike a firewall. Firewall functions as an erected obstacle in case of fire, literally a wall, while technically it's often a form of heavy door.
PS. Today we have another meaning of firewall and one time some software was using image of opened fire door as "exit" icon.


text:
Other Forester Books
Capt._Sidney_Cochrane
Historic Naval Fiction Forum :: The Quarterdeck :: C S Forester: Horatio Hornblower
by Astrodene Tue 21 Oct 2008, 14:07
The Hornblower pages on the website were among the first I added to my old homepage site years ago. I didn't really look into the author. Have now had a look and he seems to have a lot of books but not all in the age of sail (land based & WWII ones).
So far I've found
Factual books: 'The Naval War of 1812' (first published as 'The age of fighting sail'), 'The Barbary Pirates' and 'The Adventures of John Wetherell.'
Fiction books: 'The Captain from Connecticut' (set in 1812) and 'To the Indies' about a Columbus voyage.
Does anyone know of any other age of sail based works he has written?
Re: Other Forester Books
by Capt._Sidney_Cochrane Mon 09 Nov 2009, 04:41
I'll look into it and let you know what I find, sir. Pardon my saying, but thus far, I own every early copy of Forrester's work that I can get my greedy little hands on. Both of the aforementioned works are wonderful, though 'Age of Fighting Sail' seemed lackluster in comparision to his other factual works.
Though, I'll begin looking into other works of Mr. Forrester and I'll report back with my findings.
Leading Seaman
Log Entries : 21
Location : -~:{47.6'N; -122.3'W}:~-
by Astrodene Mon 09 Nov 2009, 08:38
@Capt._Sidney_Cochrane wrote: I'll look into it and let you know what I find, sir. .....................
by reb01501 Tue 07 Jun 2011, 02:11
I'm reading Captain From Connecticut now and it's a cracking good read.
by Joolz Sun 16 Oct 2011, 15:55
An unpublished Forester crime novel 'The Pursued' has emerged and is about to be published by Penguin. Info from the BBC http://www.bbc.co.uk/news/entertainment-arts-15327043
Location : UK
by 80 Winters Sun 08 Apr 2012, 01:21
I read The Captain from Connecticut several years ago as I had finished Hornblower and was looking for anything else Forester had written. Again, I was out cruising in the Canadian Gulf Islands west of the straits of Georgia and it seemed every small island town had at least one good book store. I had never heard of this book, but found a 1st edition HB copy (Little, Brown & Co., Boston, 1941) in Ganges, BC. Had to pay $2.00 Canadian for it, but the jacket price was only $2.50.
I enjoyed the book, but after reading it I wondered why Forester didn't use Captain Peabody as an American version of Hornblower. Obviously, Peabody was already a captain and the War of 1812 didn't give you an extended timeline to work with, and of course, America's navy was still fledgling at best. The book jacket also mentions that The Captain from Connecticut originally appeared in serial form in the pages of the Saturday Evening Post a very popular weekly magazine in the U.S.
C.S. Forester was involved in "government work" of some kind during WW2, and he was still in the middle of the Hornblower series, which had began in 1936, so possibly that remained his primary AOS focus at that time. But I sure wish he'd chosen to make this a series because it was a good read for me.
It's in my library.
by 80 Winters Tue 05 Feb 2013, 01:19
Perusing the 'Forester Society' has brought a wealth of 'I didn't know that' information and I do recommend the Free E-Membership offer to members of the forum who haven't joined, but lest I get "off subject" my intent is to add a work by C.S. Forester that I didn't know about before reading the 'society newsletter'.
The book is Long Before Forty and it's the 'autobiography' of the writer. Most are familiar with the 'biography' written by his son (limited edition of 250 copies), the Forester's life 'in his own words' has got to be a 'first read'. Last published in 1988, it is still available from Amazon in hardback. Now, if I can only find it in Kindle.
Further research on Long before Forty shows that it was written by C.S. Forester when he was 31 years old (circa 1930) but never published until it was found in a safety deposit box after his death in 1966. His wife had it published in 1967 by Forester's British publisher Michael Joseph.
It was later published in an American edition as late as 1988.
Based on the 'cutoff' of 1931, it is likely that the 'Hornblower novels' do not figure into this autobiography. I'll know more in a few days when my copy arrives from the bookseller, as there does not appear to be a Kindle version.
by 80 Winters Fri 15 Feb 2013, 01:16
My copy of the above mentioned book has arrived and though I haven't read it yet, it does appear to be a bit of a mystery.
The book appears to be in near new condition, but with no DJ. It is published by Amereon House in Mattituck, NY. There is no ISBN # and it states:Copyright (C) 1964 BY C.S. Forester. It also states that it is printed in a limited edition of 100 copies.
I'm most intrigued by the statement that it was 'copyright 1964' because of information on the circumstances surrounding it's original publishing in 1967 seem to be widely accepted.
I suppose this could be an 'unauthorized knock-off'. Any thoughts?
by 80 Winters Wed 06 Mar 2013, 02:31
Having bought The Jamaican Affair from the Enet publishers, I continue to receive information on their latest offerings.
Enet is a ebook publisher owned and operated by C.S. Forester's two sons (along with one other fellow). I was interested to see that they have now published 10 of the 12 books in the Hornblower series, as well as several of their fathers other 'war' novels. According to their 'blurb', they intend to publish his entire body of work.
http://www.csforester.us/csf_works.html
by 80 Winters Sun 06 Aug 2017, 00:10
Evidently, C.S.Forester's "impact" through his writing has continued even to this day:
http://www.businessinsider.com/the-general-john-kelly-2017-8
by 80 Winters Sat 15 Feb 2020, 00:44
While this C.S. Forester story didn't make it into book form, it did nevertheless find it's way to Hollywood in 1942, by way of Cosmopolitan Magazine:
https://en.wikipedia.org/wiki/Commandos_Strike_at_Dawn
by Alaric Bond Sun 16 Feb 2020, 08:44
Thanks for this, 80; certainly a new one to me.
Alaric Bond
Vice-Admiral of the White
Location : Herstmonceux East Sussex
. :


text:
World Philippine Police Detonate Suspicious Package Near U.S. Embassy
Philippine Police Detonate Suspicious Package Near U.S. Embassy
Monday, November 28, 2016 at 2:42 am | כ"ז חשון תשע"ז
MANILA (Reuters) -
Philippine National Police chief Director General Ronald Dela Rosa points to parts of an Improvised Explosive Device (IED) found near the U.S Embassy with National Capital Region Police Office chief superintendent Oscar Albayalde during a press conference at the Manila Police District headquarters in metro Manila, Philippine, Monday. (Reuters/Romeo Ranoco)
Philippine police detonated a suspicious package they thought could have been a home-made bomb found in a trash bin near the U.S. embassy in Manila on Monday, the police chief in the capital said.
There was no damage from the controlled detonation, Senior Superintendent Joel Coronel said, although the incident created a traffic jam in the area. Business at the embassy continued as normal, with dozens of Filipinos queuing outside for visa applications. There was no immediate comment about the incident from embassy officials.
Coronel said police received a call before 7 a.m. local time from a street sweeper who found an old mobile phone with black and red electrical wires connected to a package. It was thought the package could have been a bomb.
"There is no danger, there is no cause for alarm," Coronel told reporters. He said there were no explosives, such as gunpowder, in the package.
"The blast you heard was caused by … a controlled detonation. We are trying to identify who left the package at the trash bin," he said.
However, a police intelligence official, who asked not to be identified because he was not authorized to speak to the media, said the mobile phone was connected to an 81 mm mortar shell.
"We are still making further investigations to check if the ordnance is live," the intelligence official told Reuters.
He said Islamist militants in central Mindanao, a restive southern province, were known to use such shells to make bombs, similar to one that exploded in Davao City in September.
Philippine Court OKs Pact Allowing U.S. Troops in Local Camps
U.S. Tests for Mustard Agent After Rocket Attack Near Iraq Base
Philippines Declares Battle With Islamist Rebels in Marawi City 'Over'
Erdogan: We Will 'Strangle' U.S.-Backed Force in Syria 'Before it's Even Born'
Man Throws Grenade at U.S. Embassy in Montenegro, Then Blows Himself Up


text:
Q: Clicking on Like all the view should show like objective C When I select Throwback -> Description occurs if I click on like button the like button changes to unlike and " like count=1099" increases. If I press back I want this unlike to be displayed next to Throwback let say in a label and again select Throwback button should display unlike and like Count should be 1100.
please Help how can i achieve this ?

//DetailOfUser.m
    #impot"DetailsOfStories.h"
    @interface DetailOfUser ()<UITableViewDelegate,UITableViewDataSource>
    {
      NSMutableArray *arrayAboutList;
        DetailsOfStories *viewController;
    }

- (UITableViewCell *)tableView:(UITableView *)theTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdentifier = @"cell";
    UILabel *title=[(UILabel *)cell viewWithTag:2];
    title.text=[NSString stringWithFormat:@"%@", [arrayAboutList[indexPath.row] valueForKey:@"title"]];

    return cell;
}

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

    viewController=[self.storyboard instantiateViewControllerWithIdentifier:@"DetailsOfStories"];
   viewController.descriptionList = [arrayAboutList[indexPath.row] mutableCopy];
    [self.navigationController pushViewController:viewController animated:YES];

}
@end

//DetailsOfStories.m
#import "DetailOfUser.h"
@interface DetailsOfStories ()
{
    NSMutableArray *descriptionList;
BOOL buttonToggled;
    int number,number1;
    NSNumber *num1;
}
@end
@implementation DetailsOfStories
@synthesize descriptionList;
- (void)viewDidLoad {
   UILabel *like_count=(UILabel *)[self.view viewWithTag:3];
    NSNumber *someNumber = @(number);
    NSString *someString = [someNumber stringValue];
    like_count.text=someString;
}
- (IBAction)like:(id)sender {

    if (!buttonToggled) {
        [sender setTitle:@"Unlike" forState:UIControlStateNormal];
        //number is interger
        number = [num1 intValue]+1;
        number1=number;
        UILabel *like_count=(UILabel *)[self.view viewWithTag:3];
        NSNumber *someNumber = @(number);
        NSString *someString = [someNumber stringValue];
        like_count.text=someString;
        buttonToggled = YES;
    }
    else {
        [sender setTitle:@"Like" forState:UIControlStateNormal];
        number1 = number1-1;
        UILabel *like_count=(UILabel *)[self.view viewWithTag:3];
        NSNumber *someNumber = @(number1);
        NSString *someString = [someNumber stringValue];
        like_count.text=someString;
        buttonToggled = NO;
    }
}

A: You can encapsulate the 'likes' number and status into a data model.
Both your controllers can access and modify the data model. In this case, data model can be a singleton, so that you can acquire it in your controllers.
May be you need sync data to server or persistent data to local storage later, data model can encapsulate all this service.
Here is some code sample
// YourDataModel
@interface YourDataModel : NSObject

@property (nonatomic, assign) NSNumber *numbersOfLike;
@property (nonatomic, assign) BOOL like;

@end
@implemention
+ (id)shareInstance {
  static dispatch_once_t onceToken;
  static YourDataModel *model;
  dispatch_once(&onceToken, ^{
     model = [[YourDataModel alloc] init];
  });
  return model;
}

// maybe sync data to backend server.
- (void)sync {
}

// load like numbers from local storage or remote server
- (instancetype)init {

}

// Then you can use it in your controllers
[[YourDataModel shareInstance] like];
[[YourDataModel shareInstance] numbersOfLike];
[[YourDataModel shareInstance] setLike:false];

Update:
If you want to update your story viewcontroller back from detail page. You can update 'like status' in its viewWillAppear() delegate. You can check details on Apple's official document.


Today's Battlefield V update has brought numerous improvements to the game, including long-awaited support for NVIDIA's DLSS technology. We took a closer look at image quality with DLSS on and off and measured its performance cost.
Metro Exodus launches this week. We thoroughly tested the game's technical aspect, on 3 resolutions, with 16 graphics cards, including the whole RTX lineup and Radeon VII. We also have a ton of screenshots and side-by-side image comparison using NVIDIA RTX and DLSS.
Hitman 2 is the latest installment in the epic contract-killer series. IO Interactive has expanded on their winning concepts from the previous title with larger, more detailed maps giving you even more unique ways to take out your target. We tested the game's performance using all the latest graphics cards, including GeForce 20 RTX and RX 590.
Today, Battlefield V enabled support for DirectX Raytracing with the latest patch. We tested this update using the RTX 2080 Ti, RTX 2080, and RTX 2070, with shocking results. Even though only reflections are raytraced, the performance hit for DXR is more than 50%.
Battlefield V, the most anticipated title this year, has just launched. We test the game with the latest game-ready drivers, using the whole NVIDIA RTX lineup and important graphics cards from AMD. We present results for all major resolutions, including 4K, and look at memory usage, too.
Assasin's Creed Odyssey is this year's version of the epic series and takes you to ancient Greece. We tested the game at 1080p, 1440p and 4K using a large selection of graphics cards, including the RTX 2080 and RTX 2080 Ti. We also investigated VRAM requirements and CPU performance scaling.
Dragon Quest XI finally brings the epic JRPG series to the PC platform using trusted and tested game mechanics. Graphics follow a cute-ish game style and are powered by Unreal Engine 4. Our performance review looks at this in detail, using 15 graphics cards. We also investigate CPU-core scaling and VRAM usage.
Monster Hunter: World brings the epic fight against huge enemies to the PC platform. The port is well done and runs well, especially on AMD graphics cards. Our performance review looks at this in detail, using 15 graphics cards. We also investigate VRAM usage and CPU-core scaling.
Yakuza 0 finally lets PC gamers in on the Japanese mafia action that console gamers have enjoyed for years. The game has an entertaining storyline that will make you laugh and shudder at the subtleties of Japanese nightlife. We test the game on 15 graphics cards, take a look at VRAM usage, and check CPU core scaling.
Far Cry 5 takes the fight to crazy Christian fundamentalists in forgotten Montana who are just waiting for the US Government to collapse. We tested 15 cards using today's latest GameReady drivers with actual in-game gameplay for the most accurate picture. AMD Radeon performance results are impressive, often beating their NVIDIA counterparts substantially.
Square Enix has finally brought Final Fantasy XV to the PC, with vastly improved graphics, a large range of graphics options, and an optional 4K texture pack. We test the game on 15 graphics cards, take a look at VRAM usage, both with and without the texture pack, and investigate how well the game makes use of multiple CPU cores.
Kingdom Come: Deliverance is the first surprise hit of 2018. It puts you in the shoes of a low-skilled peasant who has to endure tough adventures in the middle ages. We tested the game on 15 graphics cards at four resolutions, looked at VRAM usage, and checked on how the game scales on the CPU.
Call of Duty: WWII takes you back to a time without fancy fighting tech; you had to rely on your rifle and team mates. Sledgehammer's engine received optimizations in both graphics quality and performance, and there are plenty of settings to play with. We tested at up to 4K resolution, using 15 graphics cards, including the brand-new GTX 1070 Ti.
Middle-earth: Shadow of War is one of the most anticipated titles this season, also due to some pre-launch attention because of the inclusion of loot boxes. We are more interested in the technical aspects of the game and tested it on 15 recent graphics cards with and without the optionally available Ultra HD texture pack.
Bungie's new smash-hit Destiny 2 is in Beta now, and we took a closer look at its graphics options and performance. We're happy to report that there is no FPS cap, and FOV can be adjusted, too. Joining our test group of 14 cards are the AMD Radeon RX Vega 56 and Vega 64, with slightly surprising performance numbers.
Hellblade Senua's Sacrifice is one of the best-looking titles released in recent times. Its facial animations look stunning, and the game's visual fidelity is excellent, too, but comes at a performance cost. We tested this highly demanding game on a wide selection of graphics cards at full HD, 1440p, and 4K.
We test Prey on 14 graphics cards at 1080p, 1440p, and 4K using the highest settings available and also take a look at VRAM usage, which is surprisingly modest. The article also describes how to adjust the field of view (which can't be changed in-game), how to remove the hidden FPS cap, and how to skip the intro.
Tom Clancy's Ghost Recon Wildlands is Ubisoft's latest open-world tactical shooter. We test this highly demanding game on a wide selection of graphics cards at full HD, 1440p, and 4K, at Ultra and Very High settings. We also took a look at VRAM usage using the GeForce Titan X Pascal.
We test Rebellion's new shooter on 10 modern graphics cards, with the latest game-optimized drivers from AMD and NVIDIA. A surprise is that AMD gains up to 27% performance from switching to DX12 with Async Compute, while the performance uplift for NVIDIA users is only up to 5%.
Watch_Dogs 2 is Ubisoft's latest open-world game, featuring a new and improved game engine with tons of options to adjust graphics settings. We took a closer look at the game's performance using a wide spectrum of graphics cards and also tested its video memory usage, with and without the high-res texture pack.
Dishonored 2 gives you the choice to either be stealthy, fight or avoid conflict. The game is built using Void, a new DirectX 11 engine based on id Software's RAGE engine. We tested the game at up to 4K resolution on 10 different graphics cards and even looked into their VRAM usage.
Call of Duty Infinite Warfare is the latest installment in the record-breaking franchise. We took a closer look at the game's performance using a wide spectrum of graphics cards and also tested its video memory usage.


The picture above is of the dying forest where Wayne's father lives. It is the unintended consequences of shutting down the lumber industry 20 years ago allegedly to protect the forest. But the opposite happened. It's a fitting metaphor for what charity is doing to many third-world economies. Sometimes our most well-intentioned actions have devastating impact we do not foresee and would not have chosen. Wayne recently watched a documentary called Poverty, Inc, and it lays out in stark terms how misguided approaches to helping poorer nations can actually make them more impoverished by destroying their local economy. The industry that surrounds world poverty is structured on obsolete premises and yet continues to exist because it benefits third-world warlords, the banking industry, and agri-business in the first world. This is a powerful movie that will change how you view poverty and failed government and charity polices. We need to empower people in poverty to employ their own creativity to building an economy, rather than use their need to line our own pockets. Perhaps unadvisedly at the end the wade into the current political climate of the U.S.
You can view Poverty, Inc at Netflix and read more about the people behind it here.
Good stuff to ponder gentlemen, but also a bit of irony coming with an "ad" for an expensive vacation to Israel? Money better spent to fund "microloans" for those seeking to find their own way out of poverty. Just saying . . .
The forest around Red River area in Idaho has well over a million acres, and still growing, of standing dead timber due to the Forest Service allowing a pine beetle infestation to continue since the early 1970's. When it catches it will be another "big burn" like the fire so named from 1910.
Another example of unintended consequences…President Obama's overtime law, which raises the salary at which overtime will be paid. What Obama sees as restoring a work-life balance, is, in fact, de-incentivizing workers who don't have the desire or drive to work 24/7 for their respective company. And thus, the beginnings of a new welfare state for another class of people formerly known as the middle class.
You see people like Bono and Brad Pitt go into these impoverished areas simply looking to be idolized. Like you say Wayne, the real help comes from teaching fishing, not giving fish. Brad, your story about the corncob nearly brought me to tears. The grace bestowed on those four kids by God is astounding.
Interesting discussion. It reminds me of much that is written on the real effectiveness of short term missionary experiences, as relates to the receivers of these efforts. Much is wasted on making sure the short term missionaries being accommodated to a level acceptable to them so that can return having had a "deep and meaningful experience that allegedly results in understanding the realities of third world conditions". Really?
I won't go as far as drawing direct comparisons to "war lords and corporate elite", but if the shoe fits?…..
The sorrow is in the fact that Jesus is not seen as relationally available where in we have eternal life through knowing him and learn to trust him as he transforms us. Instead we get the "food of men", supposedly for free, but pay dearly, albeit most often unknowingly (just another well disguised deception).
My apologies if that was too negative…….
Just a word about Haiti. Few people are aware of the reparations that Haiti was paying to France because France was defeated in their war of independence (check it out here: https://en.wikipedia.org/wiki/External_debt_of_Haiti). Imagine if the U.S. had had to pay Britain reparations!


text:
The Auto Loons
April 14, 2018 April 15, 2018 autoloons Car News, Uncategorized
Audi's 815bhp electric concept racecar: e-tron VGT
The Gran Turismo game series is one of the most iconic racing games on the PlayStation consoles and many, many manufacturers have been part of their lineup for players to enjoy on all kinds of race tracks. Among the cars from the past and the present, many carmakers add their designs for the future, ones that may not be possible today but can definitely exist and race in the virtual world of Gran Turismo. These concepts are often suffixed by the term Vision Gran Turismo and after many years of waiting, Audi has joined the club in spectacular fashion – with the Audi e-tron Vision Gran Turismo concept racecar.
What makes this one really special is that Audi actually built a fully functional all-electric racecar exactly like the one they designed for the new Gran Turismo Sport video game. These VGT cars are usually categorized as Gr. X models for their uniqueness and we are currently doing a series on those cars on our YouTube channel, which you can check out here.
But what is that made Audi build a car that goes beyond the world of pixels and code? Well, the automotive world is undergoing a major shift in driving technology, primarily the switch from ICE to EVs and Audi is also looking to add all-electric cars to their model lineup like their fellow OEMs. The brand even joined the Formula E single-seater electric racing series as a factory team in the ongoing season and have put their tech to use in this new e-tron Vision GT concept prototype.
Under its track focussed body kit lie three electric motors 200kW each for a combined output of 805bhp but there is no word on the torque output yet. Two electric motors drive the rear axle and the third one the front axle, giving the car permanent all-wheel drive with variable power distribution through an advanced Quattro setup. It has a kerb weight of 1,450kg with ideal 50:50 weight distribution and can manage to launch itself from standstill to a 100kph in under 2.5 seconds.
Gears? None. Just a single speed setup as is standard in most fully electric vehicles which means the power is direct and instantaneous. In terms of the race kit with the aerodynamic elements all around, the cooling vents, the wheel covers, the louvres, the air vents and ducts and the massive rear wing, it definitely looks ready to take on any racetrack. It even wears a livery that pays homage to the iconic Audi racecar from 1989, the Audi 90 quattro IMSA GTO. And that's the coolest part about this concept car – THERE'S A REAL RUNNING PROTOTYPE OF IT!!
"This is what we are particularly proud of," says Audi's chief designer Marc Lichte. "Although the design of a virtual vehicle allows much greater freedom and the creation of concepts which are only hard to implement in reality, we did not want to put a purely fictitious concept on wheels. Our aim was a fully functional car. The Audi e-tron Vision Gran Turismo shows that electric mobility at Audi is very emotive. This car incorporates numerous elements of our new design language such as the inverted single frame in the vehicle's colour that will be typical for our new e-tron models."
But this prototype isn't just going to be an R&D toy for the boys and girls at Ingolstadt, nope. It's going to be the race taxi at all the Formula E races in Europe and at numerous other events in 2018 with two epic drivers behind the wheel – former DTM racer Rahel Frey or Le Mans winner Dindo Capello.
Share your thoughts on the Audi e-tron Vision Gran Turismo in the comments below the gallery.
Audi e-tron Vision Gran Turismo, GT Sport
Audi e-tron Vision Gran Turismo, Audi Vision Gran Turismo, GT Sport
Tagged Audi, audi e tron, audi e tron vision gt, electric racecar, electric racing, electric vehicle, formula e, gran turismo, gran turismo sport, playstation 4, racing
Vettel pulls through in Bahrain GP: F1 2018
Ricciardo charges through to victory in Chinese GP: F1 2018
Follow The Auto Loons on WordPress.com
More from the Loons


text:
Deschamps: 'We play to win'
France boss Didier Deschamps is set to make no fewer than six changes for Les Bleus' final group-stage match but insisted that the objective is to secure top spot in Group C with a perfect record of three wins from three matches.
Tuesday, 26 June, 2018
FIFA World Cup 2018 Group C, Matchday 3
Luzhniki Stadium, Moscow
Denmark - France (Kick-off at 16:00 CET)
With France qualified for the round of 16 by winning their first two matches, 2-1 against Australia and 1-0 against Peru, coach Didier Deschamps is set to make a raft of changes for Les Bleus' third and final group-stage clash against Denmark in Moscow on Tuesday.
Firsts for Mandanda, Kimpembe
'Keeper Steve Mandanda (Olympique de Marseille) and stopper Presnel Kimpembe (Paris Saint-Germain) are tipped to start in the rear-guard of a 4-4-2 - Deschamps' third tactical line-up in as many starts at the tournament - the former to make his first start at a major tournament and the latter making his first start in his third appearance for Les Bleus.
Meanwhile Olivier Giroud - who has scored France's last three goals against Denmark - will work up front with Antoine Griezmann, Deschamps' formation leaving no room for PSG star Kylian Mbappé. A solid four-man midfield with the pace, vision and passing of ex-Monaco star Thomas Lemar and ex-Rennes speedster Ousmane Dembélé on the flanks will be without the likes of Paul Pogba, the tireless N'Golo Kanté set to partner Sevilla's Steven N'Zonzi in front of the back four.
Objective: Top spot
While there has been no real suggestion that France would play for a draw - a result that would see both the French and the Danes progress, Deschamps was keen to dispel any possibility of that impression given by his choosing to ring the changes.
"There is absolutely no question of helping Denmark to get a point. Our objective is to secure top spot. I would never tell my team to play for the draw. We play to win," he declared in his pre-match press conference. "But I do have to take into account various factors concerning different individuals, like game time and yellow cards. It's also a chance to hand around a bit of game time and rotate the squad. Every player in the group deserves to play, even though I can't field everyone."
Shift through the gears
The dead rubber comes at a good time for France, whom many feel have not yet hit their straps in the competition.
"We've improved since the beginning of the tournament," explained captain Raphaël Varane. "We need to maintain our defensive solidity. But in attack, we can do our opponents more damage; we have the qualities to tear defences apart. We took a little while to get going but now we can focus on stepping it up in attack."
To do so, Les Bleus will need to best ex-LOSC stopper Simon Kjaer, while remaining wary of the goal threat posed by Girondins de Bordeaux livewire Martin Braithwaite.
Probable teams
Danemark: Schmeichel; Dalsgaard, Kjaer (c), Christensen, Larsen; Schöne, Delaney; Cornelius, Eriksen, Braithwaite; Jörgensen
France: S. Mandanda; Sidibé, Varane (c), Kimpembe, Hernandez; Dembélé, Nzonzi, Kanté, Lemar; Griezmann, Giroud
MONTPELLIER HÉRAULT SC - AS MONACO (2-3)/ Highlights - 2020/2021


text:
COVID-19: Changes to Employment Law
· Latest News
i. Intro
Coronavirus disease (COVID-19) outbreak in mid-March of 2020 highlighted several gaps in the Armenian employment legislation, which forced local authorities to deal with introduction of amendments to the Employment Code of Armenia as a matter of urgency. The Armenian Government prepared the legislative package to amend and supplement the Employment Code that was approved by the National Assembly of Armenia in the second reading on April 29, 2020. This means that the adopted package will enter into force in the nearest future, after President Armen Sargsyan signs the amending law. This alert aims to cover the upcoming amendments to the Employment legislation to let local businesses adjust their internal processes to the novelties. This alert should not be considered as legal advice and it is not recommended that one's decision-making is based exclusively on the information mentioned herein. Neither Ameria cjsc, nor the authors of this review bear any liability for the consequences of any decisions made in reliance upon the information provided herein. If you are looking for specific legal advice, please reach out to us at legal@ameria.am.
ii. Regulations on remote work and temporary changes in work conditions
The National Assembly of Armenia supplemented the Employment Code by Article 106.1, which allows employers to switch employees to remote work from a place other than workplace at the time of prevention or mitigation of the consequences of natural disasters, technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature, where it is impossible to work at usual workplace due to such circumstances. From now on, requirements as to notifying employees of change of workplace do not apply to the situation, where an employer transfers employees to a home-based model of working at the time of emergencies; while previously employer had to notify employees of such changes from 14 to 60 days in advance depending on the duration of employment. Where an employee cannot continue work due to emergency (whether at workplace or remotely) and employee has unused annual leave days, an employer must provide employee with annual leave upon his/her request.
iii. Regulations on remote work and temporary changes in work conditions
The National Assembly of Armenia supplemented the Employment Code by Article 106.1, which allows employers to switch employees to remote work from a place other than workplace at the time of prevention or mitigation of the consequences of natural disasters, technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature, where it is impossible to work at usual workplace due to such circumstances. From now on, requirements as to notifying employees of change of workplace do not apply to the situation, where an employer transfers employees to a home-based model of working at the time of emergencies; while previously employer had to notify employees of such changes from 14 to 60 days in advance depending on the duration of employment. Where an employee cannot continue work due to emergency (whether at workplace or remotely) and employee has unused annual leave days, an employer must provide employee with annual leave upon his/her request. Article 106(1) of the Employment Code was restated and specified in more detail in a way to enable employer to transfer employee to another work at the same workplace and/or change structural subdivision of employee and/or change the name of employee position and/or work functions and/or working regime (work hours) for the period of up to one month by the employer's internal act, where it is conditioned by natural disasters, technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature or it is necessary to prevent or overcome the consequences of the above-mentioned circumstances.
iv. State supervision over compliance with employment legislation
Before the introduction of the novelties in question, no state authority to implement supervision over the observance of the Employment Code requirements existed. Initially, it was planned to delegate those functions to Health and Labor Inspectorate ("Inspectorate") starting from July 1, 2021. However, in light of the recent developments it was decided to provide the Inspectorate with powers to control adherence of the employment legislation by employers.
It should be taken into consideration that these provisions are of temporary nature and enable the Inspectorate to inspect employers only (i) at the time of natural disasters, technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature and (ii) at the written request of an employee. Starting from July 1, 2021, the Inspectorate will be authorized to inspect employers regardless of the existence of extraordinary circumstances and employee application. The adopted package empowers the Inspectorate to penalize employers for, inter alia, noncompliance with employment law requirements and occupational health and safety technical regulations, non-payment of salaries and breach of work permit requirements.
v. Prohibition to terminate the employment on the employer's initiative
The law adopted by the National Assembly prohibited termination of employment contract on the employer's initiative due to an employee's failure to show up to work at the time and due to natural disasters, technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature. According to the new regulations, the employer cannot terminate employment contract with the employee, who fails to show up to work due to the need to provide care for a child under 12 at the time of unplanned relocation or unplanned provision of holidays in educational institutions (including pre-school educational institutions).
vi. Overtime
The amending law defines that employees may be involved in 8 hours of overtime during 2 consecutive days, if such overtime work is required to prevent natural disasters, technological accidents, epidemics and similar circumstances or overcome the consequences thereof. In any case, duration of daily work cannot exceed 12 hours (rest and meal break inclusive), while weekly working hours cannot be in excess of 48.
vii. Force majeure (irresistible force)
Another innovation of the Employment Code specified the definition of force majeure.
According to Article 186(7) of the Employment Code, force majeure occurs where performance of work duties (including remote work) is impossible due to temporary limitations in rights and freedoms of natural and legal persons imposed by law at the time of prevention of natural disasters, technological accidents, epidemics, accidents, fires, other circumstances of extraordinary nature or mitigation of the consequences thereof. We recall that existence of a force majeure event causing idleness enables employers not to pay employees for idle time.
viii.Compensation for work
According to Article 187.1 of the Employment Code, if at the time of prevention of natural disasters, technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature or mitigation of the consequences thereof employee fails to show up to work or shows up to work part time due to the existence of the mentioned circumstances, the employee is at least payable the salary for actually worked hours or actually performed work. The salary for work done remotely at the time of emergency shall be paid in full. The salary of the employee, who is absent from workplace for up to 2 hours during the working day due to the need to provide care for a child under 12 at the time of unplanned relocation or unplanned provision of holidays in educational institutions (including pre-school educational institutions), shall be paid in full.
IX. Disciplinary liability
The Employment Code was supplemented by several provisions excluding the disciplinary liability of employees. The acts that are not treated as disciplinary violations are as follows:
– An employee fails to show up to work or shows up to work part time due to natural disasters technological accidents, epidemics, accidents, fires and other circumstances of extraordinary nature at the time of prevention or immediate mitigation of the consequences thereof;
– An employee fails to show up to work or shows up to work part time due to the need to provide care for a child under 12 at the time of unplanned relocation or unplanned provision of holidays in educational institutions (including pre-school institutions).
COVID-19: Employment Law Guide
PLAN OF CHANGES TO WORK PERMIT GRANTING REGULATIONS
We just sent you an email. Please click the link in the email to confirm your subscription!


text:
define([
  'jquery',
  'underscore',
  'pat-registry',
  'pat-base',
  'tinymce',
  'text!mockup-patterns-tinymce-url/templates/link.xml',
  'text!mockup-patterns-tinymce-url/templates/image.xml',
  'mockup-patterns-relateditems',
  'mockup-patterns-autotoc',
  'mockup-patterns-modal',
  'mockup-patterns-upload'
], function($, _, registry, Base, tinymce, LinkTemplate, ImageTemplate, RelatedItems) {
  'use strict';

  var LinkType = Base.extend({
    name: 'linktype',
    trigger: '.pat-linktype-dummy',
    defaults: {
      linkModal: null // required
    },

    init: function() {
      this.linkModal = this.options.linkModal;
      this.tinypattern = this.options.tinypattern;
      this.tiny = this.tinypattern.tiny;
      this.dom = this.tiny.dom;
    },

    getEl: function(){
      return this.$el.find('input');
    },

    value: function() {
      return $.trim(this.getEl().val());
    },

    toUrl: function() {
      return this.value();
    },

    load: function(element) {
      this.getEl().attr('value', this.tiny.dom.getAttrib(element, 'data-val'));
    },

    set: function(val) {
      var $el = this.getEl();
      $el.attr('value', val);
      $el.val(val);
    },

    attributes: function() {
      return {
        'data-val': this.value()
      };
    }
  });

  var ExternalLink = LinkType.extend({
    name: 'externallinktype',
    trigger: '.pat-externallinktype-dummy',
    init: function() {
      LinkType.prototype.init.call(this);
      this.getEl().on('change', function(){
        // check here if we should automatically add in http:// to url
        var val = $(this).val();
        if((new RegExp("https?\:\/\/")).test(val)){
          // already valid url
          return;
        }
        var domain = $(this).val().split('/')[0];
        if(domain.indexOf('.') !== -1){
          $(this).val('http://' + val);
        }
      });
    }
  });

  var InternalLink = LinkType.extend({
    name: 'internallinktype',
    trigger: '.pat-internallinktype-dummy',
    init: function() {
      LinkType.prototype.init.call(this);
      this.getEl().addClass('pat-relateditems');
      this.createRelatedItems();
    },

    getEl: function(){
      return this.$el.find('input:not(.select2-input)');
    },

    createRelatedItems: function() {
      var options = this.linkModal.options.relatedItems;
      options.upload = false;  // ensure that related items upload is off.
      this.relatedItems = new RelatedItems(this.getEl(), options);
    },

    value: function() {
      var val = this.getEl().select2('data');
      if (val && typeof(val) === 'object') {
        val = val[0];
      }
      return val;
    },

    toUrl: function() {
      var value = this.value();
      if (value) {
        return this.tinypattern.generateUrl(value);
      }
      return null;
    },
    load: function(element) {
      var val = this.tiny.dom.getAttrib(element, 'data-val');
      if (val) {
        this.set(val);
      }
    },

    set: function(val) {
      var $el = this.getEl();
      // kill it and then reinitialize since select2 will load data then
      $el.select2('destroy');
      $el.removeData('pattern-relateditems'); // reset the pattern
      $el.parent().replaceWith($el);
      $el.attr('value', val);
      $el.val(val);
      this.createRelatedItems();
    },

    attributes: function() {
      var val = this.value();
      if (val) {
        return {
          'data-val': val.UID
        };
      }
      return {};
    }
  });

  var UploadLink = LinkType.extend({
    name: 'uploadlinktype',
    trigger: '.pat-uploadlinktype-dummy',
    /* need to do it a bit differently here.
       when a user uploads and tries to upload from
       it, you need to delegate to the real insert
       linke types */
    getDelegatedLinkType: function(){
      if(this.linkModal.linkType === 'uploadImage'){
        return this.linkModal.linkTypes.image;
      }else{
        return this.linkModal.linkTypes.internal;
      }
    },
    toUrl: function(){
      return this.getDelegatedLinkType().toUrl();
    },
    attributes: function(){
      return this.getDelegatedLinkType().attributes();
    },
    set: function(val){
      return this.getDelegatedLinkType().set(val);
    },
    load: function(element){
      return this.getDelegatedLinkType().load(element);
    },
    value: function(){
      return this.getDelegatedLinkType().value();
    }
  });

  var ImageLink = InternalLink.extend({
    name: 'imagelinktype',
    trigger: '.pat-imagelinktype-dummy',
    toUrl: function() {
      var value = this.value();
      return this.tinypattern.generateImageUrl(value, this.linkModal.$scale.val());
    }
  });

  var EmailLink = LinkType.extend({
    name: 'emaillinktype',
    trigger: '.pat-emaillinktype-dummy',
    toUrl: function() {
      var self = this;
      var val = self.value();
      if (val) {
        var subject = self.getSubject();
        var href = 'mailto:' + val;
        if (subject) {
          href += '?subject=' + subject;
        }
        return href;
      }
      return null;
    },

    load: function(element) {
      LinkType.prototype.load.apply(this, [element]);
      this.linkModal.$subject.val(this.tiny.dom.getAttrib(element, 'data-subject'));
    },

    getSubject: function() {
      return this.linkModal.$subject.val();
    },

    attributes: function() {
      var attribs = LinkType.prototype.attributes.call(this);
      attribs['data-subject'] = this.getSubject();
      return attribs;
    }
  });

  var AnchorLink = LinkType.extend({
    name: 'anchorlinktype',
    trigger: '.pat-anchorlinktype-dummy',
    init: function() {
      LinkType.prototype.init.call(this);
      this.$select = this.$el.find('select');
      this.anchorNodes = [];
      this.anchorData = [];
      this.populate();
    },

    value: function() {
      var val = this.$select.select2('data');
      if (val && typeof(val) === 'object') {
        val = val.id;
      }
      return val;
    },

    populate: function() {
      var self = this;
      self.$select.find('option').remove();
      self.anchorNodes = [];
      self.anchorData = [];
      var node, i, j, name, title;

      var nodes = self.tiny.dom.select('.mceItemAnchor,.mce-item-anchor');
      for (i = 0; i < nodes.length; i = i + 1) {
        node = nodes[i];
        name = self.tiny.dom.getAttrib(node, 'name');
        if (!name) {
          name = self.tiny.dom.getAttrib(node, 'id');
        }
        if (name !== '') {
          self.anchorNodes.push(node);
          self.anchorData.push({name: name, title: name});
        }
      }

      nodes = self.tiny.dom.select(self.linkModal.options.anchorSelector);
      if (nodes.length > 0) {
        for (i = 0; i < nodes.length; i = i + 1) {
          node = nodes[i];
          title = $(node).text().replace(/^\s+|\s+$/g, '');
          if (title === '') {
            continue;
          }
          name = title.toLowerCase().substring(0,1024);
          name = name.replace(/[^a-z0-9]/g, '-');
          /* okay, ugly, but we need to first check that this anchor isn't already available */
          var found = false;
          for (j = 0; j < self.anchorNodes.length; j = j + 1) {
            var anode = self.anchorData[j];
            if (anode.name === name) {
              found = true;
              // so it's also found, let's update the title to be more presentable
              anode.title = title;
              break;
            }
          }
          if (!found) {
            self.anchorData.push({name: name, title: title, newAnchor: true});
            self.anchorNodes.push(node);
          }
        }
      }
      if (self.anchorNodes.length > 0) {
        for (i = 0; i < self.anchorData.length; i = i + 1) {
          var data = self.anchorData[i];
          self.$select.append('<option value="' + i + '">' + data.title + '</option>');
        }
      } else {
        self.$select.append('<option>No anchors found..</option>');
      }
    },

    getIndex: function(name) {
      for (var i = 0; i < this.anchorData.length; i = i + 1) {
        var data = this.anchorData[i];
        if (data.name === name) {
          return i;
        }
      }
      return 0;
    },

    toUrl: function() {
      var val = this.value();
      if (val) {
        var index = parseInt(val, 10);
        var node = this.anchorNodes[index];
        var data = this.anchorData[index];
        if (data.newAnchor) {
          node.innerHTML = '' + node.innerHTML;
        }
        return '#' + data.name;
      }
      return null;
    },

    set: function(val) {
      var anchor = this.getIndex(val);
      this.$select.select2('data', '' + anchor);
    }
  });

  tinymce.PluginManager.add('ploneimage', function(editor) {
    editor.addButton('ploneimage', {
      icon: 'image',
      tooltip: 'Insert/edit image',
      onclick: editor.settings.addImageClicked,
      stateSelector: 'img:not([data-mce-object])'
    });

    editor.addMenuItem('ploneimage', {
      icon: 'image',
      text: 'Insert image',
      onclick: editor.settings.addImageClicked,
      context: 'insert',
      prependToContext: true
    });
  });

  /* register the tinymce plugin */
  tinymce.PluginManager.add('plonelink', function(editor) {
    editor.addButton('plonelink', {
      icon: 'link',
      tooltip: 'Insert/edit link',
      shortcut: 'Ctrl+K',
      onclick: editor.settings.addLinkClicked,
      stateSelector: 'a[href]'
    });

    editor.addButton('unlink', {
      icon: 'unlink',
      tooltip: 'Remove link(s)',
      cmd: 'unlink',
      stateSelector: 'a[href]'
    });

    editor.addShortcut('Ctrl+K', '', editor.settings.addLinkClicked);

    editor.addMenuItem('plonelink', {
      icon: 'link',
      text: 'Insert link',
      shortcut: 'Ctrl+K',
      onclick: editor.settings.addLinkClicked,
      stateSelector: 'a[href]',
      context: 'insert',
      prependToContext: true
    });
  });

  var LinkModal = Base.extend({
    name: 'linkmodal',
    trigger: '.pat-linkmodal',
    defaults: {
      anchorSelector: 'h1,h2,h3',
      linkTypes: [
        /* available, none activate by default because these options
         * only get merged, not set.
        'internal',
        'upload',
        'external',
        'email',
        'anchor',
        'image'
        'externalImage'*/
      ],
      initialLinkType: 'internal',
      text: {
        insertHeading: 'Insert Link'
      },
      linkTypeClassMapping: {
        'internal': InternalLink,
        'upload': UploadLink,
        'external': ExternalLink,
        'email': EmailLink,
        'anchor': AnchorLink,
        'image': ImageLink,
        'uploadImage': UploadLink,
        'externalImage': LinkType
      }
    },
    // XXX: this is a temporary work around for having separated templates.
    // Image modal is going to have its own modal class, funcs and template.
    linkTypeTemplateMapping: {
      'internal': LinkTemplate,
      'upload': LinkTemplate,
      'external': LinkTemplate,
      'email': LinkTemplate,
      'anchor': LinkTemplate,
      'image': ImageTemplate,
      'uploadImage': ImageTemplate,
      'externalImage': ImageTemplate
    },

    template: function(data) {
      return _.template(this.linkTypeTemplateMapping[this.linkType])(data);
    },

    init: function() {
      var self = this;
      self.tinypattern = self.options.tinypattern;
      if (self.tinypattern.options.anchorSelector) {
        self.options.anchorSelector = self.tinypattern.options.anchorSelector;
      }
      self.tiny = self.tinypattern.tiny;
      self.dom = self.tiny.dom;
      self.linkType = self.options.initialLinkType;
      self.linkTypes = {};
      self.modal = registry.patterns['plone-modal'].init(self.$el, {
        html: self.generateModalHtml(),
        content: null,
        buttons: '.plone-btn'
      });
      self.modal.on('shown', function(e) {
        self.modalShown.apply(self, [e]);
      });
    },

    isOnlyTextSelected: function() {
      /* pulled from TinyMCE link plugin */
      var html = this.tiny.selection.getContent();

      // Partial html and not a fully selected anchor element
      if (/</.test(html) && (!/^]+>[^<]+<\/a>$/.test(html) || html.indexOf('href=') === -1)) {
        return false;
      }

      if (this.anchorElm) {
        var nodes = this.anchorElm.childNodes, i;

        if (nodes.length === 0) {
          return false;
        }

        for (var ii = nodes.length - 1; ii >= 0; ii--) {
          if (nodes[ii].nodeType !== 3) {
            return false;
          }
        }
      }

      return true;
    },

    generateModalHtml: function() {
      return this.template({
        options: this.options,
        upload: this.options.upload,
        text: this.options.text,
        insertHeading: this.options.text.insertHeading,
        linkTypes: this.options.linkTypes,
        externalText: this.options.text.external,
        emailText: this.options.text.email,
        subjectText: this.options.text.subject,
        targetList: this.options.targetList,
        titleText: this.options.text.title,
        externalImageText: this.options.text.externalImage,
        altText: this.options.text.alt,
        imageAlignText: this.options.text.imageAlign,
        scaleText: this.options.text.scale,
        imageScales: this.options.imageScales,
        cancelBtn: this.options.text.cancelBtn,
        insertBtn: this.options.text.insertBtn
      });
    },

    isImageMode: function() {
      return ['image', 'uploadImage', 'externalImage'].indexOf(this.linkType) !== -1;
    },

    initElements: function() {
      var self = this;
      self.$target = $('select[name="target"]', self.modal.$modal);
      self.$button = $('.plone-modal-footer input[name="insert"]', self.modal.$modal);
      self.$title = $('input[name="title"]', self.modal.$modal);
      self.$subject = $('input[name="subject"]', self.modal.$modal);

      self.$alt = $('input[name="alt"]', self.modal.$modal);
      self.$align = $('select[name="align"]', self.modal.$modal);
      self.$scale = $('select[name="scale"]', self.modal.$modal);

      /* load up all the link types */
      _.each(self.options.linkTypes, function(type) {
        var $container = $('.linkType.' + type + ' .main', self.modal.$modal);
        self.linkTypes[type] = new self.options.linkTypeClassMapping[type]($container, {
          linkModal: self,
          tinypattern: self.tinypattern
        });
      });

      $('.autotoc-nav a', self.modal.$modal).click(function() {
        var $fieldset = $('fieldset.linkType', self.modal.$modal).eq($(this).index());
        var classes = $fieldset[0].className.split(/\s+/);
        _.each(classes, function(val) {
          if (_.indexOf(self.options.linkTypes, val) !== -1){
            self.linkType = val;
          }
        });
      });
    },

    getLinkUrl: function() {
      // get the url, only get one uid
      return this.linkTypes[this.linkType].toUrl();
    },

    getValue: function() {
      return this.linkTypes[this.linkType].value();
    },

    updateAnchor: function(href) {
      var self = this;

      self.tiny.focus();
      self.tiny.selection.setRng(self.rng);

      var target = self.$target.val();
      var title = self.$title.val();
      var linkAttrs = $.extend(true, self.data, {
        title: title ? title : null,
        target: target ? target : null,
        'data-linkType': self.linkType,
        href: href
      }, self.linkTypes[self.linkType].attributes());
      if (self.anchorElm) {

        if (self.onlyText && linkAttrs.text !== self.initialText) {
          if ("innerText" in self.anchorElm) {
            self.anchorElm.innerText = self.data.text;
          } else {
            self.anchorElm.textContent = self.data.text;
          }
        }

        self.tiny.dom.setAttribs(self.anchorElm, linkAttrs);

        self.tiny.selection.select(self.anchorElm);
        self.tiny.undoManager.add();
      } else {
        if (self.onlyText) {
          self.tiny.insertContent(
            self.tiny.dom.createHTML('a', linkAttrs,
                                     self.tiny.dom.encode(self.data.text)));
        } else {
          self.tiny.execCommand('mceInsertLink', false, linkAttrs);
        }
      }
    },

    focusElement: function(elm) {
      this.tiny.focus();
      this.tiny.selection.select(elm);
      this.tiny.nodeChanged();
    },

    updateImage: function(src) {
      var self = this;
      var title = self.$title.val();

      self.tiny.focus();
      self.tiny.selection.setRng(self.rng);

      var data = $.extend(true, {}, {
        src: src,
        title: title ? title : null,
        alt: self.$alt.val(),
        'class': self.$align.val(),
        'data-linkType': self.linkType,
        'data-scale': self.$scale.val()
      }, self.linkTypes[self.linkType].attributes());
      if (self.imgElm && !self.imgElm.getAttribute('data-mce-object')) {
        data.width = self.dom.getAttrib(self.imgElm, 'width');
        data.height = self.dom.getAttrib(self.imgElm, 'height');
      } else {
        self.imgElm = null;
      }

      function waitLoad(imgElm) {
        imgElm.onload = imgElm.onerror = function() {
          imgElm.onload = imgElm.onerror = null;
          self.focusElement(imgElm);
        };
      }

      if (!self.imgElm) {
        data.id = '__mcenew';
        self.tiny.insertContent(self.dom.createHTML('img', data));
        self.imgElm = self.dom.get('__mcenew');
        self.dom.setAttrib(self.imgElm, 'id', null);
      } else {
        self.dom.setAttribs(self.imgElm, data);
      }

      waitLoad(self.imgElm);
      if (self.imgElm.complete) {
        self.focusElement(self.imgElm);
      }
    },

    modalShown: function(e) {
      var self = this;
      self.initElements();
      self.initData();
      // upload init
      if(self.options.upload){
        self.$upload = $('.uploadify-me', self.modal.$modal);
        self.options.upload.relatedItems = $.extend(true, {}, self.options.relatedItems);
        self.options.upload.relatedItems.selectableTypes = self.options.folderTypes;
        self.$upload.addClass('pat-upload').patternUpload(self.options.upload);
        self.$upload.on('uploadAllCompleted', function(evt, data) {
          if(self.linkTypes.image){
            self.linkTypes.image.set(data.data.UID);
            $('#' + $('#tinylink-image' , self.modal.$modal).data('navref')).trigger('click');
          }else{
            self.linkTypes.internal.set(data.data.UID);
            $('#' + $('#tinylink-internal' , self.modal.$modal).data('navref')).trigger('click');
          }
        });
      }

      self.$button.off('click').on('click', function(e) {
        e.preventDefault();
        e.stopPropagation();
        self.linkType = self.modal.$modal.find('fieldset.active').data('linktype');

        if(self.linkType === 'uploadImage' || self.linkType === 'upload'){
          var patUpload = self.$upload.data().patternUpload;
          if(patUpload.dropzone.files.length > 0){
            patUpload.processUpload();
            self.$upload.on('uploadAllCompleted', function(evt, data) {
              var counter = 0;
              var checkUpload = function(){
                if(counter < 5 && !self.linkTypes[self.linkType].value()){
                  counter += 1;
                  setTimeout(checkUpload, 100);
                  return;
                }else{
                  var href = self.getLinkUrl();
                  self.updateImage(href);
                  self.hide();
                }
              };
              checkUpload();
            });
          }
        }
        var href;
        try{
            href = self.getLinkUrl();
        }catch(error){
            return;  // just cut out if no url
        }
        if (!href) {
          return; // just cut out if no url
        }
        if (self.isImageMode()) {
          self.updateImage(href);
        } else {
          /* regular anchor */
          self.updateAnchor(href);
        }
        self.hide();
      });
      $('.plone-modal-footer input[name="cancel"]', self.modal.$modal).click(function(e) {
        e.preventDefault();
        self.hide();
      });
    },

    show: function() {
      this.modal.show();
    },

    hide: function() {
      this.modal.hide();
    },

    initData: function() {
      var self = this;

      self.data = {};
      // get selection BEFORE..
      // This is pulled from TinyMCE link plugin
      self.initialText = null;
      var value;
      self.rng = self.tiny.selection.getRng();
      self.selectedElm = self.tiny.selection.getNode();
      self.anchorElm = self.tiny.dom.getParent(self.selectedElm, 'a[href]');
      self.onlyText = self.isOnlyTextSelected();

      self.data.text = self.initialText = self.anchorElm ? (self.anchorElm.innerText || self.anchorElm.textContent) : self.tiny.selection.getContent({format: 'text'});
      self.data.href = self.anchorElm ? self.tiny.dom.getAttrib(self.anchorElm, 'href') : '';

      if (self.anchorElm) {
        self.data.target = self.tiny.dom.getAttrib(self.anchorElm, 'target');
      } else if (self.tiny.settings.default_link_target) {
        self.data.target = self.tiny.settings.default_link_target;
      }

      if ((value = self.tiny.dom.getAttrib(self.anchorElm, 'rel'))) {
        self.data.rel = value;
      }

      if ((value = self.tiny.dom.getAttrib(self.anchorElm, 'class'))) {
        self.data['class'] = value;
      }

      if ((value = self.tiny.dom.getAttrib(self.anchorElm, 'title'))) {
        self.data.title = value;
      }

      self.selection = self.tiny.selection;
      self.tiny.focus();
      var selectedElm = self.imgElm = self.selection.getNode();
      self.anchorElm = self.dom.getParent(selectedElm, 'a[href]');

      var linkType;
      if (self.isImageMode()) {
        if (self.imgElm.nodeName !== 'IMG') {
          // try finding elsewhere
          if (self.anchorElm) {
            var imgs = self.anchorElm.getElementsByTagName('img');
            if (imgs.length > 0) {
              self.imgElm = imgs[0];
              self.focusElement(self.imgElm);
            }
          }
        }
        if (self.imgElm.nodeName !== 'IMG') {
          // okay, still no image, unset
          self.imgElm = null;
        }
        if (self.imgElm) {
          var src = self.dom.getAttrib(self.imgElm, 'src');
          self.$title.val(self.dom.getAttrib(self.imgElm, 'title'));
          self.$alt.val(self.dom.getAttrib(self.imgElm, 'alt'));
          linkType = self.dom.getAttrib(self.imgElm, 'data-linktype');
          if (linkType) {
            self.linkType = linkType;
            self.linkTypes[self.linkType].load(self.imgElm);
            var scale = self.dom.getAttrib(self.imgElm, 'data-scale');
            self.$scale.val(scale);
            $('#tinylink-' + self.linkType, self.modal.$modal).trigger('click');
          }else if (src) {
            self.guessImageLink(src);
          }
          var className = self.dom.getAttrib(self.imgElm, 'class');
          var klasses = className.split(' ');
          for (var i = 0; i < klasses.length; i = i + 1) {
            var klass = klasses[i];
            for (var availClass in self.options.imageClasses) {
              if (availClass.indexOf(klass) !== -1) {
                self.$align.val(klass);
              }
            }
          }
        }
      }else if (self.anchorElm) {
        self.focusElement(self.anchorElm);
        var href = '';
        href = self.dom.getAttrib(self.anchorElm, 'href');
        self.$target.val(self.dom.getAttrib(self.anchorElm, 'target'));
        self.$title.val(self.dom.getAttrib(self.anchorElm, 'title'));
        linkType = self.dom.getAttrib(self.anchorElm, 'data-linktype');
        if (linkType) {
          self.linkType = linkType;
          self.linkTypes[self.linkType].load(self.anchorElm);
          $('#tinylink-' + self.linkType, self.modal.$modal).trigger('click');
        }else if (href) {
          self.guessAnchorLink(href);
        }
      }
    },

    guessImageLink: function(src) {
      if (src.indexOf(this.options.prependToScalePart) !== -1) {
        this.linkType = 'image';
        this.$scale.val(this.tinypattern.getScaleFromUrl(src));
        this.linkTypes.image.set(this.tinypattern.stripGeneratedUrl(src));
      } else {
        this.linkType = 'externalImage';
        this.linkTypes.externalImage.set(src);
      }
    },

    guessAnchorLink: function(href) {
      if (this.options.prependToUrl &&
          href.indexOf(this.options.prependToUrl) !== -1) {
        // XXX if using default configuration, it gets more difficult
        // here to detect internal urls so this might need to change...
        this.linkType = 'internal';
        this.linkTypes.internal.set(this.tinypattern.stripGeneratedUrl(href));
      } else if (href.indexOf('mailto:') !== -1) {
        this.linkType = 'email';
        var email = href.substring('mailto:'.length, href.length);
        var split = email.split('?subject=');
        this.linkTypes.email.set(split[0]);
        if (split.length > 1) {
          this.$subject.val(decodeURIComponent(split[1]));
        }
      } else if (href[0] === '#') {
        this.linkType = 'anchor';
        this.linkTypes.anchor.set(href.substring(1));
      } else {
        this.linkType = 'external';
        this.linkTypes.external.set(href);
      }
    },

    setSelectElement: function($el, val) {
      $el.find('option:selected').prop('selected', false);
      if (val) {
        // update
        $el.find('option[value="' + val + '"]').prop('selected', true);
      }
    },

    reinitialize: function() {
      /*
       * This will probably be called before show is run.
       * It will overwrite the base html template given to
       * be able to privde default values for the overlay
       */
      this.modal.options.html = this.generateModalHtml();
    }
  });
  return LinkModal;

});

redpajama_set_name: RedPajamaGithub


To claim this profile, please confirm you are Peter Marchineck.
To follow this profile, please let us know your relationship to Peter Marchineck.
Peter's baseball stats have been updated for the win @ Mount St. Joseph.
Peter's baseball stats have been updated for the win vs. Gilman.
Peter's baseball stats have been updated for the win vs. St. Mary's.
Peter's baseball stats have been updated for the win vs. St. Paul's.
Peter's baseball stats have been updated for the win @ John Carroll.
Peter's baseball stats have been updated for the win vs. St. John's.
Peter has been added to the Calvert Hall baseball roster.